Skip to content

Add test plan execution as a skill or pr-review subagent #136

Description

@LeanAndMean

Summary

Add the ability to automatically execute the test plan checklist in a PR body, either as a standalone skill (e.g., /mach10:pr-test-plan) or as an additional subagent in the existing /mach10:pr-review command.

Motivation

During PR review for merckgroup/aidd_lab_codebase#649, we manually ran through the test plan items in the PR body (pytest, integration tests, Docker validation, etc.) and checked them off after verifying each one. This is a repeatable workflow that could be automated:

  1. Parse the PR body for a ## Test plan section with checkbox items
  2. Execute each item (run tests, start services, validate configs, etc.)
  3. Check off items that pass, report failures
  4. Post a summary comment on the PR

Proposed Behavior

Option A: Standalone skill (/mach10:pr-test-plan <pr-number>)

  • Reads the PR body, extracts test plan checkboxes
  • Attempts to execute each item based on natural language interpretation
  • Updates the PR body to check off passing items
  • Posts a comment summarizing results (pass/fail per item, errors encountered)

Option B: Subagent within /mach10:pr-review

  • After the existing review agents complete, a test-plan-executor agent runs
  • Same parsing and execution logic as Option A
  • Results included in the review output

Considerations

  • Some test plan items are automatable (run pytest, validate docker-compose, check a page loads) while others require manual verification (visual UI checks, production deployment). The agent should distinguish between these and skip items it cannot verify.
  • The agent should have access to Bash, the test database, and the application for integration-style checks.
  • Checking off items in the PR body requires a gh pr edit --body call -- this is a mutating action and should probably require user confirmation or be opt-in.
  • Consider whether to update checkboxes in-place or just post a comment with results (less invasive).

Example Workflow

User: /mach10:pr-test-plan 649

Agent:
  1. Parses PR body, finds 7 test plan items
  2. Runs pytest -> pass (5388 passed)
  3. Starts listener_main.py with test dir -> pass (starts and shuts down cleanly)
  4. Drops CSV files, checks DB for import records -> pass
  5. Re-scans same files, confirms skip -> pass
  6. Points listener at missing dir, confirms no crash -> pass
  7. Hits history page endpoint, checks for UI elements -> pass
  8. Validates docker-compose config -> pass
  9. Checks off all items in PR body
  10. Posts summary comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions