proagents 1.6.17 → 1.6.18
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/.claude/settings.local.json +169 -0
- package/COMMANDS.md +595 -0
- package/README.md +13 -23
- package/package.json +2 -7
- package/.proagents/ai-models/README.md +0 -141
- package/.proagents/ai-models/cost-management.md +0 -362
- package/.proagents/ai-models/fallbacks.md +0 -342
- package/.proagents/ai-models/model-config.md +0 -318
- package/.proagents/ai-models/task-routing.md +0 -503
- package/.proagents/ai-training/README.md +0 -155
- package/.proagents/ai-training/continuous-learning.md +0 -413
- package/.proagents/ai-training/domain-knowledge.md +0 -378
- package/.proagents/ai-training/pattern-learning.md +0 -455
- package/.proagents/ai-training/training-data.md +0 -337
- package/.proagents/ai-training/user-preferences.md +0 -346
- package/.proagents/approval-workflows/README.md +0 -146
- package/.proagents/approval-workflows/approval-config.md +0 -332
- package/.proagents/approval-workflows/approval-stages.md +0 -503
- package/.proagents/approval-workflows/emergency-bypass.md +0 -351
- package/.proagents/approval-workflows/examples.md +0 -859
- package/.proagents/approval-workflows/notifications.md +0 -320
- package/.proagents/compliance/README.md +0 -206
- package/.proagents/compliance/access-control.md +0 -310
- package/.proagents/compliance/audit-logging.md +0 -444
- package/.proagents/compliance/compliance-frameworks.md +0 -429
- package/.proagents/compliance/reports.md +0 -491
- package/.proagents/compliance/retention-policies.md +0 -454
- package/.proagents/config-versioning/README.md +0 -120
- package/.proagents/config-versioning/changelog.md +0 -300
- package/.proagents/config-versioning/rollback.md +0 -283
- package/.proagents/config-versioning/versioning.md +0 -330
- package/.proagents/contract-testing/README.md +0 -223
- package/.proagents/contract-testing/contract-testing.md +0 -614
- package/.proagents/contract-testing/pact-integration.md +0 -507
- package/.proagents/contract-testing/schema-validation.md +0 -565
- package/.proagents/dependency-management/README.md +0 -140
- package/.proagents/dependency-management/automation.md +0 -363
- package/.proagents/dependency-management/compatibility.md +0 -319
- package/.proagents/dependency-management/security-scanning.md +0 -413
- package/.proagents/dependency-management/update-policies.md +0 -374
- package/.proagents/disaster-recovery/README.md +0 -247
- package/.proagents/disaster-recovery/automation.md +0 -366
- package/.proagents/disaster-recovery/backup-recovery.md +0 -571
- package/.proagents/disaster-recovery/incident-response.md +0 -565
- package/.proagents/disaster-recovery/rollback-procedures.md +0 -499
- package/.proagents/disaster-recovery/runbooks.md +0 -603
- package/.proagents/disaster-recovery/scenarios.md +0 -892
- package/.proagents/disaster-recovery/testing.md +0 -438
- package/.proagents/environments/README.md +0 -244
- package/.proagents/environments/configuration.md +0 -437
- package/.proagents/environments/promotion.md +0 -434
- package/.proagents/environments/setup.md +0 -420
- package/.proagents/examples/README.md +0 -55
- package/.proagents/examples/backend-nodejs/README.md +0 -188
- package/.proagents/examples/backend-nodejs/complete-conversation.md +0 -601
- package/.proagents/examples/backend-nodejs/proagents.config.yaml +0 -415
- package/.proagents/examples/backend-nodejs/workflow-example.md +0 -909
- package/.proagents/examples/fullstack-nextjs/README.md +0 -155
- package/.proagents/examples/fullstack-nextjs/complete-conversation.md +0 -604
- package/.proagents/examples/fullstack-nextjs/proagents.config.yaml +0 -287
- package/.proagents/examples/fullstack-nextjs/workflow-example.md +0 -553
- package/.proagents/examples/mobile-react-native/README.md +0 -171
- package/.proagents/examples/mobile-react-native/complete-conversation.md +0 -825
- package/.proagents/examples/mobile-react-native/proagents.config.yaml +0 -330
- package/.proagents/examples/mobile-react-native/workflow-example.md +0 -723
- package/.proagents/examples/web-frontend-react/README.md +0 -125
- package/.proagents/examples/web-frontend-react/complete-conversation.md +0 -556
- package/.proagents/examples/web-frontend-react/proagents.config.yaml +0 -183
- package/.proagents/examples/web-frontend-react/workflow-example.md +0 -603
- package/.proagents/existing-projects/README.md +0 -65
- package/.proagents/existing-projects/challenges.md +0 -861
- package/.proagents/existing-projects/coexistence-mode.md +0 -483
- package/.proagents/existing-projects/compatibility-assessment.md +0 -541
- package/.proagents/existing-projects/gradual-adoption.md +0 -515
- package/.proagents/existing-projects/migration-strategies.md +0 -788
- package/.proagents/existing-projects/pattern-reconciliation.md +0 -489
- package/.proagents/existing-projects/team-onboarding.md +0 -617
- package/.proagents/existing-projects/technical-debt-handling.md +0 -644
- package/.proagents/feature-flags/README.md +0 -263
- package/.proagents/feature-flags/ab-testing.md +0 -413
- package/.proagents/feature-flags/configuration.md +0 -420
- package/.proagents/feature-flags/kill-switches.md +0 -444
- package/.proagents/feature-flags/rollout-strategies.md +0 -392
- package/.proagents/history.log +0 -12
- package/.proagents/i18n/README.md +0 -133
- package/.proagents/i18n/extraction.md +0 -433
- package/.proagents/i18n/tms-integration.md +0 -332
- package/.proagents/i18n/translation-workflow.md +0 -413
- package/.proagents/i18n/validation.md +0 -355
- package/.proagents/logging/README.md +0 -276
- package/.proagents/logging/aggregation.md +0 -475
- package/.proagents/logging/log-levels.md +0 -376
- package/.proagents/logging/sensitive-data.md +0 -423
- package/.proagents/logging/structured-logging.md +0 -406
- package/.proagents/metrics/README.md +0 -69
- package/.proagents/metrics/code-quality-kpis.md +0 -461
- package/.proagents/metrics/deployment-metrics.md +0 -517
- package/.proagents/metrics/developer-productivity.md +0 -368
- package/.proagents/metrics/learning-effectiveness.md +0 -478
- package/.proagents/migrations/README.md +0 -77
- package/.proagents/migrations/from-claude-projects.md +0 -313
- package/.proagents/migrations/from-cursor-rules.md +0 -345
- package/.proagents/migrations/from-custom-workflows.md +0 -410
- package/.proagents/monitoring/README.md +0 -308
- package/.proagents/monitoring/alerting.md +0 -449
- package/.proagents/monitoring/dashboards.md +0 -454
- package/.proagents/monitoring/health-checks.md +0 -436
- package/.proagents/monitoring/metrics.md +0 -434
- package/.proagents/multi-project/README.md +0 -170
- package/.proagents/multi-project/coordinated-deploy.md +0 -510
- package/.proagents/multi-project/cross-project-deps.md +0 -395
- package/.proagents/multi-project/unified-changelog.md +0 -477
- package/.proagents/multi-project/walkthroughs/monorepo-setup.md +0 -787
- package/.proagents/multi-project/workspace-config.md +0 -408
- package/.proagents/notifications/README.md +0 -151
- package/.proagents/notifications/channels.md +0 -457
- package/.proagents/notifications/preferences.md +0 -415
- package/.proagents/notifications/routing.md +0 -449
- package/.proagents/notifications/scheduling.md +0 -425
- package/.proagents/notifications/templates.md +0 -446
- package/.proagents/offline-mode/README.md +0 -145
- package/.proagents/offline-mode/caching.md +0 -344
- package/.proagents/offline-mode/offline-operations.md +0 -312
- package/.proagents/offline-mode/queue-specifications.md +0 -679
- package/.proagents/offline-mode/sync.md +0 -475
- package/.proagents/parallel-features/README.md +0 -85
- package/.proagents/parallel-features/conflict-detection.md +0 -226
- package/.proagents/parallel-features/dependency-management.md +0 -392
- package/.proagents/parallel-features/merge-coordination.md +0 -506
- package/.proagents/parallel-features/tracking-system.md +0 -416
- package/.proagents/performance/README.md +0 -59
- package/.proagents/performance/bundle-analysis.md +0 -375
- package/.proagents/performance/load-testing.md +0 -563
- package/.proagents/performance/runtime-metrics.md +0 -489
- package/.proagents/performance/web-vitals.md +0 -425
- package/.proagents/plugins/README.md +0 -139
- package/.proagents/plugins/creating-plugins.md +0 -504
- package/.proagents/plugins/plugin-api.md +0 -467
- package/.proagents/plugins/plugin-registry.md +0 -276
- package/.proagents/reporting/README.md +0 -158
- package/.proagents/reporting/dashboards.md +0 -366
- package/.proagents/reporting/exports.md +0 -524
- package/.proagents/reporting/quality-metrics.md +0 -385
- package/.proagents/reporting/templates/README.md +0 -56
- package/.proagents/reporting/templates/dashboard-config.json +0 -187
- package/.proagents/reporting/templates/metrics-queries.md +0 -427
- package/.proagents/reporting/templates/react-dashboard.tsx +0 -544
- package/.proagents/reporting/templates/widgets.md +0 -451
- package/.proagents/reporting/velocity-metrics.md +0 -340
- package/.proagents/reverse-engineering/README.md +0 -151
- package/.proagents/reverse-engineering/architecture-extraction.md +0 -325
- package/.proagents/reverse-engineering/code-analysis.md +0 -377
- package/.proagents/reverse-engineering/dependency-mapping.md +0 -567
- package/.proagents/reverse-engineering/diagram-generation.md +0 -586
- package/.proagents/reverse-engineering/documentation-generation.md +0 -468
- package/.proagents/reverse-engineering/pattern-detection.md +0 -569
- package/.proagents/reverse-engineering/quality-assessment.md +0 -733
- package/.proagents/secrets/README.md +0 -278
- package/.proagents/secrets/access-control.md +0 -443
- package/.proagents/secrets/rotation.md +0 -403
- package/.proagents/secrets/scanning.md +0 -487
- package/.proagents/secrets/storage.md +0 -394
- package/.proagents/webhooks/README.md +0 -126
- package/.proagents/webhooks/endpoints.md +0 -298
- package/.proagents/webhooks/events.md +0 -316
- package/.proagents/webhooks/payloads.md +0 -325
- package/.proagents/webhooks/reliability.md +0 -363
- package/.proagents/webhooks/security.md +0 -380
|
@@ -1,368 +0,0 @@
|
|
|
1
|
-
# Developer Productivity Metrics
|
|
2
|
-
|
|
3
|
-
Track velocity, throughput, and efficiency across development workflows.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Prompt Template
|
|
8
|
-
|
|
9
|
-
```
|
|
10
|
-
Analyze developer productivity metrics for this project:
|
|
11
|
-
|
|
12
|
-
Project: {project_name}
|
|
13
|
-
Period: {date_range}
|
|
14
|
-
Team Size: {team_size}
|
|
15
|
-
|
|
16
|
-
Available Data:
|
|
17
|
-
- Git commits: {commit_data}
|
|
18
|
-
- Feature completions: {feature_data}
|
|
19
|
-
- PR statistics: {pr_data}
|
|
20
|
-
|
|
21
|
-
Calculate and analyze:
|
|
22
|
-
1. Cycle time (start to completion)
|
|
23
|
-
2. Throughput (features per sprint)
|
|
24
|
-
3. Lead time (request to delivery)
|
|
25
|
-
4. Code review turnaround
|
|
26
|
-
5. First-time fix rate
|
|
27
|
-
|
|
28
|
-
Provide:
|
|
29
|
-
- Current metrics with trends
|
|
30
|
-
- Comparison to targets
|
|
31
|
-
- Bottleneck identification
|
|
32
|
-
- Improvement recommendations
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Key Metrics
|
|
38
|
-
|
|
39
|
-
### Cycle Time
|
|
40
|
-
|
|
41
|
-
Time from work started to work completed.
|
|
42
|
-
|
|
43
|
-
```yaml
|
|
44
|
-
cycle_time:
|
|
45
|
-
measurement:
|
|
46
|
-
start: "status:in_progress"
|
|
47
|
-
end: "status:completed"
|
|
48
|
-
|
|
49
|
-
breakdown:
|
|
50
|
-
development: "in_progress → code_review"
|
|
51
|
-
review: "code_review → approved"
|
|
52
|
-
deployment: "approved → deployed"
|
|
53
|
-
|
|
54
|
-
targets:
|
|
55
|
-
small_feature: "< 2 days"
|
|
56
|
-
medium_feature: "< 5 days"
|
|
57
|
-
large_feature: "< 10 days"
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
**Collection:**
|
|
61
|
-
```typescript
|
|
62
|
-
interface CycleTimeMetric {
|
|
63
|
-
featureId: string;
|
|
64
|
-
startDate: Date;
|
|
65
|
-
endDate: Date;
|
|
66
|
-
totalDays: number;
|
|
67
|
-
breakdown: {
|
|
68
|
-
development: number;
|
|
69
|
-
review: number;
|
|
70
|
-
testing: number;
|
|
71
|
-
deployment: number;
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
function calculateCycleTime(feature: Feature): CycleTimeMetric {
|
|
76
|
-
const phases = feature.getPhaseTransitions();
|
|
77
|
-
|
|
78
|
-
return {
|
|
79
|
-
featureId: feature.id,
|
|
80
|
-
startDate: phases.started,
|
|
81
|
-
endDate: phases.completed,
|
|
82
|
-
totalDays: daysBetween(phases.started, phases.completed),
|
|
83
|
-
breakdown: {
|
|
84
|
-
development: daysBetween(phases.started, phases.inReview),
|
|
85
|
-
review: daysBetween(phases.inReview, phases.approved),
|
|
86
|
-
testing: daysBetween(phases.approved, phases.tested),
|
|
87
|
-
deployment: daysBetween(phases.tested, phases.completed),
|
|
88
|
-
},
|
|
89
|
-
};
|
|
90
|
-
}
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
### Throughput
|
|
96
|
-
|
|
97
|
-
Features or work items completed per time period.
|
|
98
|
-
|
|
99
|
-
```yaml
|
|
100
|
-
throughput:
|
|
101
|
-
granularity: "weekly"
|
|
102
|
-
|
|
103
|
-
categories:
|
|
104
|
-
features: "type:feature"
|
|
105
|
-
bugs: "type:bug"
|
|
106
|
-
improvements: "type:improvement"
|
|
107
|
-
|
|
108
|
-
weighting:
|
|
109
|
-
small: 1
|
|
110
|
-
medium: 2
|
|
111
|
-
large: 5
|
|
112
|
-
|
|
113
|
-
targets:
|
|
114
|
-
per_developer_week: "2-4 story points"
|
|
115
|
-
team_sprint: "based on capacity"
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
**Visualization:**
|
|
119
|
-
```
|
|
120
|
-
Throughput - Last 12 Weeks
|
|
121
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
122
|
-
Week 1: ████████████░░░░░░░░ 12
|
|
123
|
-
Week 2: ██████████░░░░░░░░░░ 10
|
|
124
|
-
Week 3: ████████████████░░░░ 16
|
|
125
|
-
Week 4: ██████████████░░░░░░ 14
|
|
126
|
-
Week 5: ████████████░░░░░░░░ 12
|
|
127
|
-
...
|
|
128
|
-
Average: 13 story points/week
|
|
129
|
-
Trend: ↑ 8% improvement
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
---
|
|
133
|
-
|
|
134
|
-
### Lead Time
|
|
135
|
-
|
|
136
|
-
Time from request/idea to production deployment.
|
|
137
|
-
|
|
138
|
-
```yaml
|
|
139
|
-
lead_time:
|
|
140
|
-
phases:
|
|
141
|
-
backlog: "Waiting in backlog"
|
|
142
|
-
prioritized: "Scheduled for development"
|
|
143
|
-
in_progress: "Active development"
|
|
144
|
-
review: "Code review"
|
|
145
|
-
testing: "QA/Testing"
|
|
146
|
-
staging: "Staged for release"
|
|
147
|
-
production: "Live"
|
|
148
|
-
|
|
149
|
-
measurement:
|
|
150
|
-
start: "issue_created"
|
|
151
|
-
end: "deployed_to_production"
|
|
152
|
-
|
|
153
|
-
targets:
|
|
154
|
-
bug_fix: "< 3 days"
|
|
155
|
-
feature: "< 2 weeks"
|
|
156
|
-
epic: "< 1 month"
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
**Analysis:**
|
|
160
|
-
```typescript
|
|
161
|
-
interface LeadTimeAnalysis {
|
|
162
|
-
averageLeadTime: number;
|
|
163
|
-
medianLeadTime: number;
|
|
164
|
-
percentile90: number;
|
|
165
|
-
byPhase: Record<string, number>;
|
|
166
|
-
bottlenecks: string[];
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
function analyzeLeadTime(features: Feature[]): LeadTimeAnalysis {
|
|
170
|
-
const leadTimes = features.map(f => f.getLeadTime());
|
|
171
|
-
|
|
172
|
-
return {
|
|
173
|
-
averageLeadTime: average(leadTimes),
|
|
174
|
-
medianLeadTime: median(leadTimes),
|
|
175
|
-
percentile90: percentile(leadTimes, 90),
|
|
176
|
-
byPhase: calculatePhaseAverages(features),
|
|
177
|
-
bottlenecks: identifyBottlenecks(features),
|
|
178
|
-
};
|
|
179
|
-
}
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
---
|
|
183
|
-
|
|
184
|
-
### Code Review Metrics
|
|
185
|
-
|
|
186
|
-
```yaml
|
|
187
|
-
code_review:
|
|
188
|
-
metrics:
|
|
189
|
-
turnaround_time: "Time to first review"
|
|
190
|
-
review_cycles: "Number of review rounds"
|
|
191
|
-
review_depth: "Comments per PR"
|
|
192
|
-
approval_rate: "First-review approval rate"
|
|
193
|
-
|
|
194
|
-
targets:
|
|
195
|
-
turnaround: "< 4 hours"
|
|
196
|
-
cycles: "< 2 rounds"
|
|
197
|
-
approval_rate: "> 70%"
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
**Dashboard:**
|
|
201
|
-
```
|
|
202
|
-
Code Review Performance
|
|
203
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
204
|
-
Avg Turnaround: 3.2 hours ✅
|
|
205
|
-
Avg Cycles: 1.8 rounds ✅
|
|
206
|
-
First-Pass Rate: 72% ✅
|
|
207
|
-
Review Coverage: 95% ✅
|
|
208
|
-
|
|
209
|
-
Top Reviewers (This Week):
|
|
210
|
-
1. @alice - 12 reviews, 2.1h avg
|
|
211
|
-
2. @bob - 8 reviews, 3.5h avg
|
|
212
|
-
3. @carol - 7 reviews, 4.2h avg
|
|
213
|
-
```
|
|
214
|
-
|
|
215
|
-
---
|
|
216
|
-
|
|
217
|
-
### Work in Progress (WIP)
|
|
218
|
-
|
|
219
|
-
```yaml
|
|
220
|
-
wip:
|
|
221
|
-
limits:
|
|
222
|
-
per_developer: 2
|
|
223
|
-
per_team: "team_size * 1.5"
|
|
224
|
-
|
|
225
|
-
tracking:
|
|
226
|
-
in_progress: "status:in_progress"
|
|
227
|
-
blocked: "status:blocked"
|
|
228
|
-
in_review: "status:review"
|
|
229
|
-
|
|
230
|
-
alerts:
|
|
231
|
-
wip_exceeded: "warning"
|
|
232
|
-
blocked_item_age: "24 hours"
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
**Monitoring:**
|
|
236
|
-
```
|
|
237
|
-
WIP Status - Team Alpha
|
|
238
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
239
|
-
Developer In Progress Limit Status
|
|
240
|
-
@alice 2 2 ✅ At limit
|
|
241
|
-
@bob 3 2 ⚠️ Over limit
|
|
242
|
-
@carol 1 2 ✅ Under limit
|
|
243
|
-
|
|
244
|
-
Blocked Items (3):
|
|
245
|
-
- FEAT-123: Waiting for API (2 days) ⚠️
|
|
246
|
-
- BUG-456: Needs clarification (1 day)
|
|
247
|
-
- FEAT-789: Dependency blocked (3 days) ⚠️
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
---
|
|
251
|
-
|
|
252
|
-
## Collection Methods
|
|
253
|
-
|
|
254
|
-
### Git-Based Collection
|
|
255
|
-
|
|
256
|
-
```typescript
|
|
257
|
-
async function collectGitMetrics(repo: string): Promise<GitMetrics> {
|
|
258
|
-
const commits = await getCommits(repo, { since: '30 days ago' });
|
|
259
|
-
const prs = await getPullRequests(repo, { state: 'all' });
|
|
260
|
-
|
|
261
|
-
return {
|
|
262
|
-
commitFrequency: calculateCommitFrequency(commits),
|
|
263
|
-
prMergeTime: calculatePRMergeTime(prs),
|
|
264
|
-
authorDistribution: calculateAuthorDistribution(commits),
|
|
265
|
-
fileChurnRate: calculateFileChurn(commits),
|
|
266
|
-
};
|
|
267
|
-
}
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
### Issue Tracker Integration
|
|
271
|
-
|
|
272
|
-
```typescript
|
|
273
|
-
async function collectIssueMetrics(project: string): Promise<IssueMetrics> {
|
|
274
|
-
const issues = await getIssues(project, { period: '30 days' });
|
|
275
|
-
|
|
276
|
-
return {
|
|
277
|
-
createdCount: issues.filter(i => i.isNew).length,
|
|
278
|
-
resolvedCount: issues.filter(i => i.isResolved).length,
|
|
279
|
-
averageResolutionTime: calculateAvgResolution(issues),
|
|
280
|
-
byCategory: groupByCategory(issues),
|
|
281
|
-
byPriority: groupByPriority(issues),
|
|
282
|
-
};
|
|
283
|
-
}
|
|
284
|
-
```
|
|
285
|
-
|
|
286
|
-
---
|
|
287
|
-
|
|
288
|
-
## Reporting
|
|
289
|
-
|
|
290
|
-
### Weekly Productivity Report
|
|
291
|
-
|
|
292
|
-
```markdown
|
|
293
|
-
# Developer Productivity Report
|
|
294
|
-
**Period:** {{start_date}} - {{end_date}}
|
|
295
|
-
**Team:** {{team_name}}
|
|
296
|
-
|
|
297
|
-
## Summary
|
|
298
|
-
| Metric | Current | Previous | Change |
|
|
299
|
-
|--------|---------|----------|--------|
|
|
300
|
-
| Cycle Time | {{cycle_time}} | {{prev_cycle_time}} | {{cycle_change}} |
|
|
301
|
-
| Throughput | {{throughput}} | {{prev_throughput}} | {{throughput_change}} |
|
|
302
|
-
| WIP Avg | {{wip_avg}} | {{prev_wip}} | {{wip_change}} |
|
|
303
|
-
|
|
304
|
-
## Highlights
|
|
305
|
-
{{#each highlights}}
|
|
306
|
-
- {{this}}
|
|
307
|
-
{{/each}}
|
|
308
|
-
|
|
309
|
-
## Bottlenecks Identified
|
|
310
|
-
{{#each bottlenecks}}
|
|
311
|
-
- **{{this.area}}**: {{this.description}}
|
|
312
|
-
- Impact: {{this.impact}}
|
|
313
|
-
- Recommendation: {{this.recommendation}}
|
|
314
|
-
{{/each}}
|
|
315
|
-
|
|
316
|
-
## Individual Metrics
|
|
317
|
-
| Developer | Completed | Cycle Time | Reviews |
|
|
318
|
-
|-----------|-----------|------------|---------|
|
|
319
|
-
{{#each developers}}
|
|
320
|
-
| {{this.name}} | {{this.completed}} | {{this.cycleTime}} | {{this.reviews}} |
|
|
321
|
-
{{/each}}
|
|
322
|
-
```
|
|
323
|
-
|
|
324
|
-
---
|
|
325
|
-
|
|
326
|
-
## Improvement Strategies
|
|
327
|
-
|
|
328
|
-
### Reducing Cycle Time
|
|
329
|
-
|
|
330
|
-
1. **Smaller Work Items**: Break features into smaller deliverables
|
|
331
|
-
2. **Pair Programming**: Reduce review bottlenecks
|
|
332
|
-
3. **CI/CD Optimization**: Faster feedback loops
|
|
333
|
-
4. **Clear Requirements**: Reduce rework
|
|
334
|
-
|
|
335
|
-
### Increasing Throughput
|
|
336
|
-
|
|
337
|
-
1. **Reduce WIP**: Focus on completion over starting
|
|
338
|
-
2. **Remove Blockers**: Proactive dependency management
|
|
339
|
-
3. **Automation**: Reduce manual tasks
|
|
340
|
-
4. **Documentation**: Reduce knowledge bottlenecks
|
|
341
|
-
|
|
342
|
-
### Improving Lead Time
|
|
343
|
-
|
|
344
|
-
1. **Backlog Grooming**: Ready-to-start items
|
|
345
|
-
2. **Fast Prioritization**: Quick decision making
|
|
346
|
-
3. **Parallel Workflows**: Overlap where possible
|
|
347
|
-
4. **Continuous Deployment**: Reduce release batching
|
|
348
|
-
|
|
349
|
-
---
|
|
350
|
-
|
|
351
|
-
## Commands
|
|
352
|
-
|
|
353
|
-
```bash
|
|
354
|
-
# View productivity dashboard
|
|
355
|
-
pa:metrics productivity
|
|
356
|
-
|
|
357
|
-
# Analyze specific period
|
|
358
|
-
pa:metrics productivity --from 2024-01-01 --to 2024-01-31
|
|
359
|
-
|
|
360
|
-
# Compare periods
|
|
361
|
-
pa:metrics productivity --compare "this-sprint" "last-sprint"
|
|
362
|
-
|
|
363
|
-
# Export data
|
|
364
|
-
pa:metrics productivity --export json
|
|
365
|
-
|
|
366
|
-
# View individual metrics
|
|
367
|
-
pa:metrics productivity --developer @alice
|
|
368
|
-
```
|