claude-autopm 3.2.3 → 3.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/packages/plugin-core/plugin.json +28 -0
- package/packages/plugin-core/rules/agent-mandatory-optimized.md +91 -0
- package/packages/plugin-core/rules/context7-enforcement-optimized.md +221 -0
- package/packages/plugin-core/rules/github-operations.md +92 -0
- package/packages/plugin-core/rules/test-execution.md +65 -0
package/package.json
CHANGED
|
@@ -168,6 +168,34 @@
|
|
|
168
168
|
"priority": "low",
|
|
169
169
|
"description": "Frontmatter stripping utility patterns",
|
|
170
170
|
"tags": ["frontmatter", "utilities"]
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"name": "agent-mandatory-optimized",
|
|
174
|
+
"file": "rules/agent-mandatory-optimized.md",
|
|
175
|
+
"priority": "critical",
|
|
176
|
+
"description": "Mandatory agent usage (optimized version)",
|
|
177
|
+
"tags": ["agents", "enforcement", "optimized"]
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"name": "context7-enforcement-optimized",
|
|
181
|
+
"file": "rules/context7-enforcement-optimized.md",
|
|
182
|
+
"priority": "critical",
|
|
183
|
+
"description": "Context7 documentation enforcement (optimized version)",
|
|
184
|
+
"tags": ["context7", "enforcement", "optimized"]
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"name": "github-operations",
|
|
188
|
+
"file": "rules/github-operations.md",
|
|
189
|
+
"priority": "high",
|
|
190
|
+
"description": "GitHub CLI operations and repository protection",
|
|
191
|
+
"tags": ["github", "operations", "safety"]
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"name": "test-execution",
|
|
195
|
+
"file": "rules/test-execution.md",
|
|
196
|
+
"priority": "high",
|
|
197
|
+
"description": "Test execution patterns and standards",
|
|
198
|
+
"tags": ["testing", "execution"]
|
|
171
199
|
}
|
|
172
200
|
],
|
|
173
201
|
"hooks": [
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# Agent Usage - MANDATORY (Optimized)
|
|
2
|
+
|
|
3
|
+
<priority>HIGHEST - ZERO TOLERANCE</priority>
|
|
4
|
+
|
|
5
|
+
<core_requirement>
|
|
6
|
+
YOU MUST USE SPECIALIZED AGENTS FOR ALL NON-TRIVIAL TASKS
|
|
7
|
+
Do NOT perform complex tasks yourself
|
|
8
|
+
Use Task tool to delegate
|
|
9
|
+
</core_requirement>
|
|
10
|
+
|
|
11
|
+
<when_to_use>
|
|
12
|
+
<always>
|
|
13
|
+
Code writing|Testing|Infrastructure|Database|Analysis|GitHub ops|Large files
|
|
14
|
+
</always>
|
|
15
|
+
|
|
16
|
+
<mapping>
|
|
17
|
+
Python → python-backend-engineer
|
|
18
|
+
React → react-frontend-engineer
|
|
19
|
+
Node.js → nodejs-backend-engineer
|
|
20
|
+
Tests → test-runner|frontend-testing-engineer|e2e-test-engineer
|
|
21
|
+
K8s → kubernetes-orchestrator
|
|
22
|
+
Docker → docker-containerization-expert
|
|
23
|
+
Database → postgresql-expert|mongodb-expert|bigquery-expert
|
|
24
|
+
Review → code-analyzer
|
|
25
|
+
Logs → file-analyzer
|
|
26
|
+
GitHub → github-operations-specialist
|
|
27
|
+
Azure → azure-devops-specialist
|
|
28
|
+
</mapping>
|
|
29
|
+
|
|
30
|
+
<can_do_yourself>
|
|
31
|
+
Simple file reads (1-2 files)|Basic bash (ls, pwd, git)|Answering questions|TodoWrite
|
|
32
|
+
</can_do_yourself>
|
|
33
|
+
</when_to_use>
|
|
34
|
+
|
|
35
|
+
<violations>
|
|
36
|
+
<wrong>
|
|
37
|
+
User: "Create FastAPI endpoint"
|
|
38
|
+
You: *writes code directly*
|
|
39
|
+
</wrong>
|
|
40
|
+
|
|
41
|
+
<correct>
|
|
42
|
+
User: "Create FastAPI endpoint"
|
|
43
|
+
You: "Using @python-backend-engineer"
|
|
44
|
+
*Invokes Task tool*
|
|
45
|
+
</correct>
|
|
46
|
+
</violations>
|
|
47
|
+
|
|
48
|
+
<usage_patterns>
|
|
49
|
+
<single>
|
|
50
|
+
Task tool:
|
|
51
|
+
- subagent_type: "python-backend-engineer"
|
|
52
|
+
- description: "Create user endpoint"
|
|
53
|
+
- prompt: "Detailed requirements..."
|
|
54
|
+
</single>
|
|
55
|
+
|
|
56
|
+
<parallel>
|
|
57
|
+
Launch multiple agents IN SINGLE MESSAGE:
|
|
58
|
+
- python-backend-engineer (API)
|
|
59
|
+
- react-frontend-engineer (UI)
|
|
60
|
+
- postgresql-expert (schema)
|
|
61
|
+
</parallel>
|
|
62
|
+
</usage_patterns>
|
|
63
|
+
|
|
64
|
+
<decision_rule>
|
|
65
|
+
Before ANY complex task:
|
|
66
|
+
1. Is there a specialized agent?
|
|
67
|
+
2. Would agent do better?
|
|
68
|
+
3. Am I trying to do what I should delegate?
|
|
69
|
+
|
|
70
|
+
YES to any? → USE THE AGENT
|
|
71
|
+
When in doubt? → USE THE AGENT
|
|
72
|
+
</decision_rule>
|
|
73
|
+
|
|
74
|
+
<common_mistakes>
|
|
75
|
+
❌ Not checking Active Team Agents
|
|
76
|
+
❌ Writing code for non-trivial tasks
|
|
77
|
+
❌ Not using parallel agents
|
|
78
|
+
❌ Wrong agent for task
|
|
79
|
+
❌ Not using file-analyzer for large files
|
|
80
|
+
</common_mistakes>
|
|
81
|
+
|
|
82
|
+
<enforcement>
|
|
83
|
+
Git hooks|Code review|Self-monitoring
|
|
84
|
+
Default: YES use agent|Over-use better than under-use
|
|
85
|
+
</enforcement>
|
|
86
|
+
|
|
87
|
+
<ref>
|
|
88
|
+
Full version: .claude/rules/agent-mandatory.md
|
|
89
|
+
Quick ref: .claude/quick-ref/agent-quick-ref.md
|
|
90
|
+
Registry: .claude/agents/AGENT-REGISTRY.md
|
|
91
|
+
</ref>
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
# Context7 Documentation Enforcement (Optimized)
|
|
2
|
+
|
|
3
|
+
<priority>HIGHEST - ZERO TOLERANCE</priority>
|
|
4
|
+
|
|
5
|
+
<visual_reminder>
|
|
6
|
+
WHEN YOU SEE: `/pm:command` or `@agent-name`
|
|
7
|
+
|
|
8
|
+
YOU MUST:
|
|
9
|
+
1. 📖 ANNOUNCE: "Querying Context7..."
|
|
10
|
+
2. 🔍 READ command/agent file → extract Documentation Queries
|
|
11
|
+
3. 🌐 QUERY Context7 MCP for EACH listed topic
|
|
12
|
+
4. 📝 SUMMARIZE key findings
|
|
13
|
+
5. ✅ CONFIRM: "Context7 complete. Proceeding..."
|
|
14
|
+
|
|
15
|
+
<output>
|
|
16
|
+
🔒 Context7 Enforcement Active
|
|
17
|
+
|
|
18
|
+
📋 Command: /pm:epic-decompose
|
|
19
|
+
📚 Querying Context7...
|
|
20
|
+
|
|
21
|
+
➜ mcp://context7/agile/epic-decomposition
|
|
22
|
+
➜ mcp://context7/agile/task-sizing
|
|
23
|
+
➜ mcp://context7/agile/user-stories
|
|
24
|
+
|
|
25
|
+
✅ Context7 complete
|
|
26
|
+
📖 Key findings: [summary]
|
|
27
|
+
|
|
28
|
+
Proceeding with Context7 best practices...
|
|
29
|
+
</output>
|
|
30
|
+
</visual_reminder>
|
|
31
|
+
|
|
32
|
+
<prime_directive>
|
|
33
|
+
Query live documentation from Context7 BEFORE implementing
|
|
34
|
+
No implementation without Context7 query
|
|
35
|
+
No reliance on training data for technical specifics
|
|
36
|
+
No shortcuts
|
|
37
|
+
</prime_directive>
|
|
38
|
+
|
|
39
|
+
<why_critical>
|
|
40
|
+
<problems>
|
|
41
|
+
Hallucinations|API changes|Best practices drift|Version conflicts
|
|
42
|
+
Training data stale|Frameworks evolve|Deprecated patterns
|
|
43
|
+
</problems>
|
|
44
|
+
|
|
45
|
+
<benefits>
|
|
46
|
+
Always current|Verified patterns|API accuracy|Breaking changes awareness
|
|
47
|
+
Live documentation|Real examples|Current signatures|No guesswork
|
|
48
|
+
</benefits>
|
|
49
|
+
</why_critical>
|
|
50
|
+
|
|
51
|
+
<context7_cycle>
|
|
52
|
+
<query_phase>
|
|
53
|
+
1. Read command/agent file → extract Documentation Queries
|
|
54
|
+
2. Query EACH Context7 MCP link
|
|
55
|
+
3. Analyze: patterns|APIs|best practices|anti-patterns
|
|
56
|
+
4. Summarize findings before proceeding
|
|
57
|
+
</query_phase>
|
|
58
|
+
|
|
59
|
+
<implement_phase>
|
|
60
|
+
Apply Context7 patterns EXACTLY as documented
|
|
61
|
+
Use API signatures from Context7 (NOT training data)
|
|
62
|
+
Follow architectural recommendations
|
|
63
|
+
Reference Context7 in comments
|
|
64
|
+
</implement_phase>
|
|
65
|
+
|
|
66
|
+
<validate_phase>
|
|
67
|
+
Implementation matches Context7
|
|
68
|
+
No hallucinations
|
|
69
|
+
Latest conventions followed
|
|
70
|
+
Deprecation warnings addressed
|
|
71
|
+
</validate_phase>
|
|
72
|
+
</context7_cycle>
|
|
73
|
+
|
|
74
|
+
<absolute_requirements>
|
|
75
|
+
<commands>
|
|
76
|
+
MUST read "Required Documentation Access"
|
|
77
|
+
MUST query EVERY mcp:// link before execution
|
|
78
|
+
MUST summarize Context7 findings
|
|
79
|
+
MUST apply Context7 guidance
|
|
80
|
+
</commands>
|
|
81
|
+
|
|
82
|
+
<agents>
|
|
83
|
+
MUST read "Documentation Queries"
|
|
84
|
+
MUST query before technical decisions
|
|
85
|
+
MUST verify API signatures
|
|
86
|
+
MUST flag training data conflicts
|
|
87
|
+
</agents>
|
|
88
|
+
|
|
89
|
+
<implementations>
|
|
90
|
+
NO code from training data alone
|
|
91
|
+
NO assumptions without Context7
|
|
92
|
+
NO "I think this works" - VERIFY
|
|
93
|
+
NO skip for "small changes"
|
|
94
|
+
</implementations>
|
|
95
|
+
</absolute_requirements>
|
|
96
|
+
|
|
97
|
+
<prohibited>
|
|
98
|
+
❌ Implementing without querying
|
|
99
|
+
❌ "I remember" - training data stale
|
|
100
|
+
❌ Skip for "simple" tasks
|
|
101
|
+
❌ Cached knowledge vs live docs
|
|
102
|
+
❌ Proceed when query fails
|
|
103
|
+
❌ Ignore Context7 guidance
|
|
104
|
+
</prohibited>
|
|
105
|
+
|
|
106
|
+
<query_quality>
|
|
107
|
+
<do>
|
|
108
|
+
✅ Query ALL listed links
|
|
109
|
+
✅ Request specific topics
|
|
110
|
+
✅ Ask for examples + patterns
|
|
111
|
+
✅ Verify API signatures
|
|
112
|
+
✅ Check breaking changes
|
|
113
|
+
</do>
|
|
114
|
+
|
|
115
|
+
<dont>
|
|
116
|
+
❌ Skip assuming training data sufficient
|
|
117
|
+
❌ Query only one link
|
|
118
|
+
❌ Accept generic results
|
|
119
|
+
❌ Ignore version mismatches
|
|
120
|
+
</dont>
|
|
121
|
+
|
|
122
|
+
<coverage>
|
|
123
|
+
100% query rate|Complete coverage|Result validation|Stop if fails
|
|
124
|
+
</coverage>
|
|
125
|
+
</query_quality>
|
|
126
|
+
|
|
127
|
+
<command_flow>
|
|
128
|
+
User: /pm:epic-decompose feature-name
|
|
129
|
+
|
|
130
|
+
BEFORE:
|
|
131
|
+
1. Read .claude/commands/pm/epic-decompose.md
|
|
132
|
+
2. Extract Documentation Queries
|
|
133
|
+
3. Query Context7 for EACH link
|
|
134
|
+
4. Summarize: "Context7 confirms INVEST criteria..."
|
|
135
|
+
5. PROCEED with Context7 guidance
|
|
136
|
+
|
|
137
|
+
DURING:
|
|
138
|
+
Apply Context7 patterns|Reference examples|Follow best practices
|
|
139
|
+
|
|
140
|
+
AFTER:
|
|
141
|
+
Validate against Context7|Flag deviations
|
|
142
|
+
</command_flow>
|
|
143
|
+
|
|
144
|
+
<agent_flow>
|
|
145
|
+
User: @aws-cloud-architect design VPC
|
|
146
|
+
|
|
147
|
+
BEFORE:
|
|
148
|
+
1. Read .claude/agents/cloud/aws-cloud-architect.md
|
|
149
|
+
2. Extract Documentation Queries
|
|
150
|
+
3. Query Context7 for EACH link
|
|
151
|
+
4. Summarize: "Context7 shows VPC /16 for staging..."
|
|
152
|
+
5. PROCEED with Context7 knowledge
|
|
153
|
+
|
|
154
|
+
DURING:
|
|
155
|
+
Current AWS API patterns|Terraform patterns|Networking best practices
|
|
156
|
+
|
|
157
|
+
AFTER:
|
|
158
|
+
Cross-check design|No deprecated patterns
|
|
159
|
+
</agent_flow>
|
|
160
|
+
|
|
161
|
+
<violations>
|
|
162
|
+
<immediate>
|
|
163
|
+
STOP execution|IDENTIFY unverified code|DELETE stale implementation|
|
|
164
|
+
QUERY Context7|REIMPLEMENT|DOCUMENT violation
|
|
165
|
+
</immediate>
|
|
166
|
+
|
|
167
|
+
<severity>
|
|
168
|
+
Level 1 (Minor): Partial queries → Complete + validate
|
|
169
|
+
Level 2 (Moderate): No queries → Stop + query + review
|
|
170
|
+
Level 3 (Critical): Contradicts Context7 → Delete + redo
|
|
171
|
+
</severity>
|
|
172
|
+
|
|
173
|
+
<no_exceptions>
|
|
174
|
+
NO "small changes"|NO "I'm confident"|NO "Context7 slow"|NO assumptions
|
|
175
|
+
</no_exceptions>
|
|
176
|
+
</violations>
|
|
177
|
+
|
|
178
|
+
<success_metrics>
|
|
179
|
+
✅ 100% commands query Context7
|
|
180
|
+
✅ 100% agents query Context7
|
|
181
|
+
✅ Zero training-data-only implementations
|
|
182
|
+
✅ All API signatures verified
|
|
183
|
+
✅ No deprecated patterns
|
|
184
|
+
✅ Findings documented
|
|
185
|
+
</success_metrics>
|
|
186
|
+
|
|
187
|
+
<automation>
|
|
188
|
+
<hooks>
|
|
189
|
+
.claude/hooks/pre-command-context7.js - Extract + query before commands
|
|
190
|
+
.claude/hooks/pre-agent-context7.js - Extract + query before agents
|
|
191
|
+
</hooks>
|
|
192
|
+
|
|
193
|
+
<validation>
|
|
194
|
+
.claude/rules/context7-enforcement.md - Highest priority rule
|
|
195
|
+
Read on every session|Zero tolerance
|
|
196
|
+
</validation>
|
|
197
|
+
</automation>
|
|
198
|
+
|
|
199
|
+
<emergency_fallback>
|
|
200
|
+
If Context7 unavailable:
|
|
201
|
+
1. ALERT: "⚠️ Context7 MCP unavailable"
|
|
202
|
+
2. REQUEST user decision: WAIT (recommended) or PROCEED (risky)
|
|
203
|
+
3. DOCUMENT: // WARNING: No Context7 verification - MCP unavailable
|
|
204
|
+
4. FLAG: TODO re-verify when available
|
|
205
|
+
|
|
206
|
+
DO NOT:
|
|
207
|
+
❌ Silently proceed
|
|
208
|
+
❌ Assume training data sufficient
|
|
209
|
+
❌ Skip queries
|
|
210
|
+
</emergency_fallback>
|
|
211
|
+
|
|
212
|
+
<final_reminder>
|
|
213
|
+
Context7 is MANDATORY for EVERY command and agent execution.
|
|
214
|
+
Training data becomes stale. APIs change. Best practices evolve.
|
|
215
|
+
Context7 keeps us current. Query it. Every. Single. Time.
|
|
216
|
+
</final_reminder>
|
|
217
|
+
|
|
218
|
+
<ref>
|
|
219
|
+
Full version: .claude/rules/context7-enforcement.md
|
|
220
|
+
Quick ref: .claude/quick-ref/context7-queries.md
|
|
221
|
+
</ref>
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# GitHub Operations Rule
|
|
2
|
+
|
|
3
|
+
Standard patterns for GitHub CLI operations across all commands.
|
|
4
|
+
|
|
5
|
+
## CRITICAL: Repository Protection
|
|
6
|
+
|
|
7
|
+
**Before ANY GitHub operation that creates/modifies issues or PRs:**
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# Check if remote origin is the AutoPM template repository
|
|
11
|
+
remote_url=$(git remote get-url origin 2>/dev/null || echo "")
|
|
12
|
+
if [[ "$remote_url" == *"rlagowski/autopm"* ]] || [[ "$remote_url" == *"rlagowski/autopm.git"* ]]; then
|
|
13
|
+
echo "❌ ERROR: You're trying to sync with the AutoPM template repository!"
|
|
14
|
+
echo ""
|
|
15
|
+
echo "This repository (rlagowski/autopm) is a template for others to use."
|
|
16
|
+
echo "You should NOT create issues or PRs here."
|
|
17
|
+
echo ""
|
|
18
|
+
echo "To fix this:"
|
|
19
|
+
echo "1. Fork this repository to your own GitHub account"
|
|
20
|
+
echo "2. Update your remote origin:"
|
|
21
|
+
echo " git remote set-url origin https://github.com/YOUR_USERNAME/YOUR_REPO.git"
|
|
22
|
+
echo ""
|
|
23
|
+
echo "Or if this is a new project:"
|
|
24
|
+
echo "1. Create a new repository on GitHub"
|
|
25
|
+
echo "2. Update your remote origin:"
|
|
26
|
+
echo " git remote set-url origin https://github.com/YOUR_USERNAME/YOUR_REPO.git"
|
|
27
|
+
echo ""
|
|
28
|
+
echo "Current remote: $remote_url"
|
|
29
|
+
exit 1
|
|
30
|
+
fi
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
This check MUST be performed in ALL commands that:
|
|
34
|
+
|
|
35
|
+
- Create issues (`gh issue create`)
|
|
36
|
+
- Edit issues (`gh issue edit`)
|
|
37
|
+
- Comment on issues (`gh issue comment`)
|
|
38
|
+
- Create PRs (`gh pr create`)
|
|
39
|
+
- Any other operation that modifies the GitHub repository
|
|
40
|
+
|
|
41
|
+
## Authentication
|
|
42
|
+
|
|
43
|
+
**Don't pre-check authentication.** Just run the command and handle failure:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
gh {command} || echo "❌ GitHub CLI failed. Run: gh auth login"
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Common Operations
|
|
50
|
+
|
|
51
|
+
### Get Issue Details
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
gh issue view {number} --json state,title,labels,body
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Create Issue
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
# ALWAYS check remote origin first!
|
|
61
|
+
gh issue create --title "{title}" --body-file {file} --label "{labels}"
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Update Issue
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# ALWAYS check remote origin first!
|
|
68
|
+
gh issue edit {number} --add-label "{label}" --add-assignee @me
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### Add Comment
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
# ALWAYS check remote origin first!
|
|
75
|
+
gh issue comment {number} --body-file {file}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Error Handling
|
|
79
|
+
|
|
80
|
+
If any gh command fails:
|
|
81
|
+
|
|
82
|
+
1. Show clear error: "❌ GitHub operation failed: {command}"
|
|
83
|
+
2. Suggest fix: "Run: gh auth login" or check issue number
|
|
84
|
+
3. Don't retry automatically
|
|
85
|
+
|
|
86
|
+
## Important Notes
|
|
87
|
+
|
|
88
|
+
- **ALWAYS** check remote origin before ANY write operation to GitHub
|
|
89
|
+
- Trust that gh CLI is installed and authenticated
|
|
90
|
+
- Use --json for structured output when parsing
|
|
91
|
+
- Keep operations atomic - one gh command per action
|
|
92
|
+
- Don't check rate limits preemptively
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Test Execution Rule
|
|
2
|
+
|
|
3
|
+
Standard patterns for running tests across all testing commands.
|
|
4
|
+
|
|
5
|
+
## Core Principles
|
|
6
|
+
|
|
7
|
+
1. **Always use test-runner agent** from `.claude/agents/test-runner.md`
|
|
8
|
+
2. **No mocking** - use real services for accurate results
|
|
9
|
+
3. **Verbose output** - capture everything for debugging
|
|
10
|
+
4. **Check test structure first** - before assuming code bugs
|
|
11
|
+
|
|
12
|
+
## Execution Pattern
|
|
13
|
+
|
|
14
|
+
```markdown
|
|
15
|
+
Execute tests for: {target}
|
|
16
|
+
|
|
17
|
+
Requirements:
|
|
18
|
+
- Run with verbose output
|
|
19
|
+
- No mock services
|
|
20
|
+
- Capture full stack traces
|
|
21
|
+
- Analyze test structure if failures occur
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Output Focus
|
|
25
|
+
|
|
26
|
+
### Success
|
|
27
|
+
|
|
28
|
+
Keep it simple:
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
✅ All tests passed ({count} tests in {time}s)
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Failure
|
|
35
|
+
|
|
36
|
+
Focus on what failed:
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
❌ Test failures: {count}
|
|
40
|
+
|
|
41
|
+
{test_name} - {file}:{line}
|
|
42
|
+
Error: {message}
|
|
43
|
+
Fix: {suggestion}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Common Issues
|
|
47
|
+
|
|
48
|
+
- Test not found → Check file path
|
|
49
|
+
- Timeout → Kill process, report incomplete
|
|
50
|
+
- Framework missing → Install dependencies
|
|
51
|
+
|
|
52
|
+
## Cleanup
|
|
53
|
+
|
|
54
|
+
Always clean up after tests:
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
pkill -f "jest|mocha|pytest" 2>/dev/null || true
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Important Notes
|
|
61
|
+
|
|
62
|
+
- Don't parallelize tests (avoid conflicts)
|
|
63
|
+
- Let each test complete fully
|
|
64
|
+
- Report failures with actionable fixes
|
|
65
|
+
- Focus output on failures, not successes
|