# Test Architect workflow: bmad-testarch-trace
name: bmad-testarch-trace
# prettier-ignore
description: 'Generate traceability matrix and quality gate decision. Use when the user says "lets create traceability matrix" or "I want to analyze test coverage"'

# Critical variables from config
config_source: "{project-root}/_bmad/tea/config.yaml"
output_folder: "{config_source}:output_folder"
test_artifacts: "{config_source}:test_artifacts"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
document_output_language: "{config_source}:document_output_language"
date: system-generated

# Workflow components
installed_path: "."
instructions: "./instructions.md"
validation: "./checklist.md"
template: "./trace-template.md"

# Variables and inputs
variables:
  # Directory paths
  test_dir: "{project-root}/tests" # Root test directory
  source_dir: "{project-root}" # Source code directory (customize if needed, e.g., {project-root}/src or {project-root}/lib)

  # Workflow behavior
  coverage_levels: "e2e,api,component,unit" # Which test levels to trace
  gate_type: "story" # story | epic | release | hotfix - determines gate scope
  decision_mode: "deterministic" # deterministic (rule-based) | manual (team decision)

# Output configuration
default_output_file: "{test_artifacts}/traceability-matrix.md"

# Required tools
required_tools:
  - read_file # Read story, test files, BMad artifacts
  - write_file # Create traceability matrix, gate YAML
  - list_files # Discover test files
  - search_repo # Find tests by test ID, describe blocks
  - glob # Find test files matching patterns

tags:
  - qa
  - traceability
  - test-architect
  - coverage
  - requirements
  - gate
  - decision
  - release

execution_hints:
  interactive: false # Minimize prompts
  autonomous: true # Proceed without user input unless blocked
  iterative: true
