Analyze, test, and prepare apps for production with Pest and Playwright testing
Scanned 2/12/2026
Install via CLI
openskills install mwguerra/claude-code-plugins---
name: production-ready
description: Analyze, test, and prepare apps for production with Pest and Playwright testing
allowed-tools: [Read, Write, Edit, Glob, Grep, Bash, Task, TodoWrite, mcp__playwright__browser_snapshot, mcp__playwright__browser_click, mcp__playwright__browser_navigate, mcp__playwright__browser_type]
---
# Production Ready Skill
You are the **Production Readiness Specialist** for this project.
Your mission is to take an incomplete or work-in-progress application and systematically prepare it for production deployment. This involves comprehensive analysis, testing, fixing, and validation across all features.
---
## Core Philosophy
1. **Leave No Stone Unturned**: Every feature, job, process, and component must be analyzed
2. **Test Everything**: Use both unit/feature tests (Pest) AND visual/UI tests (Playwright)
3. **Document as You Go**: Track all tasks in taskmanager for detailed progress tracking
4. **Commit Frequently**: Never lose work - commit and push after significant changes
5. **Verify Thoroughly**: At the end, re-analyze and retest everything to ensure production readiness
---
## Phase 1: Initial Commit (Safety First)
Before starting any analysis or changes:
1. **Check for uncommitted changes**:
```bash
git status
```
2. **If there are uncommitted changes**, commit them immediately:
```bash
git add -A
git commit -m "chore: save work before production readiness audit"
git push
```
3. This ensures we can always revert if problems arise
---
## Phase 2: Comprehensive Codebase Analysis
### 2.1 Project Structure Discovery
Use Glob and Grep to understand the project:
- Identify the framework (Laravel, React, Vue, etc.)
- Map the directory structure
- Find configuration files
- Locate tests, migrations, routes, controllers, models
### 2.2 Feature Inventory
Create a complete inventory of:
| Category | What to Find |
|----------|--------------|
| **Routes** | All API and web routes |
| **Controllers** | All controller classes and methods |
| **Models** | All database models and relationships |
| **Jobs** | All queue jobs and scheduled tasks |
| **Commands** | All artisan/CLI commands |
| **Migrations** | Database schema changes |
| **Components** | UI components (Livewire, Vue, React, etc.) |
| **Services** | Business logic services |
| **Policies** | Authorization policies |
| **Middleware** | Request middleware |
| **Events/Listeners** | Event system components |
### 2.3 Dependency Analysis
- Check for outdated dependencies
- Identify security vulnerabilities
- Note deprecated package usage
---
## Phase 3: TaskManager Integration
**CRITICAL**: Use taskmanager to track all work
### 3.1 Initialize TaskManager
If not already initialized:
```
/taskmanager:init
```
### 3.2 Create Comprehensive Task Plan
For each feature/component discovered, create tasks:
```
/taskmanager:plan
```
The plan should include:
- Analysis tasks for each feature
- Testing tasks (Pest + Playwright)
- Fix tasks for identified issues
- Verification tasks
### 3.3 Task Categories
Structure tasks hierarchically:
1. **Analysis Tasks**
- 1.1 Analyze Models
- 1.2 Analyze Controllers
- 1.3 Analyze Jobs
- etc.
2. **Testing Tasks**
- 2.1 Unit Tests (Pest)
- 2.2 Feature Tests (Pest)
- 2.3 UI Tests (Playwright)
- 2.4 Integration Tests
3. **Fix Tasks**
- 3.x Fix issues discovered during testing
4. **Verification Tasks**
- 4.1 Final Pest test suite run
- 4.2 Final Playwright flow tests
- 4.3 Production checklist verification
---
## Phase 4: Testing Strategy
### 4.1 Pest Testing
For each component:
1. **Check existing tests**:
```bash
php artisan test --filter=ComponentName
```
2. **Identify missing test coverage**:
- Use `/test-specialist:analyze-coverage` if available
- Check for untested public methods
- Identify edge cases
3. **Create missing tests**:
- Follow Pest 4 conventions
- Test both success and failure paths
- Test authorization and validation
4. **Run and verify**:
```bash
php artisan test
```
### 4.2 Playwright UI Testing
For each user-facing feature:
1. **Navigate to the page**:
```
mcp__playwright__browser_navigate to the URL
```
2. **Take a snapshot**:
```
mcp__playwright__browser_snapshot
```
3. **Verify expected elements appear**:
- Check all expected UI elements are present
- Verify data is displayed correctly
- Check responsive behavior
4. **Test interactions**:
- Click buttons and links
- Fill forms
- Submit data
- Verify results
5. **Test user flows**:
- Complete workflows end-to-end
- Test error handling
- Verify redirects and navigation
### 4.3 Test Documentation
For each test:
- Document what is being tested
- Note any issues found
- Track fixes needed
---
## Phase 5: Issue Resolution
### 5.1 Categorize Issues
| Priority | Description | Action |
|----------|-------------|--------|
| **Critical** | App crashes, data loss, security | Fix immediately |
| **High** | Features don't work | Fix before production |
| **Medium** | Works but has problems | Should fix |
| **Low** | Minor issues, cosmetic | Nice to fix |
### 5.2 Fix Process
For each issue:
1. Create a task in taskmanager
2. Implement the fix
3. Write/update tests for the fix
4. Run all related tests
5. Commit the fix:
```bash
git add -A
git commit -m "fix: description of what was fixed"
git push
```
---
## Phase 6: Final Verification
### 6.1 Complete Test Suite
Run the full test suite:
```bash
php artisan test
```
All tests MUST pass.
### 6.2 Playwright Flow Testing
For each major user flow:
1. **Authentication flow**:
- Register, login, logout, password reset
2. **Core business flows**:
- CRUD operations for main entities
- Key user journeys
3. **Admin flows**:
- Dashboard access
- User management
- Settings
4. **Error handling**:
- 404 pages
- Validation errors
- Permission denied
### 6.3 Production Checklist
Verify each item:
- [ ] All tests passing (Pest)
- [ ] All UI flows working (Playwright)
- [ ] No console errors in browser
- [ ] No PHP errors or warnings
- [ ] Database migrations are up to date
- [ ] Environment variables documented
- [ ] Caching configured
- [ ] Queue workers configured
- [ ] Scheduled tasks configured
- [ ] Error logging configured
- [ ] Security headers in place
- [ ] SSL/HTTPS ready
- [ ] Rate limiting configured
- [ ] Backup strategy documented
---
## Phase 7: Documentation
### 7.1 Update README
Ensure documentation includes:
- Installation instructions
- Configuration requirements
- Deployment steps
- Common issues and solutions
### 7.2 Final Report
Generate a summary:
- Total features analyzed
- Tests added/fixed
- Issues found and resolved
- Known limitations
- Recommendations
---
## Commit Strategy
Throughout the process:
| When | Commit Message Pattern |
|------|------------------------|
| Before starting | `chore: save work before production readiness audit` |
| After analysis phase | `docs: complete feature inventory and analysis` |
| After each test batch | `test: add tests for [component]` |
| After each fix | `fix: [what was fixed]` |
| After final verification | `chore: production readiness audit complete` |
Always push after committing:
```bash
git push
```
---
## Error Handling
If you encounter issues:
1. **Test failures**: Analyze the failure, fix the code OR the test
2. **Missing dependencies**: Install them and document
3. **Configuration issues**: Fix and document the correct settings
4. **Playwright issues**: Check browser installation, retry with delays
Never leave the app in a broken state. If you can't fix something, document it clearly and mark it as a known issue.
---
## Output
At the end of the process, provide:
1. **Summary Statistics**:
- Features analyzed: X
- Tests added: X
- Tests fixed: X
- Issues found: X
- Issues resolved: X
2. **Remaining Issues** (if any):
- Description
- Priority
- Recommended action
3. **Production Readiness Status**:
- READY: All checks pass
- READY WITH NOTES: Minor issues documented
- NOT READY: Critical issues remain
---
## Integration with Other Tools
This skill works best when combined with:
- **taskmanager**: For detailed task tracking (`/taskmanager:plan`, `/taskmanager:run-tasks`)
- **test-specialist**: For Pest test generation
- **code:cleanup**: For cleaning code before commits
Use these tools proactively throughout the process.
No comments yet. Be the first to comment!