Audition Tests
Execute test suites to validate implementation, capture results, and generate artifacts for analysis. This skill runs tests created by the arrange skill and provides outputs for the orchestrate skill's visual regression routing.
Pre-flight
{{WORKSPACE}} = workspace root. Resolve once per session and reuse: git rev-parse --show-toplevel; fall back to cwd outside a git repo.
- Before your first write, read
{{WORKSPACE}}/{{MAESTRO_CONFIG}}/references/conventions.md — statuses, retries, artifact paths, and file ownership are defined there and are binding.
- Working folder:
{{WORKSPACE}}
- Target folders: you only WRITE to
{{WORKSPACE}}/test-results/. Tests under tests/ are read-only for you — never modify test files or source code.
- Required input: Test type and scope from orchestrate
References
Read reference specs on-demand when the workflow requires them — do NOT read all upfront.
Always needed
- Repo Fingerprint (working file): Read
{{WORKSPACE}}/knowledge/repo-fingerprint.md — to identify the current testing stack and invocation command
On-demand (read only when needed)
Testing Tech Preferences: Read {{WORKSPACE}}/{{MAESTRO_CONFIG}}/references/testing-tech-preferences.md — only if an unusual/non-standard test framework is in use
Testing Principles: Read {{WORKSPACE}}/{{MAESTRO_CONFIG}}/references/testing-principles.md — only if interpreting failures requires methodology context
Cross-references
For how references relate to each other, see {{WORKSPACE}}/{{MAESTRO_CONFIG}}/references/references-map.md.
Validation
- If required input is missing, abort with error
- If test files don't exist for the specified scope, abort with error
Core Workflow
Phase 0: Test Discovery
- Read Asset Specifications: Load the working Repo Fingerprint (and
Testing Tech Preferences if the stack is unusual) to understand the testing stack
- Locate Test Files: Find test files matching the specified scope
- Identify Test Framework AND Runner Command: Determine which framework is in use and how it is actually invoked:
- Inspect the project's test configuration and scripts (
package.json scripts, playwright.config.ts, pytest.ini, etc.)
- Verify which runner backs a script before trusting it — an npm
test script may run Vitest, Jest, or Playwright
- Typical invocations:
npx vitest run <scope>, npx jest <scope>, npx playwright test <scope>, python -m pytest <scope>, dotnet test
Phase 1: Test Execution
- Execute the test suite with the verified command
- Capture results: output, exit codes, and any generated artifacts
- For E2E runs, confirm screenshot artifacts were produced where the framework config directs them (baselines →
tests/screenshots/baselines/; runtime actuals/diffs → test-results/)
Phase 2: Result Processing
- Analyze Test Output: Parse test results to identify pass/fail status, failed cases, error messages, stack traces, and coverage information (if available)
- Resolve Artifact Paths: Collect the concrete paths of every artifact downstream consumers may need — failure screenshots, baseline paths, diff images, logs, machine-readable summaries (e.g.,
test-results/summary.json). Never report a path you have not confirmed exists
- Generate Summary: Create a structured summary of test results in the Output Format below
Output Format
The result summary is the contract between audition and orchestrate's visual regression routing. Paths must be explicit and verified.
Success Case
STATUS: All tests passed
Test Count: <number executed>
Duration: <execution time>
Coverage: <percentage, if available>
Artifacts:
summary: <path to machine-readable result file, if any>
logs: <path>
screenshots: <paths, if captured>
Failure Case
STATUS: Tests failed
Failed Tests: <list of failed test cases with one-line error messages>
Error Details: <stack traces and specific error information>
Visual Regressions:
- test: <test name>
baseline: <verified path under tests/screenshots/baselines/>
actual: <verified path under test-results/>
diff: <verified path under test-results/>
Artifacts:
summary: <path>
logs: <path>
Recommendations: <suggested next steps for debugging>
For non-visual failures, omit the Visual Regressions block. Every listed path must exist on disk at reporting time.
Quality Checklist
Before completing the test execution:
Error Handling
If test execution fails:
- Capture the error message and exit code
- Identify if it's a configuration issue, missing dependency, or test failure
- Provide clear error diagnosis and suggested fixes
- Ensure partial results are still captured for analysis
Integration Points
- Input from:
orchestrate skill (test scope and type)
- Output to:
orchestrate skill (result summary with verified artifact paths for visual regression routing)
- References: Test files created by
arrange skill
- Context: Implementation from
play skill milestones
Execution
Use the test scope from the invocation, then proceed with Phase 0: Test Discovery.
1---2name: audition3description: Audition tests - execute test suites and capture pass/fail results, screenshots, and artifacts for visual regression routing; invoked by orchestrate after arrange or via "/audition <scope>"4---56# Audition Tests78Execute test suites to validate implementation, capture results, and generate artifacts for analysis. This skill runs tests created by the `arrange` skill and provides outputs for the `orchestrate` skill's visual regression routing.910## Pre-flight1112- `{{WORKSPACE}}` = workspace root. Resolve once per session and reuse: `git rev-parse --show-toplevel`; fall back to cwd outside a git repo.13- Before your first write, read `{{WORKSPACE}}/{{MAESTRO_CONFIG}}/references/conventions.md` — statuses, retries, artifact paths, and file ownership are defined there and are binding.14- Working folder: `{{WORKSPACE}}`15- Target folders: you only WRITE to `{{WORKSPACE}}/test-results/`. Tests under `tests/` are read-only for you — never modify test files or source code.16- Required input: Test type and scope from orchestrate1718## References1920Read reference specs on-demand when the workflow requires them — do NOT read all upfront.2122### Always needed23- **Repo Fingerprint (working file):** Read `{{WORKSPACE}}/knowledge/repo-fingerprint.md` — to identify the current testing stack and invocation command2425### On-demand (read only when needed)26- **`Testing Tech Preferences`:** Read `{{WORKSPACE}}/{{MAESTRO_CONFIG}}/references/testing-tech-preferences.md` — only if an unusual/non-standard test framework is in use27- **`Testing Principles`:** Read `{{WORKSPACE}}/{{MAESTRO_CONFIG}}/references/testing-principles.md` — only if interpreting failures requires methodology context2829### Cross-references30For how references relate to each other, see `{{WORKSPACE}}/{{MAESTRO_CONFIG}}/references/references-map.md`.3132## Validation3334- If required input is missing, abort with error35- If test files don't exist for the specified scope, abort with error3637## Core Workflow3839### Phase 0: Test Discovery40411. **Read Asset Specifications:** Load the working Repo Fingerprint (and `Testing Tech Preferences` if the stack is unusual) to understand the testing stack422. **Locate Test Files:** Find test files matching the specified scope433. **Identify Test Framework AND Runner Command:** Determine which framework is in use and how it is actually invoked:44 - Inspect the project's test configuration and scripts (`package.json` scripts, `playwright.config.ts`, `pytest.ini`, etc.)45 - Verify which runner backs a script before trusting it — an npm `test` script may run Vitest, Jest, or Playwright46 - Typical invocations: `npx vitest run <scope>`, `npx jest <scope>`, `npx playwright test <scope>`, `python -m pytest <scope>`, `dotnet test`4748### Phase 1: Test Execution49501. Execute the test suite with the verified command512. Capture results: output, exit codes, and any generated artifacts523. For E2E runs, confirm screenshot artifacts were produced where the framework config directs them (baselines → `tests/screenshots/baselines/`; runtime actuals/diffs → `test-results/`)5354### Phase 2: Result Processing55561. **Analyze Test Output:** Parse test results to identify pass/fail status, failed cases, error messages, stack traces, and coverage information (if available)572. **Resolve Artifact Paths:** Collect the concrete paths of every artifact downstream consumers may need — failure screenshots, baseline paths, diff images, logs, machine-readable summaries (e.g., `test-results/summary.json`). Never report a path you have not confirmed exists583. **Generate Summary:** Create a structured summary of test results in the Output Format below5960## Output Format6162The result summary is the contract between audition and orchestrate's visual regression routing. Paths must be explicit and verified.6364### Success Case6566```67STATUS: All tests passed68Test Count: <number executed>69Duration: <execution time>70Coverage: <percentage, if available>71Artifacts:72 summary: <path to machine-readable result file, if any>73 logs: <path>74 screenshots: <paths, if captured>75```7677### Failure Case7879```80STATUS: Tests failed81Failed Tests: <list of failed test cases with one-line error messages>82Error Details: <stack traces and specific error information>83Visual Regressions:84 - test: <test name>85 baseline: <verified path under tests/screenshots/baselines/>86 actual: <verified path under test-results/>87 diff: <verified path under test-results/>88Artifacts:89 summary: <path>90 logs: <path>91Recommendations: <suggested next steps for debugging>92```9394For non-visual failures, omit the `Visual Regressions` block. Every listed path must exist on disk at reporting time.9596## Quality Checklist9798Before completing the test execution:99100- [ ] Correct test framework and runner command identified and verified101- [ ] Tests executed successfully (or failures properly captured)102- [ ] Test results parsed and summarized per the Output Format103- [ ] Screenshots and artifacts located and reported as verified paths104- [ ] Baseline vs runtime-artifact locations distinguished correctly105- [ ] No background test processes left running106107## Error Handling108109If test execution fails:110- Capture the error message and exit code111- Identify if it's a configuration issue, missing dependency, or test failure112- Provide clear error diagnosis and suggested fixes113- Ensure partial results are still captured for analysis114115## Integration Points116117- **Input from:** `orchestrate` skill (test scope and type)118- **Output to:** `orchestrate` skill (result summary with verified artifact paths for visual regression routing)119- **References:** Test files created by `arrange` skill120- **Context:** Implementation from `play` skill milestones121122## Execution123124Use the test scope from the invocation, then proceed with Phase 0: Test Discovery.