proagents 1.6.20 → 1.6.21

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.
Files changed (121) hide show
  1. package/.proagents/custom-commands.yaml +0 -1
  2. package/.proagents/docs/command-details.md +1 -2
  3. package/.proagents/getting-started/ai-training-setup.md +0 -1
  4. package/.proagents/performance/README.md +59 -0
  5. package/.proagents/performance/bundle-analysis.md +375 -0
  6. package/.proagents/performance/load-testing.md +563 -0
  7. package/.proagents/performance/runtime-metrics.md +489 -0
  8. package/.proagents/performance/web-vitals.md +425 -0
  9. package/.proagents/proagents.config.yaml +0 -1
  10. package/.proagents/workflow-modes/entry-modes.md +1 -6
  11. package/lib/commands/init.js +57 -8
  12. package/package.json +1 -1
  13. package/.proagents/api-versioning/README.md +0 -257
  14. package/.proagents/api-versioning/changelog-template.md +0 -225
  15. package/.proagents/api-versioning/deprecation-workflow.md +0 -470
  16. package/.proagents/api-versioning/versioning-strategy.md +0 -291
  17. package/.proagents/automation/README.md +0 -38
  18. package/.proagents/automation/ai-behavior-rules.md +0 -339
  19. package/.proagents/automation/ai-prompt-injection.md +0 -331
  20. package/.proagents/automation/auto-decisions.md +0 -535
  21. package/.proagents/automation/decision-defaults.yaml +0 -317
  22. package/.proagents/cache/README.md +0 -110
  23. package/.proagents/cache/analysis-metadata.json +0 -76
  24. package/.proagents/cache/conventions.json +0 -125
  25. package/.proagents/cache/dependencies.json +0 -85
  26. package/.proagents/cache/features.json +0 -115
  27. package/.proagents/cache/patterns.json +0 -105
  28. package/.proagents/cache/schemas/conventions-schema.json +0 -138
  29. package/.proagents/cache/schemas/dependencies-schema.json +0 -95
  30. package/.proagents/cache/schemas/features-schema.json +0 -104
  31. package/.proagents/cache/schemas/metadata-schema.json +0 -83
  32. package/.proagents/cache/schemas/patterns-schema.json +0 -136
  33. package/.proagents/cache/schemas/structure-schema.json +0 -72
  34. package/.proagents/cache/structure.json +0 -109
  35. package/.proagents/checklists/README.md +0 -261
  36. package/.proagents/checklists/code-quality.md +0 -137
  37. package/.proagents/checklists/code-review.md +0 -148
  38. package/.proagents/checklists/pr-checklist.md +0 -78
  39. package/.proagents/checklists/pre-deployment.md +0 -132
  40. package/.proagents/checklists/pre-implementation.md +0 -80
  41. package/.proagents/checklists/testing.md +0 -120
  42. package/.proagents/checkpoints.json +0 -13
  43. package/.proagents/cicd/README.md +0 -338
  44. package/.proagents/cicd/azure-devops.md +0 -267
  45. package/.proagents/cicd/github-actions.md +0 -375
  46. package/.proagents/cicd/gitlab-ci.md +0 -278
  47. package/.proagents/cicd/jenkins.md +0 -317
  48. package/.proagents/collaboration/README.md +0 -143
  49. package/.proagents/collaboration/roles.md +0 -248
  50. package/.proagents/collaboration/sessions.md +0 -390
  51. package/.proagents/collaboration/sync.md +0 -358
  52. package/.proagents/cost/README.md +0 -48
  53. package/.proagents/cost/cost-template.md +0 -283
  54. package/.proagents/cost/estimation-framework.md +0 -287
  55. package/.proagents/database/README.md +0 -72
  56. package/.proagents/database/examples/001-create-users.sql +0 -129
  57. package/.proagents/database/examples/002-add-preferences.sql +0 -94
  58. package/.proagents/database/examples/003-add-index.sql +0 -105
  59. package/.proagents/database/examples/004-rename-column.sql +0 -122
  60. package/.proagents/database/examples/005-add-foreign-key.sql +0 -142
  61. package/.proagents/database/examples/006-data-migration.sql +0 -196
  62. package/.proagents/database/examples/007-drop-column.sql +0 -163
  63. package/.proagents/database/examples/README.md +0 -89
  64. package/.proagents/database/migration-workflow.md +0 -478
  65. package/.proagents/database/rollback-scripts.md +0 -487
  66. package/.proagents/database/safety-checks.md +0 -447
  67. package/.proagents/git/README.md +0 -68
  68. package/.proagents/git/branch-strategy.md +0 -164
  69. package/.proagents/git/commit-conventions.md +0 -241
  70. package/.proagents/git/pr-workflow.md +0 -286
  71. package/.proagents/git/rollback-procedures.md +0 -416
  72. package/.proagents/ide-integration/README.md +0 -124
  73. package/.proagents/ide-integration/cline-config.md +0 -429
  74. package/.proagents/ide-integration/continue-config.md +0 -380
  75. package/.proagents/ide-integration/cursor-rules.md +0 -280
  76. package/.proagents/ide-integration/github-copilot.md +0 -384
  77. package/.proagents/ide-integration/windsurf-rules.md +0 -314
  78. package/.proagents/integrations/README.md +0 -97
  79. package/.proagents/integrations/pm/README.md +0 -344
  80. package/.proagents/learning/README.md +0 -136
  81. package/.proagents/learning/adaptation.md +0 -305
  82. package/.proagents/learning/data-collection.md +0 -283
  83. package/.proagents/learning/implementation-guide.md +0 -865
  84. package/.proagents/learning/reports.md +0 -306
  85. package/.proagents/mcp/README.md +0 -133
  86. package/.proagents/mcp/context-providers.md +0 -442
  87. package/.proagents/mcp/server-config.md +0 -306
  88. package/.proagents/mcp/tools-definition.md +0 -513
  89. package/.proagents/pm-integration/README.md +0 -151
  90. package/.proagents/pm-integration/asana.md +0 -346
  91. package/.proagents/pm-integration/github-issues.md +0 -308
  92. package/.proagents/pm-integration/gitlab-issues.md +0 -482
  93. package/.proagents/pm-integration/jira.md +0 -364
  94. package/.proagents/pm-integration/linear.md +0 -409
  95. package/.proagents/pm-integration/notion.md +0 -275
  96. package/.proagents/pm-integration/sync-config.md +0 -533
  97. package/.proagents/pm-integration/trello.md +0 -159
  98. package/.proagents/rules/README.md +0 -179
  99. package/.proagents/rules/custom-rules-template.yaml +0 -286
  100. package/.proagents/rules/custom-rules.md +0 -754
  101. package/.proagents/rules/validation-rules-template.yaml +0 -517
  102. package/.proagents/runbooks/README.md +0 -219
  103. package/.proagents/runbooks/dependency-vulnerability.md +0 -505
  104. package/.proagents/runbooks/incident-response.md +0 -451
  105. package/.proagents/runbooks/performance-degradation.md +0 -584
  106. package/.proagents/runbooks/production-debugging.md +0 -489
  107. package/.proagents/sprints/README.md +0 -58
  108. package/.proagents/team/README.md +0 -256
  109. package/.proagents/team/code-ownership.md +0 -306
  110. package/.proagents/team/communication-templates.md +0 -441
  111. package/.proagents/team/handoff-protocol.md +0 -380
  112. package/.proagents/team/ide-setup/README.md +0 -103
  113. package/.proagents/team/ide-setup/cursor.md +0 -276
  114. package/.proagents/team/ide-setup/jetbrains.md +0 -330
  115. package/.proagents/team/ide-setup/neovim.md +0 -640
  116. package/.proagents/team/ide-setup/vscode.md +0 -348
  117. package/.proagents/team/onboarding.md +0 -278
  118. package/.proagents/time-tracking.json +0 -19
  119. package/.proagents/troubleshooting/README.md +0 -730
  120. package/.proagents/troubleshooting/ai-issues.md +0 -601
  121. package/.proagents/troubleshooting/workflow-issues.md +0 -571
