@prodbeam/mcp 0.1.0

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 (141) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/LICENSE +21 -0
  3. package/README.md +208 -0
  4. package/dist/CLAUDE.md +7 -0
  5. package/dist/adapters/github-mcp.d.ts +25 -0
  6. package/dist/adapters/github-mcp.d.ts.map +1 -0
  7. package/dist/adapters/github-mcp.js +307 -0
  8. package/dist/adapters/github-mcp.js.map +1 -0
  9. package/dist/adapters/jira-mcp.d.ts +14 -0
  10. package/dist/adapters/jira-mcp.d.ts.map +1 -0
  11. package/dist/adapters/jira-mcp.js +159 -0
  12. package/dist/adapters/jira-mcp.js.map +1 -0
  13. package/dist/cli.d.ts +3 -0
  14. package/dist/cli.d.ts.map +1 -0
  15. package/dist/cli.js +256 -0
  16. package/dist/cli.js.map +1 -0
  17. package/dist/clients/github-client.d.ts +29 -0
  18. package/dist/clients/github-client.d.ts.map +1 -0
  19. package/dist/clients/github-client.js +116 -0
  20. package/dist/clients/github-client.js.map +1 -0
  21. package/dist/clients/jira-client.d.ts +30 -0
  22. package/dist/clients/jira-client.d.ts.map +1 -0
  23. package/dist/clients/jira-client.js +115 -0
  24. package/dist/clients/jira-client.js.map +1 -0
  25. package/dist/clients/types.d.ts +155 -0
  26. package/dist/clients/types.d.ts.map +1 -0
  27. package/dist/clients/types.js +2 -0
  28. package/dist/clients/types.js.map +1 -0
  29. package/dist/commands/init.d.ts +2 -0
  30. package/dist/commands/init.d.ts.map +1 -0
  31. package/dist/commands/init.js +426 -0
  32. package/dist/commands/init.js.map +1 -0
  33. package/dist/commands/prompt.d.ts +18 -0
  34. package/dist/commands/prompt.d.ts.map +1 -0
  35. package/dist/commands/prompt.js +122 -0
  36. package/dist/commands/prompt.js.map +1 -0
  37. package/dist/config/credentials.d.ts +9 -0
  38. package/dist/config/credentials.d.ts.map +1 -0
  39. package/dist/config/credentials.js +87 -0
  40. package/dist/config/credentials.js.map +1 -0
  41. package/dist/config/paths.d.ts +6 -0
  42. package/dist/config/paths.d.ts.map +1 -0
  43. package/dist/config/paths.js +31 -0
  44. package/dist/config/paths.js.map +1 -0
  45. package/dist/config/team-config.d.ts +204 -0
  46. package/dist/config/team-config.d.ts.map +1 -0
  47. package/dist/config/team-config.js +86 -0
  48. package/dist/config/team-config.js.map +1 -0
  49. package/dist/config/thresholds.d.ts +15 -0
  50. package/dist/config/thresholds.d.ts.map +1 -0
  51. package/dist/config/thresholds.js +18 -0
  52. package/dist/config/thresholds.js.map +1 -0
  53. package/dist/config/types.d.ts +42 -0
  54. package/dist/config/types.d.ts.map +1 -0
  55. package/dist/config/types.js +2 -0
  56. package/dist/config/types.js.map +1 -0
  57. package/dist/discovery/github-discovery.d.ts +4 -0
  58. package/dist/discovery/github-discovery.d.ts.map +1 -0
  59. package/dist/discovery/github-discovery.js +46 -0
  60. package/dist/discovery/github-discovery.js.map +1 -0
  61. package/dist/discovery/jira-discovery.d.ts +4 -0
  62. package/dist/discovery/jira-discovery.d.ts.map +1 -0
  63. package/dist/discovery/jira-discovery.js +68 -0
  64. package/dist/discovery/jira-discovery.js.map +1 -0
  65. package/dist/discovery/types.d.ts +40 -0
  66. package/dist/discovery/types.d.ts.map +1 -0
  67. package/dist/discovery/types.js +2 -0
  68. package/dist/discovery/types.js.map +1 -0
  69. package/dist/generators/metrics-calculator.d.ts +5 -0
  70. package/dist/generators/metrics-calculator.d.ts.map +1 -0
  71. package/dist/generators/metrics-calculator.js +101 -0
  72. package/dist/generators/metrics-calculator.js.map +1 -0
  73. package/dist/generators/report-generator.d.ts +25 -0
  74. package/dist/generators/report-generator.d.ts.map +1 -0
  75. package/dist/generators/report-generator.js +375 -0
  76. package/dist/generators/report-generator.js.map +1 -0
  77. package/dist/generators/sprint-analyzer.d.ts +5 -0
  78. package/dist/generators/sprint-analyzer.d.ts.map +1 -0
  79. package/dist/generators/sprint-analyzer.js +88 -0
  80. package/dist/generators/sprint-analyzer.js.map +1 -0
  81. package/dist/history/history-store.d.ts +15 -0
  82. package/dist/history/history-store.d.ts.map +1 -0
  83. package/dist/history/history-store.js +197 -0
  84. package/dist/history/history-store.js.map +1 -0
  85. package/dist/history/snapshot-builder.d.ts +15 -0
  86. package/dist/history/snapshot-builder.d.ts.map +1 -0
  87. package/dist/history/snapshot-builder.js +45 -0
  88. package/dist/history/snapshot-builder.js.map +1 -0
  89. package/dist/history/types.d.ts +33 -0
  90. package/dist/history/types.d.ts.map +1 -0
  91. package/dist/history/types.js +2 -0
  92. package/dist/history/types.js.map +1 -0
  93. package/dist/index.d.ts +3 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/dist/index.js +797 -0
  96. package/dist/index.js.map +1 -0
  97. package/dist/insights/anomaly-detector.d.ts +28 -0
  98. package/dist/insights/anomaly-detector.d.ts.map +1 -0
  99. package/dist/insights/anomaly-detector.js +154 -0
  100. package/dist/insights/anomaly-detector.js.map +1 -0
  101. package/dist/insights/team-health.d.ts +24 -0
  102. package/dist/insights/team-health.d.ts.map +1 -0
  103. package/dist/insights/team-health.js +151 -0
  104. package/dist/insights/team-health.js.map +1 -0
  105. package/dist/insights/trend-analyzer.d.ts +5 -0
  106. package/dist/insights/trend-analyzer.d.ts.map +1 -0
  107. package/dist/insights/trend-analyzer.js +79 -0
  108. package/dist/insights/trend-analyzer.js.map +1 -0
  109. package/dist/insights/types.d.ts +10 -0
  110. package/dist/insights/types.d.ts.map +1 -0
  111. package/dist/insights/types.js +2 -0
  112. package/dist/insights/types.js.map +1 -0
  113. package/dist/orchestrator/data-fetcher.d.ts +16 -0
  114. package/dist/orchestrator/data-fetcher.d.ts.map +1 -0
  115. package/dist/orchestrator/data-fetcher.js +169 -0
  116. package/dist/orchestrator/data-fetcher.js.map +1 -0
  117. package/dist/orchestrator/time-range.d.ts +8 -0
  118. package/dist/orchestrator/time-range.d.ts.map +1 -0
  119. package/dist/orchestrator/time-range.js +27 -0
  120. package/dist/orchestrator/time-range.js.map +1 -0
  121. package/dist/types/github.d.ts +40 -0
  122. package/dist/types/github.d.ts.map +1 -0
  123. package/dist/types/github.js +2 -0
  124. package/dist/types/github.js.map +1 -0
  125. package/dist/types/jira.d.ts +18 -0
  126. package/dist/types/jira.d.ts.map +1 -0
  127. package/dist/types/jira.js +2 -0
  128. package/dist/types/jira.js.map +1 -0
  129. package/dist/types/retrospective.d.ts +38 -0
  130. package/dist/types/retrospective.d.ts.map +1 -0
  131. package/dist/types/retrospective.js +2 -0
  132. package/dist/types/retrospective.js.map +1 -0
  133. package/dist/types/weekly.d.ts +41 -0
  134. package/dist/types/weekly.d.ts.map +1 -0
  135. package/dist/types/weekly.js +2 -0
  136. package/dist/types/weekly.js.map +1 -0
  137. package/dist/validators.d.ts +236 -0
  138. package/dist/validators.d.ts.map +1 -0
  139. package/dist/validators.js +62 -0
  140. package/dist/validators.js.map +1 -0
  141. package/package.json +72 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report-generator.js","sourceRoot":"","sources":["../../src/generators/report-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { GitHubActivity } from '../types/github.js';
