Files
Claude-Code-Workflow/.claude/commands/workflow/tools/test-context-gather.md
catlog22 920b179440 docs: 更新所有命令描述并重新生成索引文件
- 更新所有69个命令文件的description字段,基于实际功能重新生成详细描述
- 重新生成5个索引文件(all-commands, by-category, by-use-case, essential-commands, command-relationships)
- 移动analyze_commands.py到scripts/目录并完善功能
- 移除临时备份文件

命令描述改进示例:
- workflow:plan: 增加了工具和代理的详细说明(Gemini, action-planning-agent)
- cli:execute: 说明了YOLO权限和多种执行模式
- memory:update-related: 详细说明了批处理策略和工具回退链

索引文件改进:
- usage_scenario从2种扩展到10种(更精细分类)
- command-relationships覆盖所有69个命令
- 区分built-in(内置调用)和sequential(用户顺序执行)关系

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 15:11:31 +08:00

8.4 KiB

name, description, argument-hint, examples, allowed-tools
name description argument-hint examples allowed-tools
test-context-gather Collect test coverage context using test-context-search-agent and package into standardized test-context JSON --session WFS-test-session-id
/workflow:tools:test-context-gather --session WFS-test-auth
/workflow:tools:test-context-gather --session WFS-test-payment
Task(*), Read(*), Glob(*)

Test Context Gather Command (/workflow:tools:test-context-gather)

Overview

Orchestrator command that invokes test-context-search-agent to gather comprehensive test coverage context for test generation workflows. Generates standardized test-context-package.json with coverage analysis, framework detection, and source implementation context.

Agent: test-context-search-agent (.claude/agents/test-context-search-agent.md)

Core Philosophy

  • Agent Delegation: Delegate all test coverage analysis to test-context-search-agent for autonomous execution
  • Detection-First: Check for existing test-context-package before executing
  • Coverage-First: Analyze existing test coverage before planning new tests
  • Source Context Loading: Import implementation summaries from source session
  • Standardized Output: Generate .workflow/{test_session_id}/.process/test-context-package.json

Execution Flow

Step 1: Test-Context-Package Detection

Execute First - Check if valid package already exists:

const testContextPath = `.workflow/${test_session_id}/.process/test-context-package.json`;

if (file_exists(testContextPath)) {
  const existing = Read(testContextPath);

  // Validate package belongs to current test session
  if (existing?.metadata?.test_session_id === test_session_id) {
    console.log("✅ Valid test-context-package found for session:", test_session_id);
    console.log("📊 Coverage Stats:", existing.test_coverage.coverage_stats);
    console.log("🧪 Framework:", existing.test_framework.framework);
    console.log("⚠️  Missing Tests:", existing.test_coverage.missing_tests.length);
    return existing; // Skip execution, return existing
  } else {
    console.warn("⚠️ Invalid test_session_id in existing package, re-generating...");
  }
}

Step 2: Invoke Test-Context-Search Agent

Only execute if Step 1 finds no valid package

Task(
  subagent_type="test-context-search-agent",
  description="Gather test coverage context",
  prompt=`
You are executing as test-context-search-agent (.claude/agents/test-context-search-agent.md).

## Execution Mode
**PLAN MODE** (Comprehensive) - Full Phase 1-3 execution

## Session Information
- **Test Session ID**: ${test_session_id}
- **Output Path**: .workflow/${test_session_id}/.process/test-context-package.json

## Mission
Execute complete test-context-search-agent workflow for test generation planning:

### Phase 1: Session Validation & Source Context Loading
1. **Detection**: Check for existing test-context-package (early exit if valid)
2. **Test Session Validation**: Load test session metadata, extract source_session reference
3. **Source Context Loading**: Load source session implementation summaries, changed files, tech stack

### Phase 2: Test Coverage Analysis
Execute coverage discovery:
- **Track 1**: Existing test discovery (find *.test.*, *.spec.* files)
- **Track 2**: Coverage gap analysis (match implementation files to test files)
- **Track 3**: Coverage statistics (calculate percentages, identify gaps by module)

### Phase 3: Framework Detection & Packaging
1. Framework identification from package.json/requirements.txt
2. Convention analysis from existing test patterns
3. Generate and validate test-context-package.json

## Output Requirements
Complete test-context-package.json with:
- **metadata**: test_session_id, source_session_id, task_type, complexity
- **source_context**: implementation_summaries, tech_stack, project_patterns
- **test_coverage**: existing_tests[], missing_tests[], coverage_stats
- **test_framework**: framework, version, test_pattern, conventions
- **assets**: implementation_summary[], existing_test[], source_code[] with priorities
- **focus_areas**: Test generation guidance based on coverage gaps

## Quality Validation
Before completion verify:
- [ ] Valid JSON format with all required fields
- [ ] Source session context loaded successfully
- [ ] Test coverage gaps identified
- [ ] Test framework detected (or marked as 'unknown')
- [ ] Coverage percentage calculated correctly
- [ ] Missing tests catalogued with priority
- [ ] Execution time < 30 seconds (< 60s for large codebases)

Execute autonomously following agent documentation.
Report completion with coverage statistics.
`
)

