tdd-review

Run tests, check coverage, and perform static analysis for PHP and Python projects.

8|2|Updated Oct 28, 2025
One-click install
npx skills add https://github.com/morodomi/tdd-skills --skill tdd-review
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tdd-review
Source: https://github.com/morodomi/tdd-skills/tree/main/plugins/tdd-core/skills/tdd-review
Command: npx skills add https://github.com/morodomi/tdd-skills --skill tdd-review

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill enforces final quality validation in a TDD workflow by running tests, checking coverage, and performing static analysis.

Core Features & Use Cases

  • Orchestrates the REVIEW phase for PHP and Python projects, executing tests, verifying coverage thresholds, and running static analysis.
  • Enforces a mandatory quality gate and guides the user to proceed to COMMIT only after all checks pass.
  • Supports language-specific tooling and formatters, enabling consistent quality across multi-language projects (e.g., PHPStan, mypy, pint, black).

Quick Start

Activate the tdd-review skill during the REVIEW phase, then perform the following steps:

  • Run tests: php artisan test # PHP / pytest # Python
  • Check coverage: php artisan test --coverage --min=80 # PHP / pytest --cov=src --cov-fail-under=80 # Python
  • Run static analysis: ./vendor/bin/phpstan analyse --level=8 # PHP / mypy --strict src/ # Python
  • Run formatters: ./vendor/bin/pint # PHP / black . && isort . # Python
  • If all checks pass, proceed to COMMIT with user confirmation.

Frequently Asked Questions about tdd-review

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enforce a TDD quality gate before committing PHP and Python code?

A TDD quality gate enforces final validation by running tests, checking coverage thresholds, and performing static analysis before allowing a commit. It targets PHP and Python projects using standard tooling like php artisan test, pytest, mypy, and PHPStan.

What's the best way to check test coverage thresholds in a TDD workflow?

Checking test coverage in a TDD workflow uses php artisan test --coverage --min=80 for PHP or pytest --cov=src --cov-fail-under=80 for Python. This enforces mandatory coverage thresholds during the review phase before proceeding to commit.

Does this TDD review process work with both PHP and Python static analysis tools?

This TDD review process works with both PHP and Python static analysis tools. It supports PHPStan for PHP projects and mypy with strict settings for Python projects to enforce type safety and code quality standards before committing.

How do I run formatters like black and pint during the code review phase?

Running formatters during the code review phase involves executing ./vendor/bin/pint for PHP and black combined with isort for Python. This ensures consistent code styling across multi-language projects as part of the final quality validation.

When should I proceed to commit after running static analysis and test coverage checks?

You should proceed to commit only after all quality checks pass, including tests, coverage thresholds, static analysis, and formatting. The workflow requires explicit user confirmation to advance from the review phase to the commit phase.

Why do I need static analysis and formatters if my test suite already passes?

Static analysis and formatters are needed alongside passing tests to enforce comprehensive quality validation. Tests verify behavior, while tools like mypy and PHPStan catch type errors, and black or pint ensure consistent code style before committing.