| name | workflow-test-fix |
| description | Unified test-fix pipeline combining test generation (session, context, analysis, task gen) with iterative test-cycle execution (adaptive strategy, progressive testing, CLI fallback). Triggers on "workflow-test-fix", "test fix workflow". |
| allowed-tools | Skill, Agent, AskUserQuestion, TaskCreate, TaskUpdate, TaskList, Read, Write, Edit, Bash, Glob, Grep |
Unified test-fix orchestrator that combines **test planning generation** (Phase 1-4) with **iterative test-cycle execution** (Phase 5) into a single end-to-end pipeline. Creates test sessions with progressive L0-L3 test layers, generates test tasks, then executes them with adaptive fix cycles until pass rate >= 95% or max iterations reached. Triggered via skill name routing for full pipeline or execute-only modes.
1. Architecture Overview
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Workflow Test Fix Orchestrator (SKILL.md) โ
โ โ Pure coordinator: Route entry point, track progress, pass context โ
โ โ Five phases: Session โ Context โ Analysis โ TaskGen โ Execution โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโฌโโโโโโโโโโโโโฌโโโโโโโดโโโโโโโฌโโโโโโโโโโโโโฌโโโโโโโโโโโโโ
โ โ โ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
โ Phase 1 โโ Phase 2 โโ Phase 3 โโ Phase 4 โ โ Phase 5 โ
โ Session โโ Context โโ Analysis โโ Task Gen โ โ Test Cycle โ
โ Start โโ Gather โโ Enhanced โโ Generate โ โ Execute โ
โ โโ โโ โโ โ โ โ
โ Input โโ Coverage โโ Gemini โโ IMPL_PLANโ โ 1. Discoveryโ
โ Detect + โโ or Code โโ L0-L3 โโ IMPL-* โ โ 2. Execute โ
โ Session โโ Scan โโ AI Issue โโ TODO_LISTโ โ 3. Fix Loop โ
โ Create โโ โโ โโ โ โ 4. Complete โ
โโโโโโฌโโโโโโโโโโโโฌโโโโโโโโโโโโฌโโโโโโโโโโโโฌโโโโโโ โโโโโโโโโโโโโโโโ
โ โ โ โ โ
โtestSessionId โ โ โ
โโโโโโโโโโโโโcontextPathโ โ โ
โโโโโโโโโโโโAnalysisResโ โ
โโโโโโโโโโโ testSessionId โ
โโโโโโ(Summary)โโโโ
Task Pipeline (generated in Phase 4, executed in Phase 5):
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
โ IMPL-001 โโโโโ IMPL-001.3 โโโโโ IMPL-001.5 โโโโโ IMPL-002 โ
โ Test Gen โ โ Code Validate โ โ Quality Gate โ โ Test & Fix โ
โ L1-L3 โ โ L0 + AI Issues โ โ Coverage 80%+ โ โ Max N iter โ
โ@code-developerโ โ @test-fix-agent โ โ @test-fix-agent โ โ@test-fix-agentโ
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
2. Key Design Principles
- Unified Pipeline: Generation and execution are one continuous workflow - no manual handoff
- Pure Orchestrator: SKILL.md coordinates only - delegates all execution detail to phase files
- Auto-Continue: Phase 1โ2โ3โ4โ(Summary)โ5 automatically
- Task Attachment/Collapse: Sub-tasks attached during phase execution, collapsed after completion
- Progressive Phase Loading: Phase docs read only when that phase executes, not upfront
- Adaptive Strategy: Fix loop auto-selects strategy (conservative/aggressive/surgical) based on iteration context
- Quality Gate: Pass rate >= 95% (criticality-aware) terminates the fix loop
- Phase File Hygiene: Phase files reference
workflowPreferences.* for preferences, no CLI flag parsing
3. Usage
Full pipeline and execute-only modes are triggered by skill name routing (see Mode Detection). Workflow preferences (auto mode) are collected interactively via AskUserQuestion before dispatching to phases.
Full pipeline (workflow-test-fix): Task description or session ID as arguments โ interactive preference collection โ generate + execute pipeline
Execute only (workflow-test-fix): Auto-discovers active session โ interactive preference collection โ execution loop
4. Interactive Preference Collection
Before dispatching to phase execution, collect workflow preferences via AskUserQuestion:
const autoYes = /\b(-y|--yes)\b/.test($ARGUMENTS)
if (autoYes) {
workflowPreferences = { autoYes: true }
} else {
const prefResponse = AskUserQuestion({
questions: [
{
question: "ๆฏๅฆ่ทณ่ฟๆๆ็กฎ่ฎคๆญฅ้ชค๏ผ่ชๅจๆจกๅผ๏ผ๏ผ",
header: "Auto Mode",
multiSelect: false,
options: [
{ label: "Interactive (Recommended)", description: "ไบคไบๆจกๅผ๏ผๅ
ๅซ็กฎ่ฎคๆญฅ้ชค" },
{ label: "Auto", description: "่ทณ่ฟๆๆ็กฎ่ฎค๏ผ่ชๅจๆง่ก" }
]
}
]
})
workflowPreferences = {
autoYes: prefResponse.autoMode === 'Auto'
}
}
workflowPreferences is passed to phase execution as context variable, referenced as workflowPreferences.autoYes within phases.
5. Compact Recovery (Phase Persistence)
Multi-phase test-fix pipeline (Phase 1-5) spans long conversations, especially Phase 5 fix loops. Uses ๅ้ไฟ้ฉ: TodoWrite ่ท่ธช active phase ไฟๆคๅ
ถไธ่ขซๅ็ผฉ๏ผsentinel ไฝไธบๅ
ๅบใ
โ ๏ธ COMPACT DIRECTIVE: Context compression MUST check TodoWrite phase status.
The phase currently marked in_progress is the active execution phase โ preserve its FULL content.
Only compress phases marked completed or pending.
6. Execution Flow
Entry Point Detection:
โโ /workflow-test-fix โ Full Pipeline (Phase 1โ2โ3โ4โSummaryโ5)
โโ /workflow-test-fix โ Execution Only (Phase 5)
Phase 1: Session Start (session-start)
โโ Read("phases/01-session-start.md")
โโ Step 1.0: Detect input mode (session | prompt)
โโ Step 1.1: Create test session โ testSessionId
โโ Output: testSessionId, MODE
Phase 2: Test Context Gather (test-context-gather)
โโ Read("phases/02-test-context-gather.md")
โโ Step 1.2: Gather test context โ contextPath
โโ Output: contextPath
Phase 3: Test Concept Enhanced (test-concept-enhanced)
โโ Read("phases/03-test-concept-enhanced.md")
โโ Step 1.3: Test analysis (Gemini) โ TEST_ANALYSIS_RESULTS.md
โโ Output: TEST_ANALYSIS_RESULTS.md
Phase 4: Test Task Generate (test-task-generate)
โโ Read("phases/04-test-task-generate.md")
โโ Step 1.4: Generate test tasks โ IMPL_PLAN.md, IMPL-*.json, TODO_LIST.md
โโ Output: testSessionId, 4+ task JSONs
Summary Output (inline after Phase 4):
โโ Display summary, auto-continue to Phase 5
Phase 5: Test Cycle Execution (test-cycle-execute)
โโ Read("phases/05-test-cycle-execute.md")
โโ Step 2.1: Discovery (load session, tasks, iteration state)
โโ Step 2.2: Execute initial tasks (IMPL-001 โ 001.3 โ 001.5 โ 002)
โโ Step 2.3: Fix loop (if pass_rate < 95%)
โ โโ Select strategy: conservative/aggressive/surgical
โ โโ Generate fix task via @cli-planning-agent
โ โโ Execute fix via @test-fix-agent
โ โโ Re-test โ loop or exit
โโ Step 2.4: Completion (summary, session archive)
โโ Output: final pass_rate, summary
Phase Reference Documents (read on-demand when phase executes):
| Phase | Document | Purpose | Compact |
|---|
| 1 | phases/01-session-start.md | Detect input mode, create test session | TodoWrite ้ฉฑๅจ |
| 2 | phases/02-test-context-gather.md | Gather test context (coverage/codebase) | TodoWrite ้ฉฑๅจ |
| 3 | phases/03-test-concept-enhanced.md | Gemini analysis, L0-L3 test requirements | TodoWrite ้ฉฑๅจ |
| 4 | phases/04-test-task-generate.md | Generate task JSONs and IMPL_PLAN.md | TodoWrite ้ฉฑๅจ |
| 5 | phases/05-test-cycle-execute.md | Execute tasks, iterative fix cycles, completion | TodoWrite ้ฉฑๅจ + ๐ sentinel |
Compact Rules:
- TodoWrite
in_progress โ ไฟ็ๅฎๆดๅ
ๅฎน๏ผ็ฆๆญขๅ็ผฉ
- TodoWrite
completed โ ๅฏๅ็ผฉไธบๆ่ฆ
- ๐ sentinel fallback โ Phase 5 ๅ
ๅซ compact sentinel๏ผ่ฅ compact ๅไป
ๅญ sentinel ่ๆ ๅฎๆด Step ๅ่ฎฎ๏ผๅฟ
้กป็ซๅณ
Read("phases/05-test-cycle-execute.md") ๆขๅค
7. Core Rules
- Start Immediately: First action is TaskCreate initialization, second action is Phase 1 (or Phase 5 for execute-only entry)
- No Preliminary Analysis: Do not read files or gather context before starting the phase
- Parse Every Output: Extract required data from each step output for next step
- Auto-Continue: Phase 1โ2โ3โ4โ(Summary)โ5 automatically (for full pipeline entry)
- Track Progress: Update TaskCreate/TaskUpdate dynamically with task attachment/collapse pattern
- Task Attachment Model: Sub-tasks attached during phase, collapsed after completion
- DO NOT STOP: Continuous workflow until quality gate met or max iterations reached
- Progressive Loading: Read phase doc ONLY when that phase is about to execute
- Entry Point Routing:
workflow-test-fix skill โ Phase 1-5; workflow-test-fix skill โ Phase 5 only
8. Input Processing
test-fix-gen Entry (Full Pipeline)
User input โ Detect type:
โโ Starts with "WFS-" โ MODE=session, sourceSessionId=input
โโ Ends with ".md" โ MODE=prompt, description=Read(input)
โโ Otherwise โ MODE=prompt, description=input
test-cycle-execute Entry (Phase 5 Only)
Arguments โ Parse flags:
โโ --resume-session="WFS-xxx" โ sessionId=WFS-xxx
โโ --max-iterations=N โ maxIterations=N (default: 10)
โโ (no args) โ auto-discover active test session
9. Data Flow
User Input (session ID | description | file path)
โ
[Detect Mode: session | prompt]
โ
Phase 1: Session Start โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 1.0+1.1: session:start โ testSessionId, MODE
โ
Phase 2: Test Context Gather โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 1.2: test-context-gather/context-gather โ contextPath
โ
Phase 3: Test Concept Enhanced โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 1.3: test-concept-enhanced โ TEST_ANALYSIS_RESULTS.md
โ
Phase 4: Test Task Generate โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 1.4: test-task-generate โ IMPL_PLAN.md, IMPL-*.json, TODO_LIST.md
โ
Summary Output (inline) โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Display summary with next step
โ
Phase 5: Test Cycle Execution โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 2.1: Load session + tasks + iteration state
โ 2.2: Execute IMPL-001 โ 001.3 โ 001.5 โ 002
โ 2.3: Fix loop (analyze โ fix โ retest) until pass_rate >= 95%
โ 2.4: Completion โ summary โ session archive
10. Summary Output (after Phase 4)
After Phase 4 completes, display the following summary before auto-continuing to Phase 5:
Test-fix workflow created successfully!
Input: [original input]
Mode: [Session|Prompt]
Test Session: [testSessionId]
Tasks Created:
- IMPL-001: Test Understanding & Generation (@code-developer)
- IMPL-001.3: Code Validation Gate - AI Error Detection (@test-fix-agent)
- IMPL-001.5: Test Quality Gate - Static Analysis & Coverage (@test-fix-agent)
- IMPL-002: Test Execution & Fix Cycle (@test-fix-agent)
Quality Thresholds:
- Code Validation: Zero CRITICAL issues, zero compilation errors
- Minimum Coverage: 80% line, 70% branch
- Static Analysis: Zero critical anti-patterns
- Max Fix Iterations: 5
Review artifacts:
- Test plan: .workflow/[testSessionId]/IMPL_PLAN.md
- Task list: .workflow/[testSessionId]/TODO_LIST.md
- Analysis: .workflow/[testSessionId]/.process/TEST_ANALYSIS_RESULTS.md
CRITICAL - Next Step: Auto-continue to Phase 5: Test Cycle Execution.
Pass testSessionId to Phase 5 for test execution pipeline. Do NOT wait for user confirmation โ the unified pipeline continues automatically.
11. Test Strategy Overview
Progressive Test Layers (L0-L3):
| Layer | Name | Focus |
|---|
| L0 | Static Analysis | Compilation, imports, types, AI code issues |
| L1 | Unit Tests | Function/class behavior (happy/negative/edge cases) |
| L2 | Integration Tests | Component interactions, API contracts, failure modes |
| L3 | E2E Tests | User journeys, critical paths (optional) |
Quality Thresholds:
- Code Validation (IMPL-001.3): Zero CRITICAL issues, zero compilation errors
- Minimum Coverage: 80% line, 70% branch
- Static Analysis (IMPL-001.5): Zero critical anti-patterns
- Pass Rate Gate: >= 95% (criticality-aware) or 100%
- Max Fix Iterations: 10 (default, adjustable)
12. Strategy Engine (Phase 5)
| Strategy | Trigger | Behavior |
|---|
| Conservative | Iteration 1-2 (default) | Single targeted fix, full validation |
| Aggressive | Pass rate >80% + similar failures | Batch fix related issues |
| Surgical | Regression detected (pass rate drops >10%) | Minimal changes, rollback focus |
Selection logic and CLI fallback chain (Gemini โ Qwen โ Codex) are detailed in Phase 5.
13. Agent Roles
| Agent | Used In | Responsibility |
|---|
| Orchestrator | All phases | Route entry, track progress, pass context |
| @code-developer | Phase 5 (IMPL-001) | Test generation (L1-L3) |
| @test-fix-agent | Phase 5 | Test execution, code fixes, criticality assignment |
| @cli-planning-agent | Phase 5 (fix loop) | CLI analysis, root cause extraction, fix task generation |
14. TodoWrite Pattern
Core Concept: Dynamic task tracking with attachment/collapse for real-time visibility.
Implementation Note: Phase files use TodoWrite syntax to describe the conceptual tracking pattern. At runtime, these are implemented via TaskCreate/TaskUpdate/TaskList tools from the allowed-tools list. Map TodoWrite examples as follows:
- Initial list creation โ
TaskCreate for each item
- Status changes โ
TaskUpdate({ taskId, status })
- Sub-task attachment โ
TaskCreate + TaskUpdate({ addBlockedBy })
- Sub-task collapse โ
TaskUpdate({ status: "completed" }) + TaskUpdate({ status: "deleted" }) for collapsed sub-items
Full Pipeline (Phase 1-5)
[
{"content": "Phase 1: Session Start", "status": "in_progress"},
{"content": "Phase 2: Test Context Gather", "status": "pending"},
{"content": "Phase 3: Test Analysis (Gemini)", "status": "pending"},
{"content": "Phase 4: Test Task Generate", "status": "pending"},
{"content": "Phase 5: Test Cycle Execution", "status": "pending"}
]
Phase 1-4 Collapsed โ Phase 5 Active
[
{"content": "Phase 1: Session Start", "status": "completed"},
{"content": "Phase 2: Test Context Gather", "status": "completed"},
{"content": "Phase 3: Test Analysis (Gemini)", "status": "completed"},
{"content": "Phase 4: Test Task Generate", "status": "completed"},
{"content": "Phase 5: Test Cycle Execution", "status": "in_progress"},
{"content": " โ Execute IMPL-001 [code-developer]", "status"
Fix Loop Iterations
[
{"content": "Phase 1-4: Test Generation", "status": "completed"},
{"content": "Phase 5: Test Cycle Execution", "status": "in_progress"},
{"content": " โ Initial tasks", "status": "completed"},
{"content": " โ Iteration 1: Initial test (pass: 70%, conservative)", "status": "completed"},
{"content": " โ Iteration 2: Fix validation (pass: 82%, conservative)", "status": "completed"},
{"content": " โ Iteration 3: Batch fix (pass: 89%, aggressive)",
15. Session File Structure
.workflow/active/WFS-test-{session}/
โโโ workflow-session.json # Session metadata
โโโ IMPL_PLAN.md # Test generation and execution strategy
โโโ TODO_LIST.md # Task checklist
โโโ .task/
โ โโโ IMPL-001.json # Test understanding & generation
โ โโโ IMPL-001.3-validation.json # Code validation gate
โ โโโ IMPL-001.5-review.json # Test quality gate
โ โโโ IMPL-002.json # Test execution & fix cycle
โ โโโ IMPL-fix-{N}.json # Generated fix tasks (Phase 5 fix loop)
โโโ .process/
โ โโโ [test-]context-package.json # Context and coverage analysis
โ โโโ TEST_ANALYSIS_RESULTS.md # Test requirements (L0-L3)
โ โโโ iteration-state.json # Current iteration + strategy + stuck tests
โ โโโ test-results.json # Latest results (pass_rate, criticality)
โ โโโ test-output.log # Full test output
โ โโโ fix-history.json # All fix attempts
โ โโโ iteration-{N}-analysis.md # CLI analysis report
โ โโโ iteration-{N}-cli-output.txt
โโโ .summaries/
โโโ iteration-summaries/
16. Error Handling
Phase 1-4 (Generation)
| Phase | Error Condition | Action |
|---|
| 1: Session Start | Source session not found (session mode) | Return error with session ID |
| 1: Session Start | No completed IMPL tasks (session mode) | Return error, source incomplete |
| 2: Context Gather | Context gathering failed | Return error, check source artifacts |
| 3: Analysis | Gemini analysis failed | Return error, check context package |
| 4: Task Gen | Task generation failed | Retry once, then return error |
Phase 5 (Execution)
| Scenario | Action |
|---|
| Test execution error | Log, retry with error context |
| CLI analysis failure | Fallback: Gemini โ Qwen โ Codex โ manual |
| Agent execution error | Save state, retry with simplified context |
| Max iterations reached | Generate failure report, mark blocked |
| Regression detected | Rollback last fix, switch to surgical strategy |
| Stuck tests detected | Continue with alternative strategy, document |
17. Commit Strategy (Phase 5)
Automatic commits at key checkpoints:
- After successful iteration (pass rate increased):
test-cycle: iteration N - strategy (pass: old% โ new%)
- Before rollback (regression detected):
test-cycle: rollback iteration N - regression detected
18. Completion Conditions
| Condition | Pass Rate | Action |
|---|
| Full Success | 100% | Auto-complete session |
| Partial Success | >= 95%, all failures low criticality | Auto-approve with review note |
| Failure | < 95% after max iterations | Failure report, mark blocked |
19. Post-Completion Expansion
Auto-sync: Execute /workflow:session:sync -y "{summary}" to update specs/*.md + project-tech.
After completion, ask user if they want to expand into issues (test/enhance/refactor/doc). Selected items call /issue:new "{summary} - {dimension}".
20. Coordinator Checklist
Phase 1 (session-start)
Phase 2 (test-context-gather)
Phase 3 (test-concept-enhanced)
Phase 4 (test-task-generate)
Phase 5 (test-cycle-execute)
21. Related Skills
Prerequisite Skills:
workflow-plan skill or workflow-execute skill - Complete implementation (Session Mode source)
- None for Prompt Mode
Follow-up Skills:
- Display session status inline - Review workflow state
review-cycle skill - Post-implementation review
/issue:new - Create follow-up issues
<auto_mode>
When -y or --yes is detected in $ARGUMENTS or propagated via ccw:
- Skip all AskUserQuestion confirmations
- Use default values for all workflow preferences (
workflowPreferences = { autoYes: true })
- Auto-continue through all phases without user interaction
- Phase 1โ2โ3โ4โSummaryโ5 executes as a fully automatic pipeline
</auto_mode>
<success_criteria>