2
+ import type { JiraActivity } from '../types/jira.js';
3
+ import type { SprintMetrics } from '../types/retrospective.js';
4
+ export declare function analyzeSprintActivity(github: GitHubActivity, jira?: JiraActivity): SprintMetrics;
5
+ //# sourceMappingURL=sprint-analyzer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprint-analyzer.d.ts","sourceRoot":"","sources":["../../src/generators/sprint-analyzer.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAO/D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,aAAa,CAkGhG"}
@@ -0,0 +1,88 @@
1
+ const DONE_STATUSES = ['done', 'closed', 'resolved', 'complete', 'completed'];
2
+ export function analyzeSprintActivity(github, jira) {
3
+ let prMerged = 0;
4
+ let prOpen = 0;
5
+ let prClosed = 0;
6
+ let totalAdditions = 0;
7
+ let totalDeletions = 0;
8
+ let totalMergeTimeMs = 0;
9
+ let mergedWithTimestamps = 0;
10
+ for (const pr of github.pullRequests) {
11
+ if (pr.state === 'merged') {
12
+ prMerged++;
13
+ if (pr.createdAt && pr.mergedAt) {
14
+ const created = new Date(pr.createdAt).getTime();
15
+ const merged = new Date(pr.mergedAt).getTime();
16
+ if (!isNaN(created) && !isNaN(merged) && merged > created) {
17
+ totalMergeTimeMs += merged - created;
18
+ mergedWithTimestamps++;
19
+ }
20
+ }
21
+ }
22
+ else if (pr.state === 'open') {
23
+ prOpen++;
24
+ }
25
+ else {
26
+ prClosed++;
27
+ }
28
+ totalAdditions += pr.additions ?? 0;
29
+ totalDeletions += pr.deletions ?? 0;
30
+ }
31
+ const prTotal = github.pullRequests.length;
32
+ const mergeRate = prTotal > 0 ? Math.round((prMerged / prTotal) * 100) : 0;
33
+ const avgMergeTimeHours = mergedWithTimestamps > 0
34
+ ? Math.round((totalMergeTimeMs / mergedWithTimestamps / (1000 * 60 * 60)) * 10) / 10
35
+ : null;
36
+ let approved = 0;
37
+ let changesRequested = 0;
38
+ let commented = 0;
39
+ for (const rev of github.reviews) {
40
+ if (rev.state === 'APPROVED')
41
+ approved++;
42
+ else if (rev.state === 'CHANGES_REQUESTED')
43
+ changesRequested++;
44
+ else
45
+ commented++;
46
+ }
47
+ const metrics = {
48
+ totalCommits: github.commits.length,
49
+ pullRequests: {
50
+ total: prTotal,
51
+ merged: prMerged,
52
+ open: prOpen,
53
+ closed: prClosed,
54
+ mergeRate,
55
+ },
56
+ additions: totalAdditions,
57
+ deletions: totalDeletions,
58
+ reviews: {
59
+ total: github.reviews.length,
60
+ approved,
61
+ changesRequested,
62
+ commented,
63
+ },
64
+ avgMergeTimeHours,
65
+ };
66
+ if (jira && jira.issues.length > 0) {
67
+ const byType = {};
68
+ const byPriority = {};
69
+ let completed = 0;
70
+ for (const issue of jira.issues) {
71
+ byType[issue.issueType] = (byType[issue.issueType] ?? 0) + 1;
72
+ byPriority[issue.priority] = (byPriority[issue.priority] ?? 0) + 1;
73
+ if (DONE_STATUSES.includes(issue.status.toLowerCase())) {
74
+ completed++;
75
+ }
76
+ }
77
+ const totalIssues = jira.issues.length;
78
+ metrics.jira = {
79
+ totalIssues,
80
+ completed,
81
+ completionRate: Math.round((completed / totalIssues) * 100),
82
+ byType,
83
+ byPriority,
84
+ };
85
+ }
86
+ return metrics;
87
+ }
88
+ //# sourceMappingURL=sprint-analyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprint-analyzer.js","sourceRoot":"","sources":["../../src/generators/sprint-analyzer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { Snapshot, MemberSnapshot } from './types.js';
2
+ export declare class HistoryStore {
3
+ private db;
4
+ constructor(dbPath?: string);
5
+ saveSnapshot(snapshot: Snapshot): number;
6
+ saveMemberSnapshots(snapshotId: number, members: MemberSnapshot[]): void;
7
+ getLatestSnapshot(type: 'daily' | 'weekly' | 'sprint'): Snapshot | null;
8
+ getPreviousSnapshot(type: 'daily' | 'weekly' | 'sprint', beforeDate: string): Snapshot | null;
9
+ getSprintHistory(limit?: number): Snapshot[];
10
+ getWeeklyHistory(limit?: number): Snapshot[];
11
+ getMemberSnapshots(snapshotId: number): MemberSnapshot[];
12
+ close(): void;
13
+ private migrate;
14
+ }
15
+ //# sourceMappingURL=history-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-store.d.ts","sourceRoot":"","sources":["../../src/history/history-store.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG3D,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAoB;gBAElB,MAAM,CAAC,EAAE,MAAM;IAc3B,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM;IAwCxC,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI;IAmCxE,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,IAAI;IAcvE,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,EAAE,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAe7F,gBAAgB,CAAC,KAAK,SAAK,GAAG,QAAQ,EAAE;IAcxC,gBAAgB,CAAC,KAAK,SAAK,GAAG,QAAQ,EAAE;IAcxC,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,EAAE;IAWxD,KAAK,IAAI,IAAI;IAMb,OAAO,CAAC,OAAO;CA6ChB"}
@@ -0,0 +1,197 @@
1
+ import Database from 'better-sqlite3';
2
+ import { historyDbPath, ensureConfigDir } from '../config/paths.js';
3
+ export class HistoryStore {
4
+ db;
5
+ constructor(dbPath) {
6
+ const path = dbPath ?? historyDbPath();
7
+ if (!dbPath) {
8
+ ensureConfigDir();
9
+ }
10
+ this.db = new Database(path);
11
+ this.db.pragma('journal_mode = WAL');
12
+ this.db.pragma('foreign_keys = ON');
13
+ this.migrate();
14
+ }
15
+ saveSnapshot(snapshot) {
16
+ const stmt = this.db.prepare(`
17
+ INSERT INTO snapshots (
18
+ team_name, snapshot_type, period_start, period_end, sprint_name,
19
+ total_commits, total_prs, prs_merged, prs_open,
20
+ total_additions, total_deletions, total_reviews, avg_merge_time_h,
21
+ jira_total, jira_completed, jira_completion_pct
22
+ ) VALUES (
23
+ @teamName, @snapshotType, @periodStart, @periodEnd, @sprintName,
24
+ @totalCommits, @totalPRs, @prsMerged, @prsOpen,
25
+ @totalAdditions, @totalDeletions, @totalReviews, @avgMergeTimeH,
26
+ @jiraTotal, @jiraCompleted, @jiraCompletionPct
27
+ )
28
+ `);
29
+ const result = stmt.run({
30
+ teamName: snapshot.teamName,
31
+ snapshotType: snapshot.snapshotType,
32
+ periodStart: snapshot.periodStart,
33
+ periodEnd: snapshot.periodEnd,
34
+ sprintName: snapshot.sprintName ?? null,
35
+ totalCommits: snapshot.totalCommits,
36
+ totalPRs: snapshot.totalPRs,
37
+ prsMerged: snapshot.prsMerged,
38
+ prsOpen: snapshot.prsOpen,
39
+ totalAdditions: snapshot.totalAdditions,
40
+ totalDeletions: snapshot.totalDeletions,
41
+ totalReviews: snapshot.totalReviews,
42
+ avgMergeTimeH: snapshot.avgMergeTimeH,
43
+ jiraTotal: snapshot.jiraTotal,
44
+ jiraCompleted: snapshot.jiraCompleted,
45
+ jiraCompletionPct: snapshot.jiraCompletionPct,
46
+ });
47
+ return Number(result.lastInsertRowid);
48
+ }
49
+ saveMemberSnapshots(snapshotId, members) {
50
+ const stmt = this.db.prepare(`
51
+ INSERT INTO member_snapshots (
52
+ snapshot_id, member_github,
53
+ commits, prs, prs_merged, reviews_given,
54
+ additions, deletions, jira_completed
55
+ ) VALUES (
56
+ @snapshotId, @memberGithub,
57
+ @commits, @prs, @prsMerged, @reviewsGiven,
58
+ @additions, @deletions, @jiraCompleted
59
+ )
60
+ `);
61
+ const insertMany = this.db.transaction((items) => {
62
+ for (const m of items) {
63
+ stmt.run({
64
+ snapshotId,
65
+ memberGithub: m.memberGithub,
66
+ commits: m.commits,
67
+ prs: m.prs,
68
+ prsMerged: m.prsMerged,
69
+ reviewsGiven: m.reviewsGiven,
70
+ additions: m.additions,
71
+ deletions: m.deletions,
72
+ jiraCompleted: m.jiraCompleted,
73
+ });
74
+ }
75
+ });
76
+ insertMany(members);
77
+ }
78
+ getLatestSnapshot(type) {
79
+ const row = this.db
80
+ .prepare(`SELECT * FROM snapshots WHERE snapshot_type = ? ORDER BY period_end DESC, id DESC LIMIT 1`)
81
+ .get(type);
82
+ return row ? mapRow(row) : null;
83
+ }
84
+ getPreviousSnapshot(type, beforeDate) {
85
+ const row = this.db
86
+ .prepare(`SELECT * FROM snapshots
87
+ WHERE snapshot_type = ? AND period_end < ?
88
+ ORDER BY period_end DESC LIMIT 1`)
89
+ .get(type, beforeDate);
90
+ return row ? mapRow(row) : null;
91
+ }
92
+ getSprintHistory(limit = 10) {
93
+ const rows = this.db
94
+ .prepare(`SELECT * FROM snapshots WHERE snapshot_type = 'sprint'
95
+ ORDER BY period_end DESC LIMIT ?`)
96
+ .all(limit);
97
+ return rows.map(mapRow);
98
+ }
99
+ getWeeklyHistory(limit = 10) {
100
+ const rows = this.db
101
+ .prepare(`SELECT * FROM snapshots WHERE snapshot_type = 'weekly'
102
+ ORDER BY period_end DESC LIMIT ?`)
103
+ .all(limit);
104
+ return rows.map(mapRow);
105
+ }
106
+ getMemberSnapshots(snapshotId) {
107
+ const rows = this.db
108
+ .prepare(`SELECT * FROM member_snapshots WHERE snapshot_id = ?`)
109
+ .all(snapshotId);
110
+ return rows.map(mapMemberRow);
111
+ }
112
+ close() {
113
+ this.db.close();
114
+ }
115
+ migrate() {
116
+ this.db.exec(`
117
+ CREATE TABLE IF NOT EXISTS snapshots (
118
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
119
+ team_name TEXT NOT NULL,
120
+ snapshot_type TEXT NOT NULL,
121
+ period_start TEXT NOT NULL,
122
+ period_end TEXT NOT NULL,
123
+ sprint_name TEXT,
124
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
125
+
126
+ total_commits INTEGER NOT NULL DEFAULT 0,
127
+ total_prs INTEGER NOT NULL DEFAULT 0,
128
+ prs_merged INTEGER NOT NULL DEFAULT 0,
129
+ prs_open INTEGER NOT NULL DEFAULT 0,
130
+ total_additions INTEGER NOT NULL DEFAULT 0,
131
+ total_deletions INTEGER NOT NULL DEFAULT 0,
132
+ total_reviews INTEGER NOT NULL DEFAULT 0,
133
+ avg_merge_time_h REAL,
134
+
135
+ jira_total INTEGER DEFAULT 0,
136
+ jira_completed INTEGER DEFAULT 0,
137
+ jira_completion_pct REAL DEFAULT 0
138
+ );
139
+
140
+ CREATE TABLE IF NOT EXISTS member_snapshots (
141
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
142
+ snapshot_id INTEGER NOT NULL REFERENCES snapshots(id),
143
+ member_github TEXT NOT NULL,
144
+
145
+ commits INTEGER NOT NULL DEFAULT 0,
146
+ prs INTEGER NOT NULL DEFAULT 0,
147
+ prs_merged INTEGER NOT NULL DEFAULT 0,
148
+ reviews_given INTEGER NOT NULL DEFAULT 0,
149
+ additions INTEGER NOT NULL DEFAULT 0,
150
+ deletions INTEGER NOT NULL DEFAULT 0,
151
+ jira_completed INTEGER DEFAULT 0
152
+ );
153
+
154
+ CREATE INDEX IF NOT EXISTS idx_snapshots_type_period
155
+ ON snapshots(snapshot_type, period_end);
156
+ CREATE INDEX IF NOT EXISTS idx_member_snapshots
157
+ ON member_snapshots(snapshot_id);
158
+ `);
159
+ }
160
+ }
161
+ function mapRow(row) {
162
+ return {
163
+ id: row.id,
164
+ teamName: row.team_name,
165
+ snapshotType: row.snapshot_type,
166
+ periodStart: row.period_start,
167
+ periodEnd: row.period_end,
168
+ sprintName: row.sprint_name ?? undefined,
169
+ createdAt: row.created_at,
170
+ totalCommits: row.total_commits,
171
+ totalPRs: row.total_prs,
172
+ prsMerged: row.prs_merged,
173
+ prsOpen: row.prs_open,
174
+ totalAdditions: row.total_additions,
175
+ totalDeletions: row.total_deletions,
176
+ totalReviews: row.total_reviews,
177
+ avgMergeTimeH: row.avg_merge_time_h,
178
+ jiraTotal: row.jira_total,
179
+ jiraCompleted: row.jira_completed,
180
+ jiraCompletionPct: row.jira_completion_pct,
181
+ };
182
+ }
183
+ function mapMemberRow(row) {
184
+ return {
185
+ id: row.id,
186
+ snapshotId: row.snapshot_id,
187
+ memberGithub: row.member_github,
188
+ commits: row.commits,
189
+ prs: row.prs,
190
+ prsMerged: row.prs_merged,
191
+ reviewsGiven: row.reviews_given,
192
+ additions: row.additions,
193
+ deletions: row.deletions,
194
+ jiraCompleted: row.jira_completed,
195
+ };
196
+ }
197
+ //# sourceMappingURL=history-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-store.js","sourceRoot":"","sources":["../../src/history/history-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { Snapshot } from './types.js';
2
+ import type { GitHubActivity } from '../types/github.js';
3
+ import type { JiraActivity } from '../types/jira.js';
4
+ interface BuildSnapshotInput {
5
+ teamName: string;
6
+ snapshotType: Snapshot['snapshotType'];
7
+ periodStart: string;
8
+ periodEnd: string;
9
+ sprintName?: string;
10
+ github: GitHubActivity;
11
+ jira?: JiraActivity;
12
+ }
13
+ export declare function buildSnapshot(input: BuildSnapshotInput): Snapshot;
14
+ export {};
15
+ //# sourceMappingURL=snapshot-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot-builder.d.ts","sourceRoot":"","sources":["../../src/history/snapshot-builder.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB;AAQD,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,QAAQ,CAiDjE"}
@@ -0,0 +1,45 @@
1
+ const DONE_STATUSES = new Set(['done', 'closed', 'resolved', 'complete', 'completed']);
2
+ export function buildSnapshot(input) {
3
+ const { teamName, snapshotType, periodStart, periodEnd, sprintName, github, jira } = input;
4
+ const totalCommits = github.commits.length;
5
+ const totalPRs = github.pullRequests.length;
6
+ const prsMerged = github.pullRequests.filter((pr) => pr.state === 'merged').length;
7
+ const prsOpen = github.pullRequests.filter((pr) => pr.state === 'open').length;
8
+ const totalAdditions = github.pullRequests.reduce((sum, pr) => sum + (pr.additions ?? 0), 0);
9
+ const totalDeletions = github.pullRequests.reduce((sum, pr) => sum + (pr.deletions ?? 0), 0);
10
+ const totalReviews = github.reviews.length;
11
+ const mergedPRs = github.pullRequests.filter((pr) => pr.mergedAt && pr.createdAt);
12
+ let avgMergeTimeH = null;
13
+ if (mergedPRs.length > 0) {
14
+ const totalHours = mergedPRs.reduce((sum, pr) => {
15
+ const created = new Date(pr.createdAt).getTime();
16
+ const merged = new Date(pr.mergedAt).getTime();
17
+ return sum + (merged - created) / (1000 * 60 * 60);
18
+ }, 0);
19
+ avgMergeTimeH = Math.round((totalHours / mergedPRs.length) * 10) / 10;
20
+ }
21
+ const jiraTotal = jira?.issues.length ?? 0;
22
+ const jiraCompleted = jira
23
+ ? jira.issues.filter((i) => DONE_STATUSES.has(i.status.toLowerCase())).length
24
+ : 0;
25
+ const jiraCompletionPct = jiraTotal > 0 ? Math.round((jiraCompleted / jiraTotal) * 100) : 0;
26
+ return {
27
+ teamName,
28
+ snapshotType,
29
+ periodStart,
30
+ periodEnd,
31
+ sprintName,
32
+ totalCommits,
33
+ totalPRs,
34
+ prsMerged,
35
+ prsOpen,
36
+ totalAdditions,
37
+ totalDeletions,
38
+ totalReviews,
39
+ avgMergeTimeH,
40
+ jiraTotal,
41
+ jiraCompleted,
42
+ jiraCompletionPct,
43
+ };
44
+ }
45
+ //# sourceMappingURL=snapshot-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot-builder.js","sourceRoot":"","sources":["../../src/history/snapshot-builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ export interface Snapshot {
2
+ id?: number;
3
+ teamName: string;
4
+ snapshotType: 'daily' | 'weekly' | 'sprint';
5
+ periodStart: string;
6
+ periodEnd: string;
7
+ sprintName?: string;
8
+ createdAt?: string;
9
+ totalCommits: number;
10
+ totalPRs: number;
11
+ prsMerged: number;
12
+ prsOpen: number;
13
+ totalAdditions: number;
14
+ totalDeletions: number;
15
+ totalReviews: number;
16
+ avgMergeTimeH: number | null;
17
+ jiraTotal: number;
18
+ jiraCompleted: number;
19
+ jiraCompletionPct: number;
20
+ }
21
+ export interface MemberSnapshot {
22
+ id?: number;
23
+ snapshotId?: number;
24
+ memberGithub: string;
25
+ commits: number;
26
+ prs: number;
27
+ prsMerged: number;
28
+ reviewsGiven: number;
29
+ additions: number;
30
+ deletions: number;
31
+ jiraCompleted: number;
32
+ }
33
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/history/types.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,QAAQ;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAG7B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAGD,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/history/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}