@@ -1,489 +0,0 @@
1
- # Production Debugging Runbook
2
-
3
- Systematic approach to debugging issues in production environments.
4
-
5
- ---
6
-
7
- ## Overview
8
-
9
- This runbook provides techniques for safely debugging production systems while minimizing risk and impact to users.
10
-
11
- **When to use:**
12
- - Investigating production bugs
13
- - Performance issues in production
14
- - Intermittent failures
15
- - Data inconsistencies
16
-
17
- ---
18
-
19
- ## Prerequisites
20
-
21
- - [ ] Read-only production access
22
- - [ ] Access to logging systems
23
- - [ ] Access to APM/tracing tools
24
- - [ ] Understanding of system architecture
25
- - [ ] Incident channel for communication
26
-
27
- ---
28
-
29
- ## Safety First
30
-
31
- ### Production Debugging Rules
32
-
33
- 1. **Never modify production data directly**
34
- 2. **Use read-only queries when possible**
35
- 3. **Always have a rollback plan**
36
- 4. **Document all actions**
37
- 5. **Communicate with the team**
38
- 6. **Consider user impact**
39
-
40
- ### Before You Start
41
-
42
- ```bash
43
- # Ensure you're in read-only mode if possible
44
- export READONLY_MODE=true
45
-
46
- # Verify which environment you're connected to
47
- echo $ENVIRONMENT # Should show "production"
48
-
49
- # Alert the team
50
- pa:debug start --reason "Investigating ticket #1234"
51
- ```
52
-
53
- ---
54
-
55
- ## Step 1: Gather Context
56
-
57
- ### 1.1 Understand the Issue
58
-
59
- ```markdown
60
- **Issue Context**
61
- - **Reported by**: [User/Alert/Team]
62
- - **First occurrence**: [DateTime]
63
- - **Frequency**: [Constant/Intermittent/Periodic]
64
- - **Affected users**: [Specific users/All users/Percentage]
65
- - **Affected feature**: [Feature name]
66
- - **Error message**: [Exact error if available]
67
- - **Steps to reproduce**: [If known]
68
- ```
69
-
70
- ### 1.2 Check Recent Changes
71
-
72
- ```bash
73
- # Recent deployments
74
- kubectl rollout history deployment/<service> -n production
75
-
76
- # Git log for the service
77
- git log --oneline --since="7 days ago" -- src/<service>
78
-
79
- # Config changes
80
- kubectl diff -f production-config.yaml
81
-
82
- # Feature flag changes
83
- curl -s https://flags.example.com/api/changes?since=7d | jq
84
- ```
85
-
86
- ### 1.3 Check System Health
87
-
88
- ```bash
89
- # Service health
90
- curl -s https://api.example.com/health | jq
91
-
92
- # Resource usage
93
- kubectl top pods -n production -l app=<service>
94
-
95
- # Recent events
96
- kubectl get events -n production --sort-by='.lastTimestamp'
97
- ```
98
-
99
- ---
100
-
101
- ## Step 2: Log Analysis
102
-
103
- ### 2.1 Find Relevant Logs
104
-
105
- ```bash
106
- # Application logs - recent errors
107
- kubectl logs -n production -l app=<service> --tail=1000 | grep -i error
108
-
109
- # Specific time window
110
- kubectl logs -n production <pod> --since-time="2024-01-15T14:00:00Z"
111
-
112
- # Using log aggregation (Datadog example)
113
- # Query: service:<service> status:error @http.status_code:>499
114
- ```
115
-
116
- ### 2.2 Log Search Patterns
117
-
118
- **Common Error Patterns:**
119
- ```bash
120
- # Connection errors
121
- grep -E "(connection refused|timeout|ECONNRESET)" logs.txt
122
-
123
- # Authentication errors
124
- grep -E "(unauthorized|forbidden|401|403)" logs.txt
125
-
126
- # Database errors
127
- grep -E "(deadlock|constraint violation|duplicate key)" logs.txt
128
-
129
- # Memory issues
130
- grep -E "(out of memory|heap|OOM)" logs.txt
131
- ```
132
-
133
- ### 2.3 Correlate Logs
134
-
135
- ```bash
136
- # Find request ID/trace ID in error
137
- grep "error" logs.txt | grep -oE "trace_id=\w+"
138
-
139
- # Follow the trace across services
140
- # In Datadog: @trace_id:<trace_id>
141
- # In Jaeger: Search by trace ID
142
- ```
143
-
144
- ### 2.4 Log Analysis Template
145
-
146
- ```markdown
147
- **Log Analysis Findings**
148
-
149
- **Error Pattern**: Database connection timeout
150
- **First Seen**: 2024-01-15 14:32:15 UTC
151
- **Frequency**: ~50/minute
152
- **Sample Error**:
153
- ```
154
- [ERROR] [2024-01-15T14:32:15Z] DatabaseError: Connection timeout after 30s
155
- at ConnectionPool.acquire (db.js:142)
156
- at UserService.getUser (user-service.js:56)
157
- ```
158
-
159
- **Correlation**: Errors started after deployment v1.2.4
160
- **Hypothesis**: New query in v1.2.4 is too slow
161
- ```
162
-
163
- ---
164
-
165
- ## Step 3: Tracing & APM
166
-
167
- ### 3.1 Find Slow/Failed Requests
168
-
169
- ```bash
170
- # In APM tool, search for:
171
- # - Status: error
172
- # - Duration: > 5s
173
- # - Service: <your-service>
174
- # - Time range: When issue occurred
175
- ```
176
-
177
- ### 3.2 Analyze Traces
178
-
179
- **What to look for:**
180
- - Which span is taking longest?
181
- - Are there error spans?
182
- - Database queries - count and duration
183
- - External API calls - duration and status
184
- - Memory/CPU during request
185
-
186
- ### 3.3 Compare Good vs Bad Requests
187
-
188
- ```markdown
189
- **Request Comparison**
190
-
191
- | Aspect | Good Request | Bad Request |
192
- |--------|--------------|-------------|
193
- | Duration | 120ms | 32,000ms |
194
- | DB Queries | 3 | 47 |
195
- | External Calls | 1 | 1 |
196
- | Error | None | Timeout |
197
- | User Type | Regular | Premium |
198
- | Data Size | Small | Large |
199
-
200
- **Finding**: Premium users with large data trigger N+1 query
201
- ```
202
-
203
- ---
204
-
205
- ## Step 4: Database Investigation
206
-
207
- ### 4.1 Check Database Performance
208
-
209
- ```sql
210
- -- Active queries (PostgreSQL)
211
- SELECT pid, now() - pg_stat_activity.query_start AS duration, query, state
212
- FROM pg_stat_activity
213
- WHERE state != 'idle'
214
- ORDER BY duration DESC;
215
-
216
- -- Slow query log
217
- SELECT * FROM pg_stat_statements
218
- ORDER BY total_time DESC
219
- LIMIT 20;
220
-
221
- -- Lock contention
222
- SELECT * FROM pg_locks WHERE NOT granted;
223
- ```
224
-
225
- ### 4.2 Analyze Slow Queries
226
-
227
- ```sql
228
- -- Explain problematic query
229
- EXPLAIN ANALYZE
230
- SELECT * FROM users
231
- WHERE created_at > '2024-01-01'
232
- AND status = 'active';
233
-
234
- -- Check for missing indexes
235
- SELECT schemaname, tablename, attname, null_frac, n_distinct
236
- FROM pg_stats
237
- WHERE tablename = 'users';
238
- ```
239
-
240
- ### 4.3 Check Connection Pool
241
-
242
- ```bash
243
- # Application connection pool stats
244
- curl -s http://localhost:9090/metrics | grep db_pool
245
-
246
- # Database connections
247
- SELECT count(*) FROM pg_stat_activity WHERE datname = 'mydb';
248
-
249
- # Connection states
250
- SELECT state, count(*) FROM pg_stat_activity
251
- WHERE datname = 'mydb' GROUP BY state;
252
- ```
253
-
254
- ---
255
-
256
- ## Step 5: Memory & CPU Analysis
257
-
258
- ### 5.1 Check Resource Usage
259
-
260
- ```bash
261
- # Pod resource usage
262
- kubectl top pods -n production -l app=<service>
263
-
264
- # Detailed container stats
265
- kubectl exec -n production <pod> -- top -bn1
266
-
267
- # Memory breakdown
268
- kubectl exec -n production <pod> -- cat /proc/meminfo
269
- ```
270
-
271
- ### 5.2 Memory Leak Detection
272
-
273
- ```bash
274
- # Heap dump (Node.js)
275
- kubectl exec -n production <pod> -- \
276
- node --heapsnapshot-signal=SIGUSR2 -e "process.kill(process.pid, 'SIGUSR2')"
277
-
278
- # Memory over time
279
- # Check APM/monitoring for memory growth pattern
280
- ```
281
-
282
- ### 5.3 CPU Profiling
283
-
284
- ```bash
285
- # CPU profile (Node.js)
286
- kubectl exec -n production <pod> -- \
287
- node --prof app.js
288
-
289
- # Flame graphs
290
- # Use APM continuous profiling or
291
- # kubectl exec -n production <pod> -- perf record -F 99 -p $(pgrep node)
292
- ```
293
-
294
- ---
295
-
296
- ## Step 6: Network Analysis
297
-
298
- ### 6.1 Check Network Connectivity
299
-
300
- ```bash
301
- # DNS resolution
302
- kubectl exec -n production <pod> -- nslookup api.external-service.com
303
-
304
- # TCP connectivity
305
- kubectl exec -n production <pod> -- nc -zv database.internal 5432
306
-
307
- # Latency to dependencies
308
- kubectl exec -n production <pod> -- curl -w "%{time_total}" -o /dev/null -s https://api.external.com
309
- ```
310
-
311
- ### 6.2 Network Issues
312
-
313
- ```bash
314
- # Check for connection timeouts
315
- netstat -an | grep -c TIME_WAIT
316
- netstat -an | grep -c ESTABLISHED
317
-
318
- # DNS issues
319
- kubectl logs -n kube-system -l k8s-app=kube-dns --tail=100
320
-
321
- # Service mesh issues (if using Istio)
322
- kubectl logs -n production <pod> -c istio-proxy --tail=100
323
- ```
324
-
325
- ---
326
-
327
- ## Step 7: Reproduce Safely
328
-
329
- ### 7.1 Local Reproduction
330
-
331
- ```bash
332
- # Pull production data (anonymized) to local
333
- ./scripts/sync-test-data.sh --anonymize
334
-
335
- # Run with production config (read-only)
336
- ENVIRONMENT=prod-replica npm run start:debug
337
-
338
- # Reproduce the scenario
339
- curl -X POST http://localhost:3000/api/problematic-endpoint \
340
- -H "Content-Type: application/json" \
341
- -d '{"userId": "test-user-123"}'
342
- ```
343
-
344
- ### 7.2 Staging Reproduction
345
-
346
- ```bash
347
- # Deploy same version to staging
348
- kubectl set image deployment/my-service \
349
- my-service=my-registry/my-service:v1.2.4 \
350
- -n staging
351
-
352
- # Replay production traffic (if available)
353
- ./scripts/replay-traffic.sh --source production --target staging
354
- ```
355
-
356
- ### 7.3 Debug Endpoints (if available)
357
-
358
- ```bash
359
- # Enable debug mode for specific user (feature flag)
360
- curl -X POST https://flags.example.com/api/flags/debug-mode \
361
- -d '{"users": ["problem-user-id"]}'
362
-
363
- # Use debug endpoints
364
- curl -s https://api.example.com/debug/user/problem-user-id/state | jq
365
- ```
366
-
367
- ---
368
-
369
- ## Step 8: Document & Fix
370
-
371
- ### 8.1 Document Findings
372
-
373
- ```markdown
374
- # Debug Session: TICKET-1234
375
-
376
- ## Summary
377
- Premium users experiencing timeouts when loading dashboard.
378
-
379
- ## Root Cause
380
- N+1 query in `getDashboardData()` - for users with 100+ items,
381
- generates 100+ queries instead of batch loading.
382
-
383
- ## Evidence
384
- - Traces show 100+ DB queries for affected requests
385
- - All queries are identical SELECT on items table
386
- - Works fine for users with < 20 items
387
-
388
- ## Code Location
389
- `src/services/dashboard.js:142` - Loop calling single-item fetch
390
-
391
- ## Fix
392
- Replace loop with batch query using WHERE id IN (...)
393
-
394
- ## Test Plan
395
- 1. Unit test with 100+ items
396
- 2. Load test on staging
397
- 3. Monitor after deploy
398
- ```
399
-
400
- ### 8.2 Create Fix
401
-
402
- ```bash
403
- # Create fix branch
404
- git checkout -b fix/dashboard-n-plus-one
405
-
406
- # Make changes
407
- # ... edit code ...
408
-
409
- # Test locally
410
- npm run test
411
- npm run test:integration
412
-
413
- # Create PR
414
- gh pr create --title "Fix N+1 query in dashboard loading"
415
- ```
416
-
417
- ### 8.3 Verify Fix
418
-
419
- ```bash
420
- # After deploying fix:
421
-
422
- # Check error rate (should decrease)
423
- # Monitor: error rate for dashboard endpoint
424
-
425
- # Check latency (should improve)
426
- # Monitor: p99 latency for dashboard endpoint
427
-
428
- # Check DB queries (should decrease)
429
- # Trace comparison: before vs after
430
- ```
431
-
432
- ---
433
-
434
- ## Debug Commands Reference
435
-
436
- ```bash
437
- # Start debug session
438
- pa:debug start --ticket TICKET-1234
439
-
440
- # Log findings
441
- pa:debug log "Found N+1 query in dashboard loading"
442
-
443
- # Share findings
444
- pa:debug share --channel #engineering
445
-
446
- # End session
447
- pa:debug end --summary "Root cause: N+1 query, fix deployed"
448
- ```
449
-
450
- ---
451
-
452
- ## Tools Reference
453
-
454
- ### Log Analysis
455
- - **Datadog Logs**: `service:<name> status:error`
456
- - **CloudWatch**: Filter patterns, Insights queries
457
- - **ELK Stack**: Kibana query DSL
458
-
459
- ### Tracing
460
- - **Datadog APM**: Service map, traces, profiles
461
- - **Jaeger**: Distributed tracing
462
- - **X-Ray**: AWS service tracing
463
-
464
- ### Database
465
- - **pgAdmin/psql**: PostgreSQL
466
- - **MySQL Workbench**: MySQL
467
- - **Compass**: MongoDB
468
-
469
- ### Profiling
470
- - **Node.js**: `--inspect`, Chrome DevTools
471
- - **Python**: cProfile, py-spy
472
- - **Go**: pprof
473
-
474
- ---
475
-
476
- ## When to Stop
477
-
478
- **Stop debugging and escalate when:**
479
- - Issue is causing significant user impact
480
- - You've spent 30+ minutes without progress
481
- - You need access you don't have
482
- - The fix requires expertise you don't have
483
- - It's outside business hours and can wait
484
-
485
- **Escalation path:**
486
- 1. Team lead / Senior engineer
487
- 2. Service owner
488
- 3. Platform/SRE team
489
- 4. External support (DB vendor, cloud provider)
@@ -1,58 +0,0 @@
1
- # Sprints
2
-
3
- This folder contains sprint tracking files.
4
-
5
- ## Commands
6
-
7
- - `pa:sprint-start` - Start a new sprint
8
- - `pa:sprint-end` - End sprint with summary
9
- - `pa:sprint-status` - Show current sprint status
10
- - `pa:velocity` - Show velocity metrics
11
-
12
- ## File Structure
13
-
14
- ```
15
- sprints/
16
- ├── sprint-1.json # Sprint data
17
- ├── sprint-1-summary.md # Sprint summary (generated on end)
18
- ├── sprint-2.json
19
- └── sprint-2-summary.md
20
- ```
21
-
22
- ## Sprint File Format
23
-
24
- ```json
25
- {
26
- "sprint_number": 1,
27
- "name": "Sprint 1",
28
- "start_date": "2024-03-01",
29
- "end_date": "2024-03-15",
30
- "status": "active",
31
- "goals": [
32
- "Complete user authentication",
33
- "Add dashboard UI"
34
- ],
35
- "features": [
36
- {
37
- "name": "user-auth",
38
- "status": "completed",
39
- "points": 8
40
- },
41
- {
42
- "name": "dashboard",
43
- "status": "in_progress",
44
- "points": 5
45
- }
46
- ],
47
- "metrics": {
48
- "planned_points": 13,
49
- "completed_points": 8,
50
- "velocity": 8
51
- }
52
- }
53
- ```
54
-
55
- ## Velocity Tracking
56
-
57
- Velocity is calculated as the average story points completed per sprint.
58
- Use `pa:velocity` to see trends over time.