Step 3: Output Verification

After agent completes, verify output:

// Verify file was created
const outputPath = `.workflow/${test_session_id}/.process/test-context-package.json`;
if (!file_exists(outputPath)) {
  throw new Error("❌ Agent failed to generate test-context-package.json");
}

// Load and display summary
const testContext = Read(outputPath);
console.log("✅ Test context package generated successfully");
console.log("📊 Coverage:", testContext.test_coverage.coverage_stats.coverage_percentage + "%");
console.log("⚠️  Tests to generate:", testContext.test_coverage.missing_tests.length);

Parameter Reference

Parameter Type Required Description
--session string Test workflow session ID (e.g., WFS-test-auth)

Output Schema

Refer to test-context-search-agent.md Phase 3.2 for complete test-context-package.json schema.

Key Sections:

  • metadata: Test session info, source session reference, complexity
  • source_context: Implementation summaries with changed files and tech stack
  • test_coverage: Existing tests, missing tests with priorities, coverage statistics
  • test_framework: Framework name, version, patterns, conventions
  • assets: Categorized files with relevance (implementation_summary, existing_test, source_code)
  • focus_areas: Test generation guidance based on analysis

Usage Examples

Basic Usage

/workflow:tools:test-context-gather --session WFS-test-auth

Expected Output

✅ Valid test-context-package found for session: WFS-test-auth
📊 Coverage Stats: { total: 3, with_tests: 2, without_tests: 1, percentage: 66.7 }
🧪 Framework: jest
⚠️  Missing Tests: 1

Success Criteria

  • Valid test-context-package.json generated in .workflow/{test_session_id}/.process/
  • Source session context loaded successfully
  • Test coverage gaps identified (>90% accuracy)
  • Test framework detected and documented
  • Execution completes within 30 seconds (60s for large codebases)
  • All required schema fields present and valid
  • Coverage statistics calculated correctly
  • Agent reports completion with statistics

Error Handling

Error Cause Resolution
Package validation failed Invalid test_session_id in existing package Re-run agent to regenerate
Source session not found Invalid source_session reference Verify test session metadata
No implementation summaries Source session incomplete Complete source session first
Agent execution timeout Large codebase or slow analysis Increase timeout, check file access
Missing required fields Agent incomplete execution Check agent logs, verify schema compliance
No test framework detected Missing test dependencies Agent marks as 'unknown', manual specification needed

Integration

Called By

  • /workflow:test-gen (Phase 3: Context Gathering)

Calls

  • test-context-search-agent - Autonomous test coverage analysis

Followed By

  • /workflow:tools:test-concept-enhanced - Test generation analysis and planning

Notes

  • Detection-first: Always check for existing test-context-package before invoking agent
  • Agent autonomy: Agent handles all coverage analysis logic per .claude/agents/test-context-search-agent.md
  • No redundancy: This command is a thin orchestrator, all logic in agent
  • Framework agnostic: Supports Jest, Mocha, pytest, RSpec, Go testing, etc.
  • Coverage focus: Primary goal is identifying implementation files without tests
  • /workflow:test-gen - Main test generation workflow
  • /workflow:tools:test-concept-enhanced - Test generation analysis
  • /workflow:tools:test-task-generate - Test task JSON generation