skills-catalog/ln-404-test-executor/SKILL.md
Executes test tasks (label 'tests') through Todo to To Review with risk-based limits. Use for test task execution. Not for implementation tasks.
npx skillsauth add levnikolaevich/claude-code-skills ln-404-test-executorInstall 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.
Paths: File paths (
shared/,references/,../ln-*) are relative to skills repo root. If not found at CWD, locate this SKILL.md directory and go up one level for repo root. Ifshared/is missing, fetch files via WebFetch fromhttps://raw.githubusercontent.com/levnikolaevich/claude-code-skills/master/skills/{path}.
Type: L3 Worker
Runs a single Story final test task (label "tests") through implementation/execution to To Review.
Hex-line acceleration (if available): Use outline(file_path) before reading test targets. Use narrow inspect_path(path=<relevant test dir>) to understand test structure; if you intentionally need a full broad inventory of tests/, opt in with max_entries=0 instead of assuming the default pattern cap will show everything.
Use grep_search(output_mode="summary") first to find tests/helpers/fixtures, then escalate to output_mode="content", edit_ready=true only when you need canonical hunks for a follow-up edit; use allow_large_output=true only as an explicit override. Use read_file() and edit_file() as the primary path for test/code/config files. Keep read_file() in discovery mode for normal inspection; use read_file(edit_ready=true, verbosity="full") before edits that need revision/checksum protocol. Use verify() and changes() before handoff. Built-in Read/Edit are fallback only when hex-line is unavailable.
| Input | Required | Source | Description |
|-------|----------|--------|-------------|
| taskId | Yes | args, parent Story, kanban, user | Test task to execute |
Resolution: Task Resolution Chain. Status filter: Todo (label: tests)
MANDATORY READ: Load shared/references/environment_state_contract.md, shared/references/storage_mode_detection.md, and shared/references/input_resolution_pattern.md
MANDATORY READ: Load shared/references/ci_tool_detection.md — compact output flags, pipefail, normalization-before-truncation policy for test command execution.
Extract: task_provider = Task Management → Provider (linear | file).
| Aspect | Linear Mode | File Mode |
|--------|-------------|-----------|
| Load task | get_issue(task_id) | Read("docs/tasks/epics/.../tasks/T{NNN}-*.md") |
| Load Story | get_issue(parent_id) | Read("docs/tasks/epics/.../story.md") |
| Update status | save_issue(id, state) | Edit the **Status:** line in file |
| Test results | create_comment({issueId, body}) | Write comment to .../comments/{ISO-timestamp}.md |
File Mode transitions: Todo → In Progress → To Review
MANDATORY READ: Load shared/references/mcp_tool_preferences.md — ALWAYS use hex-line MCP for code files when available. No fallback to standard Read/Edit unless hex-line is down.
shared/references/goal_articulation_gate.md — State REAL GOAL of these tests (which business behavior must be verified, not "write tests"). NOT THE GOAL: testing infrastructure or framework behavior instead of business logic. HIDDEN CONSTRAINT: which existing tests might break from implementation changes.docs/project/infrastructure.md — get server IPs, ports, service endpoints. Read docs/project/runbook.md — understand test environment setup, Docker commands, test execution prerequisites. Use exact commands from runbook.shared/references/code_efficiency_criterion.md — Author/update tests per plan; reuse existing fixtures/helpers; run tests; fix failing existing tests; update infra/doc sections as required. Before handoff, verify 3 efficiency self-checks (especially: reuse fixtures instead of duplicating setup).MANDATORY READ: Load shared/references/coordinator_summary_contract.md, shared/references/worker_runtime_contract.md, shared/references/task_worker_runtime_contract.md
Shared contract:
summary_kind=task-statusrunId and summaryArtifactPathrunId and exact summaryArtifactPath before the worker writes its validated summaryMonitor (2.1.98+): For test/coverage commands expected >30s, use Monitor. Fallback: Bash(run_in_background=true).
CRITICAL: When a newly written test fails, STOP and analyze BEFORE changing anything (failing new tests often indicate implementation bugs, not test issues — fixing blindly masks root cause).
Step 1: Verify Test Correctness
ref_search_documentation(query="[domain] expected behavior")Step 2: Decision | Test matches AC? | Action | |------------------|--------| | YES | BUG IN CODE → Fix implementation, not test | | NO | Test is wrong → Fix test assertion | | UNCERTAIN | MANDATORY: Query MCP Ref + ask user before changing |
Step 3: Document in Linear comment "Test [name] failed. Analysis: [test correct / test wrong]. Action: [fixed code / fixed test]. Reason: [justification]"
RED FLAGS (require user confirmation):
toContain instead of toEqual)GREEN LIGHTS (safe to proceed):
Use exact match assertions by default:
| Strict (PREFER) | Loose (AVOID unless justified) | |-----------------|--------------------------------| | Exact equality check | Partial/substring match | | Exact length check | "Has any length" check | | Full object comparison | Partial object match | | Exact type check | Truthy/falsy check |
WARN-level assertions FORBIDDEN - test either PASS or FAIL, no warnings.
For deterministic responses (API, transformations):
"If you know the expected value, assert the exact value."
Forbidden: Using loose assertions to "make test pass" when exact value is known.
shared/references/environment_state_contract.mdshared/references/storage_mode_detection.mddocs/tasks/kanban_board.mdshared/references/research_tool_fallback.mdVersion: 3.2.0 Last Updated: 2026-01-15
testing
Checks runtime lifecycle and config validation: bootstrap, shutdown, probes, cleanup, env sync, and fail-fast startup. Use for runtime readiness.
testing
Checks races, deadlocks, async hazards, TOCTOU, blocking I/O, and shared resource contention. Use when auditing concurrency correctness.
testing
Checks diagnosability through structured logs, metrics, traces, correlation IDs, and useful log levels. Use when auditing incident visibility.
development
Finds code that can be safely deleted: unreachable, unused, obsolete compatibility, and commented-out code. Use when pruning dead code.