quackscore 0.2.4 → 0.3.1

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 (92) hide show
  1. package/dist/commands/create.d.ts +1 -0
  2. package/dist/commands/create.d.ts.map +1 -1
  3. package/dist/commands/create.js +26 -10
  4. package/dist/commands/create.js.map +1 -1
  5. package/dist/commands/init.d.ts.map +1 -1
  6. package/dist/commands/init.js +19 -0
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/commands/leaderboard.d.ts +5 -1
  9. package/dist/commands/leaderboard.d.ts.map +1 -1
  10. package/dist/commands/leaderboard.js +57 -29
  11. package/dist/commands/leaderboard.js.map +1 -1
  12. package/dist/commands/profile-options.d.ts +24 -0
  13. package/dist/commands/profile-options.d.ts.map +1 -0
  14. package/dist/commands/profile-options.js +38 -0
  15. package/dist/commands/profile-options.js.map +1 -0
  16. package/dist/commands/remove.d.ts +5 -1
  17. package/dist/commands/remove.d.ts.map +1 -1
  18. package/dist/commands/remove.js +14 -5
  19. package/dist/commands/remove.js.map +1 -1
  20. package/dist/commands/show.d.ts +5 -1
  21. package/dist/commands/show.d.ts.map +1 -1
  22. package/dist/commands/show.js +12 -3
  23. package/dist/commands/show.js.map +1 -1
  24. package/dist/commands/update-summary.d.ts +2 -0
  25. package/dist/commands/update-summary.d.ts.map +1 -1
  26. package/dist/commands/update-summary.js +12 -3
  27. package/dist/commands/update-summary.js.map +1 -1
  28. package/dist/commands/update.d.ts.map +1 -1
  29. package/dist/commands/update.js +148 -68
  30. package/dist/commands/update.js.map +1 -1
  31. package/dist/config/types.d.ts +1 -1
  32. package/dist/config/types.d.ts.map +1 -1
  33. package/dist/config/types.js +14 -0
  34. package/dist/config/types.js.map +1 -1
  35. package/dist/github/client.d.ts +5 -5
  36. package/dist/github/client.d.ts.map +1 -1
  37. package/dist/github/client.js +163 -186
  38. package/dist/github/client.js.map +1 -1
  39. package/dist/index.js +32 -7
  40. package/dist/index.js.map +1 -1
  41. package/dist/llm/analyzer.d.ts +3 -3
  42. package/dist/llm/analyzer.d.ts.map +1 -1
  43. package/dist/llm/analyzer.js.map +1 -1
  44. package/dist/llm/character.d.ts +2 -2
  45. package/dist/llm/character.d.ts.map +1 -1
  46. package/dist/llm/character.js.map +1 -1
  47. package/dist/llm/client.d.ts +2 -2
  48. package/dist/llm/client.d.ts.map +1 -1
  49. package/dist/llm/client.js +1 -1
  50. package/dist/llm/client.js.map +1 -1
  51. package/dist/llm/providers.d.ts +3 -3
  52. package/dist/llm/providers.d.ts.map +1 -1
  53. package/dist/llm/providers.js +25 -6
  54. package/dist/llm/providers.js.map +1 -1
  55. package/dist/report/generate.d.ts.map +1 -1
  56. package/dist/report/generate.js +4 -2
  57. package/dist/report/generate.js.map +1 -1
  58. package/dist/report/leaderboard.d.ts +5 -1
  59. package/dist/report/leaderboard.d.ts.map +1 -1
  60. package/dist/report/leaderboard.js +611 -865
  61. package/dist/report/leaderboard.js.map +1 -1
  62. package/dist/shared/profile-scope.d.ts +19 -0
  63. package/dist/shared/profile-scope.d.ts.map +1 -0
  64. package/dist/shared/profile-scope.js +101 -0
  65. package/dist/shared/profile-scope.js.map +1 -0
  66. package/dist/shared/types.d.ts +28 -0
  67. package/dist/shared/types.d.ts.map +1 -1
  68. package/dist/shared/ui.d.ts +1 -0
  69. package/dist/shared/ui.d.ts.map +1 -1
  70. package/dist/shared/ui.js +3 -0
  71. package/dist/shared/ui.js.map +1 -1
  72. package/dist/storage/index.d.ts +1 -1
  73. package/dist/storage/index.d.ts.map +1 -1
  74. package/dist/storage/index.js +1 -1
  75. package/dist/storage/index.js.map +1 -1
  76. package/dist/storage/leaderboard.d.ts +3 -2
  77. package/dist/storage/leaderboard.d.ts.map +1 -1
  78. package/dist/storage/leaderboard.js +80 -9
  79. package/dist/storage/leaderboard.js.map +1 -1
  80. package/dist/storage/paths.d.ts +5 -0
  81. package/dist/storage/paths.d.ts.map +1 -1
  82. package/dist/storage/paths.js +13 -0
  83. package/dist/storage/paths.js.map +1 -1
  84. package/dist/storage/report.d.ts +4 -2
  85. package/dist/storage/report.d.ts.map +1 -1
  86. package/dist/storage/report.js +25 -8
  87. package/dist/storage/report.js.map +1 -1
  88. package/dist/storage/user.d.ts +2 -1
  89. package/dist/storage/user.d.ts.map +1 -1
  90. package/dist/storage/user.js +27 -10
  91. package/dist/storage/user.js.map +1 -1
  92. package/package.json +13 -6
@@ -1,7 +1,12 @@
1
1
  import { Octokit } from '@octokit/rest';
2
2
  import { extractPerFileStats } from '../shared/pr-summary.js';
3
3
  import { diagError, diagLog } from '../shared/diagnostics.js';
4
+ import { rpgWarn } from '../shared/ui.js';
4
5
  const MAX_DIFF_LINES = 500;
6
+ const SEARCH_PAGE_SIZE = 100;
7
+ const SEARCH_MAX_RESULTS = 1000;
8
+ const MIN_SPLIT_RANGE_MS = 60 * 1000;
9
+ const DEFAULT_RANGE_START = '2008-01-01T00:00:00.000Z';
5
10
  /**
6
11
  * Extract per-file stats from the raw diff BEFORE trimming so that line counts
7
12
  * are accurate regardless of trimDiff's budget. Returns both the trimmed diff
@@ -24,7 +29,6 @@ export function trimDiff(diff) {
24
29
  const allLines = diff.split('\n');
25
30
  if (allLines.length <= MAX_DIFF_LINES)
26
31
  return diff;
27
- // Split into per-file sections.
28
32
  const sections = [];
29
33
  let current = [];
30
34
  for (const line of allLines) {
@@ -36,8 +40,6 @@ export function trimDiff(diff) {
36
40
  }
37
41
  if (current.length > 0)
38
42
  sections.push(current);
39
- // Separate header lines (diff --git, ---, +++, @@, index, mode, rename, etc.)
40
- // from content lines (+/-/context) in each section.
41
43
  const parsed = sections.map((section) => {
42
44
  const headers = [];
43
45
  const content = [];
@@ -63,11 +65,9 @@ export function trimDiff(diff) {
63
65
  }
64
66
  return { headers, content };
65
67
  });
66
- const totalHeaderLines = parsed.reduce((s, p) => s + p.headers.length, 0);
68
+ const totalHeaderLines = parsed.reduce((sum, section) => sum + section.headers.length, 0);
67
69
  const contentBudget = Math.max(0, MAX_DIFF_LINES - totalHeaderLines);
68
- const totalContent = parsed.reduce((s, p) => s + p.content.length, 0);
69
- // Equal per-section budget. This prevents a single huge file (like
70
- // pnpm-lock.yaml) from consuming the entire budget and starving real files.
70
+ const totalContent = parsed.reduce((sum, section) => sum + section.content.length, 0);
71
71
  const perSection = parsed.length > 0 ? Math.max(6, Math.floor(contentBudget / parsed.length)) : 0;
72
72
  const result = [];
73
73
  for (const { headers, content } of parsed) {
@@ -91,57 +91,24 @@ export async function fetchUserPRs(username, token, options = {}) {
91
91
  tokenLength: token.length,
92
92
  });
93
93
  const octokit = new Octokit({ auth: token });
94
- const prs = [];
95
- if (options.org && options.repo) {
96
- diagLog('Fetching PRs from a single repository', {
97
- owner: options.org,
98
- repo: options.repo,
99
- since: options.since,
100
- });
101
- const items = await fetchPRsFromRepo(octokit, username, options.org, options.repo, options.since);
102
- prs.push(...items);
103
- }
104
- else if (options.org) {
105
- // Use GitHub Search API with org: qualifier instead of enumerating all repos.
106
- // This is dramatically faster for large orgs (1 search vs N repo listing calls).
107
- // Note: GitHub Search API returns at most 1000 results per query.
108
- const searchQuery = `type:pr author:${username} is:merged org:${options.org}${options.since ? ` merged:>=${options.since}` : ''}`;
109
- diagLog('Searching for PRs in organization', {
110
- org: options.org,
111
- searchQuery,
112
- });
113
- const results = await octokit.paginate(octokit.search.issuesAndPullRequests, {
114
- q: searchQuery,
115
- per_page: 100,
116
- sort: 'created',
117
- order: 'desc',
118
- });
119
- diagLog('Received organization search results', { resultCount: results.length });
120
- if (results.length >= 1000) {
121
- diagLog('WARNING: Search results may be truncated at 1000. Consider using --repository to narrow scope or providing a --since date.');
122
- }
123
- const items = await hydrateSearchResults(octokit, results);
124
- prs.push(...items);
125
- }
126
- else {
127
- const searchQuery = `type:pr author:${username} is:merged${options.since ? ` merged:>=${options.since}` : ''}`;
128
- diagLog('Fetching PRs through GitHub search', {
129
- username,
130
- searchQuery,
131
- });
132
- const results = await octokit.paginate(octokit.search.issuesAndPullRequests, {
133
- q: searchQuery,
134
- per_page: 100,
135
- sort: 'created',
136
- order: 'desc',
137
- });
138
- diagLog('Received GitHub search results', { resultCount: results.length });
139
- if (results.length >= 1000) {
140
- diagLog('WARNING: Search results may be truncated at 1000.');
141
- }
142
- const items = await hydrateSearchResults(octokit, results);
143
- prs.push(...items);
94
+ const scopeFilter = options.org && options.repo
95
+ ? `repo:${options.org}/${options.repo}`
96
+ : options.org
97
+ ? `org:${options.org}`
98
+ : '';
99
+ const baseQuery = `type:pr author:${username} is:merged${scopeFilter ? ` ${scopeFilter}` : ''}`;
100
+ const warnings = new Set();
101
+ const searchStartedAt = Date.now();
102
+ const results = await searchPullRequests(octokit, baseQuery, options.since, warnings);
103
+ diagLog('Received search results', {
104
+ resultCount: results.length,
105
+ durationMs: Date.now() - searchStartedAt,
106
+ });
107
+ for (const warning of warnings) {
108
+ diagLog('GitHub search warning', { warning });
109
+ rpgWarn(warning);
144
110
  }
111
+ const prs = await hydrateSearchResults(octokit, results);
145
112
  diagLog('Completed GitHub PR fetch', {
146
113
  username,
147
114
  totalPRs: prs.length,
@@ -149,65 +116,174 @@ export async function fetchUserPRs(username, token, options = {}) {
149
116
  });
150
117
  return prs;
151
118
  }
119
+ function buildSearchQuery(baseQuery, since, window) {
120
+ if (window) {
121
+ return `${baseQuery} merged:${window.from}..${window.to}`;
122
+ }
123
+ if (since) {
124
+ return `${baseQuery} merged:>=${since}`;
125
+ }
126
+ return baseQuery;
127
+ }
128
+ async function requestSearchPage(octokit, query, page) {
129
+ diagLog('Requesting GitHub search page', { query, page });
130
+ const response = await octokit.search.issuesAndPullRequests({
131
+ q: query,
132
+ per_page: SEARCH_PAGE_SIZE,
133
+ page,
134
+ sort: 'created',
135
+ order: 'desc',
136
+ });
137
+ return response.data;
138
+ }
139
+ async function fetchAllPagesForQuery(octokit, query, firstPage) {
140
+ const pageCount = Math.min(Math.ceil(Math.min(firstPage.total_count, SEARCH_MAX_RESULTS) / SEARCH_PAGE_SIZE), 10);
141
+ const items = [...firstPage.items];
142
+ for (let page = 2; page <= pageCount; page++) {
143
+ const nextPage = await requestSearchPage(octokit, query, page);
144
+ items.push(...nextPage.items);
145
+ }
146
+ return items;
147
+ }
148
+ async function searchPullRequests(octokit, baseQuery, since, warnings) {
149
+ const initialQuery = buildSearchQuery(baseQuery, since);
150
+ diagLog('Searching for PRs via GitHub Search API', {
151
+ baseQuery,
152
+ initialQuery,
153
+ scope: baseQuery.includes(' org:') ? 'org' : baseQuery.includes(' repo:') ? 'repo' : 'global',
154
+ });
155
+ const firstPage = await requestSearchPage(octokit, initialQuery, 1);
156
+ if (firstPage.incomplete_results) {
157
+ warnings.add('GitHub Search reported incomplete results. Quackscore is narrowing the date range to avoid missing PRs.');
158
+ }
159
+ if (firstPage.total_count <= SEARCH_MAX_RESULTS && !firstPage.incomplete_results) {
160
+ return dedupeSearchItems(await fetchAllPagesForQuery(octokit, initialQuery, firstPage));
161
+ }
162
+ warnings.add('GitHub Search hit a large result window. Quackscore is splitting the merged-date range to avoid scanning repositories client-side.');
163
+ const segmented = await searchPullRequestsByWindow(octokit, baseQuery, {
164
+ from: since ?? DEFAULT_RANGE_START,
165
+ to: new Date().toISOString(),
166
+ }, warnings);
167
+ return dedupeSearchItems(segmented);
168
+ }
169
+ async function searchPullRequestsByWindow(octokit, baseQuery, window, warnings) {
170
+ const query = buildSearchQuery(baseQuery, undefined, window);
171
+ const firstPage = await requestSearchPage(octokit, query, 1);
172
+ const windowStart = Date.parse(window.from);
173
+ const windowEnd = Date.parse(window.to);
174
+ if (!firstPage.incomplete_results && firstPage.total_count <= SEARCH_MAX_RESULTS) {
175
+ return fetchAllPagesForQuery(octokit, query, firstPage);
176
+ }
177
+ if (firstPage.incomplete_results) {
178
+ warnings.add(`GitHub Search reported incomplete results for merged window ${window.from} .. ${window.to}.`);
179
+ }
180
+ if (Number.isNaN(windowStart) ||
181
+ Number.isNaN(windowEnd) ||
182
+ windowEnd - windowStart <= MIN_SPLIT_RANGE_MS) {
183
+ warnings.add(`GitHub Search could not be narrowed below ${SEARCH_MAX_RESULTS} results for merged window ${window.from} .. ${window.to}; some results may be truncated.`);
184
+ return fetchAllPagesForQuery(octokit, query, firstPage);
185
+ }
186
+ const mid = new Date(windowStart + Math.floor((windowEnd - windowStart) / 2)).toISOString();
187
+ const [left, right] = await Promise.all([
188
+ searchPullRequestsByWindow(octokit, baseQuery, { from: window.from, to: mid }, warnings),
189
+ searchPullRequestsByWindow(octokit, baseQuery, { from: mid, to: window.to }, warnings),
190
+ ]);
191
+ return dedupeSearchItems([...left, ...right]);
192
+ }
193
+ function dedupeSearchItems(items) {
194
+ const deduped = new Map();
195
+ for (const item of items) {
196
+ const key = `${item.repository_url}#${item.number}`;
197
+ if (!deduped.has(key)) {
198
+ deduped.set(key, item);
199
+ }
200
+ }
201
+ return [...deduped.values()];
202
+ }
203
+ function isUsableDiff(rawDiff) {
204
+ const trimmed = rawDiff.trim();
205
+ return trimmed.length > 0 && trimmed.includes('diff --git ');
206
+ }
152
207
  async function hydrateSearchResults(octokit, results) {
153
208
  const prs = [];
154
209
  for (const item of results) {
155
- if (!item.pull_request?.merged_at)
210
+ if (!item.pull_request)
156
211
  continue;
157
212
  const urlParts = item.repository_url.split('/');
158
213
  const repoOwner = urlParts[urlParts.length - 2];
159
214
  const repoName = urlParts[urlParts.length - 1];
215
+ const repo = `${repoOwner}/${repoName}`;
216
+ const mergedAt = item.closed_at ?? undefined;
160
217
  diagLog('Hydrating PR from search result', {
161
218
  repoOwner,
162
219
  repoName,
163
220
  prNumber: item.number,
221
+ mergedAt,
164
222
  });
165
223
  try {
166
- const { data: pr } = await octokit.pulls.get({
224
+ const { data: diffData } = await octokit.request('GET /repos/{owner}/{repo}/pulls/{pull_number}', {
167
225
  owner: repoOwner,
168
226
  repo: repoName,
169
227
  pull_number: item.number,
228
+ mediaType: { format: 'diff' },
170
229
  });
171
- let diff;
172
- let rawFileStats;
173
- try {
174
- const { data: diffData } = await octokit.request('GET /repos/{owner}/{repo}/pulls/{pull_number}', {
175
- owner: repoOwner,
176
- repo: repoName,
177
- pull_number: item.number,
178
- mediaType: { format: 'diff' },
179
- });
180
- const prepared = prepareDiff(String(diffData));
181
- diff = prepared.trimmed;
182
- rawFileStats = prepared.rawFileStats;
183
- diagLog('Fetched diff for search result PR', {
184
- repoOwner,
185
- repoName,
186
- prNumber: item.number,
187
- diffLength: diff.length,
230
+ const rawDiff = String(diffData);
231
+ if (isUsableDiff(rawDiff)) {
232
+ const prepared = prepareDiff(rawDiff);
233
+ const additions = prepared.rawFileStats.reduce((sum, stat) => sum + stat.additions, 0);
234
+ const deletions = prepared.rawFileStats.reduce((sum, stat) => sum + stat.deletions, 0);
235
+ prs.push({
236
+ id: item.id,
237
+ number: item.number,
238
+ title: item.title,
239
+ url: item.html_url,
240
+ repo,
241
+ mergedAt: mergedAt ?? new Date().toISOString(),
242
+ additions,
243
+ deletions,
244
+ diff: prepared.trimmed,
245
+ rawFileStats: prepared.rawFileStats,
188
246
  });
189
- }
190
- catch {
191
- diagLog('Diff unavailable for search result PR', {
192
- repoOwner,
193
- repoName,
247
+ diagLog('Hydrated PR from diff response', {
248
+ repo,
194
249
  prNumber: item.number,
250
+ additions,
251
+ deletions,
252
+ rawFileCount: prepared.rawFileStats.length,
195
253
  });
254
+ continue;
196
255
  }
256
+ diagLog('Diff response unusable, falling back to pulls.get', {
257
+ repo,
258
+ prNumber: item.number,
259
+ diffLength: rawDiff.length,
260
+ });
261
+ }
262
+ catch (err) {
263
+ diagLog('Diff unavailable for search result PR; falling back to pulls.get', {
264
+ repo,
265
+ prNumber: item.number,
266
+ message: err instanceof Error ? err.message : String(err),
267
+ });
268
+ }
269
+ try {
270
+ const { data: pr } = await octokit.pulls.get({
271
+ owner: repoOwner,
272
+ repo: repoName,
273
+ pull_number: item.number,
274
+ });
197
275
  prs.push({
198
276
  id: pr.id,
199
277
  number: pr.number,
200
278
  title: pr.title,
201
279
  url: pr.html_url,
202
- repo: `${repoOwner}/${repoName}`,
203
- mergedAt: pr.merged_at,
280
+ repo,
281
+ mergedAt: pr.merged_at ?? mergedAt ?? new Date().toISOString(),
204
282
  additions: pr.additions,
205
283
  deletions: pr.deletions,
206
- diff,
207
- rawFileStats,
208
284
  });
209
- diagLog('Added PR from search results', {
210
- repo: `${repoOwner}/${repoName}`,
285
+ diagLog('Hydrated PR via pulls.get fallback', {
286
+ repo,
211
287
  prNumber: pr.number,
212
288
  additions: pr.additions,
213
289
  deletions: pr.deletions,
@@ -223,103 +299,4 @@ async function hydrateSearchResults(octokit, results) {
223
299
  }
224
300
  return prs;
225
301
  }
226
- async function fetchPRsFromRepo(octokit, username, owner, repo, since) {
227
- const prs = [];
228
- diagLog('Listing closed PRs for repository', {
229
- owner,
230
- repo,
231
- username,
232
- since,
233
- });
234
- const items = await octokit.paginate(octokit.pulls.list, {
235
- owner,
236
- repo,
237
- state: 'closed',
238
- per_page: 100,
239
- });
240
- diagLog('Received repository PR list', {
241
- owner,
242
- repo,
243
- totalClosedPRs: items.length,
244
- });
245
- for (const pr of items) {
246
- if (!pr.merged_at) {
247
- diagLog('Skipping PR because it was not merged', { owner, repo, prNumber: pr.number });
248
- continue;
249
- }
250
- if (!pr.user || pr.user.login !== username) {
251
- diagLog('Skipping PR because author does not match requested user', {
252
- owner,
253
- repo,
254
- prNumber: pr.number,
255
- author: pr.user?.login,
256
- expectedAuthor: username,
257
- });
258
- continue;
259
- }
260
- if (since && pr.merged_at <= since) {
261
- diagLog('Skipping PR because it predates the requested since filter', {
262
- owner,
263
- repo,
264
- prNumber: pr.number,
265
- mergedAt: pr.merged_at,
266
- since,
267
- });
268
- continue;
269
- }
270
- let diff;
271
- let rawFileStats;
272
- try {
273
- const { data: diffData } = await octokit.request('GET /repos/{owner}/{repo}/pulls/{pull_number}', {
274
- owner,
275
- repo,
276
- pull_number: pr.number,
277
- mediaType: { format: 'diff' },
278
- });
279
- const prepared = prepareDiff(String(diffData));
280
- diff = prepared.trimmed;
281
- rawFileStats = prepared.rawFileStats;
282
- diagLog('Fetched diff for repository PR', {
283
- owner,
284
- repo,
285
- prNumber: pr.number,
286
- diffLength: diff.length,
287
- });
288
- }
289
- catch (err) {
290
- // diff unavailable
291
- diagError('Diff unavailable for repository PR', err, {
292
- owner,
293
- repo,
294
- prNumber: pr.number,
295
- });
296
- }
297
- const { data: detail } = await octokit.pulls.get({ owner, repo, pull_number: pr.number });
298
- diagLog('Fetched PR detail for repository PR', {
299
- owner,
300
- repo,
301
- prNumber: pr.number,
302
- additions: detail.additions,
303
- deletions: detail.deletions,
304
- });
305
- prs.push({
306
- id: pr.id,
307
- number: pr.number,
308
- title: pr.title,
309
- url: pr.html_url,
310
- repo: `${owner}/${repo}`,
311
- mergedAt: pr.merged_at,
312
- additions: detail.additions,
313
- deletions: detail.deletions,
314
- diff,
315
- rawFileStats,
316
- });
317
- }
318
- diagLog('Completed repository PR fetch', {
319
- owner,
320
- repo,
321
- matchedPRs: prs.length,
322
- });
323
- return prs;
324
- }
325
302
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/github/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/github/client.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -11,6 +11,9 @@ import { runRemove } from './commands/remove.js';
11
11
  import { runCreateBatch } from './commands/create-batch.js';
12
12
  import { configureDiagnostics } from './shared/diagnostics.js';
13
13
  const program = new Command();
14
+ function collectRepeatedValues(value, previous = []) {
15
+ return [...previous, value];
16
+ }
14
17
  function withDiagnosticsOption(command) {
15
18
  return command.option('--diagnostics', 'Enable detailed diagnostic logging');
16
19
  }
@@ -39,6 +42,7 @@ withDiagnosticsOption(program
39
42
  .option('--organisation <org>', 'Limit to a specific organisation')
40
43
  .option('--repository <repo>', 'Limit to a specific repository (requires --organisation)')
41
44
  .option('--weeks <number>', 'Limit to PRs merged in the last N weeks', parseInt)
45
+ .option('--team <name>', 'Assign the generated profile to a team (repeatable)', collectRepeatedValues)
42
46
  .option('--github-token <token>', 'GitHub personal access token (overrides QUACKSCORE_GH_TOKEN)')
43
47
  .option('--llm-api-key <key>', 'LLM API key (overrides QUACKSCORE_LLM_API_KEY)')
44
48
  .action(async (username, options) => {
@@ -48,8 +52,9 @@ withDiagnosticsOption(program
48
52
  organisation: options.organisation,
49
53
  repository: options.repository,
50
54
  weeks: options.weeks,
55
+ teams: options.team,
51
56
  });
52
- await runCreate(username, { org: options.organisation, repository: options.repository, weeks: options.weeks, githubToken: options.githubToken, llmApiKey: options.llmApiKey });
57
+ await runCreate(username, { org: options.organisation, repository: options.repository, weeks: options.weeks, teams: options.team, githubToken: options.githubToken, llmApiKey: options.llmApiKey });
53
58
  }));
54
59
  withDiagnosticsOption(program
55
60
  .command('create-batch <github_users...>')
@@ -57,6 +62,7 @@ withDiagnosticsOption(program
57
62
  .option('--organisation <org>', 'Limit to a specific organisation')
58
63
  .option('--repository <repo>', 'Limit to a specific repository (requires --organisation)')
59
64
  .option('--weeks <number>', 'Limit to PRs merged in the last N weeks', parseInt)
65
+ .option('--team <name>', 'Assign each generated profile to a team (repeatable)', collectRepeatedValues)
60
66
  .option('--github-token <token>', 'GitHub personal access token (overrides QUACKSCORE_GH_TOKEN)')
61
67
  .option('--llm-api-key <key>', 'LLM API key (overrides QUACKSCORE_LLM_API_KEY)')
62
68
  .action(async (usernames, options) => {
@@ -66,8 +72,9 @@ withDiagnosticsOption(program
66
72
  organisation: options.organisation,
67
73
  repository: options.repository,
68
74
  weeks: options.weeks,
75
+ teams: options.team,
69
76
  });
70
- await runCreateBatch(usernames, { org: options.organisation, repository: options.repository, weeks: options.weeks, githubToken: options.githubToken, llmApiKey: options.llmApiKey });
77
+ await runCreateBatch(usernames, { org: options.organisation, repository: options.repository, weeks: options.weeks, teams: options.team, githubToken: options.githubToken, llmApiKey: options.llmApiKey });
71
78
  }));
72
79
  withDiagnosticsOption(program
73
80
  .command('update <github_user>')
@@ -75,6 +82,7 @@ withDiagnosticsOption(program
75
82
  .option('--organisation <org>', 'Limit to a specific organisation')
76
83
  .option('--repository <repo>', 'Limit to a specific repository (requires --organisation)')
77
84
  .option('--weeks <number>', 'Limit to PRs merged in the last N weeks', parseInt)
85
+ .option('--team <name>', 'Set the profile team tags for this scope (repeatable)', collectRepeatedValues)
78
86
  .option('--github-token <token>', 'GitHub personal access token (overrides QUACKSCORE_GH_TOKEN)')
79
87
  .option('--llm-api-key <key>', 'LLM API key (overrides QUACKSCORE_LLM_API_KEY)')
80
88
  .action(async (username, options) => {
@@ -84,19 +92,24 @@ withDiagnosticsOption(program
84
92
  organisation: options.organisation,
85
93
  repository: options.repository,
86
94
  weeks: options.weeks,
95
+ teams: options.team,
87
96
  });
88
- await runUpdate(username, { org: options.organisation, repository: options.repository, weeks: options.weeks, githubToken: options.githubToken, llmApiKey: options.llmApiKey });
97
+ await runUpdate(username, { org: options.organisation, repository: options.repository, weeks: options.weeks, teams: options.team, githubToken: options.githubToken, llmApiKey: options.llmApiKey });
89
98
  }));
90
99
  withDiagnosticsOption(program
91
100
  .command('update-summary <github_user>')
92
101
  .description('Regenerate the profile summary without re-analyzing PRs')
102
+ .option('--organisation <org>', 'Target a specific organisation-scoped profile')
103
+ .option('--repository <repo>', 'Target a specific repository-scoped profile (requires --organisation)')
93
104
  .option('--llm-api-key <key>', 'LLM API key (overrides QUACKSCORE_LLM_API_KEY)')
94
105
  .action(async (username, options) => {
95
106
  configureDiagnostics(Boolean(options.diagnostics), {
96
107
  command: 'update-summary',
97
108
  username,
109
+ organisation: options.organisation,
110
+ repository: options.repository,
98
111
  });
99
- await runUpdateSummary(username, { llmApiKey: options.llmApiKey });
112
+ await runUpdateSummary(username, { org: options.organisation, repository: options.repository, llmApiKey: options.llmApiKey });
100
113
  }));
101
114
  withDiagnosticsOption(program
102
115
  .command('mock-report')
@@ -110,31 +123,43 @@ withDiagnosticsOption(program
110
123
  withDiagnosticsOption(program
111
124
  .command('show <github_user>')
112
125
  .description('Open an existing HTML report')
126
+ .option('--organisation <org>', 'Target a specific organisation-scoped profile')
127
+ .option('--repository <repo>', 'Target a specific repository-scoped profile (requires --organisation)')
113
128
  .action(async (username, options) => {
114
129
  configureDiagnostics(Boolean(options.diagnostics), {
115
130
  command: 'show',
116
131
  username,
132
+ organisation: options.organisation,
133
+ repository: options.repository,
117
134
  });
118
- await runShow(username);
135
+ await runShow(username, { org: options.organisation, repository: options.repository });
119
136
  }));
120
137
  withDiagnosticsOption(program
121
138
  .command('leaderboard')
122
139
  .description('Open a leaderboard built from all generated local reports')
140
+ .option('--team <name>', 'Filter profile view to a single team')
141
+ .option('--group-by <mode>', 'Display profile or team rankings', 'profile')
123
142
  .action(async (options) => {
124
143
  configureDiagnostics(Boolean(options.diagnostics), {
125
144
  command: 'leaderboard',
145
+ team: options.team,
146
+ groupBy: options.groupBy,
126
147
  });
127
- await runLeaderboard();
148
+ await runLeaderboard({ team: options.team, groupBy: options.groupBy });
128
149
  }));
129
150
  withDiagnosticsOption(program
130
151
  .command('remove <github_user>')
131
152
  .description('Remove all locally stored files for a user')
153
+ .option('--organisation <org>', 'Target a specific organisation-scoped profile')
154
+ .option('--repository <repo>', 'Target a specific repository-scoped profile (requires --organisation)')
132
155
  .action(async (username, options) => {
133
156
  configureDiagnostics(Boolean(options.diagnostics), {
134
157
  command: 'remove',
135
158
  username,
159
+ organisation: options.organisation,
160
+ repository: options.repository,
136
161
  });
137
- await runRemove(username);
162
+ await runRemove(username, { org: options.organisation, repository: options.repository });
138
163
  }));
139
164
  program.parseAsync(process.argv).catch((err) => {
140
165
  console.error('💀', err.message);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { LanguageModelV1 } from 'ai';
1
+ import type { LanguageModel } from 'ai';
2
2
  import { type PRData, type LLMPRAnalysis } from '../shared/types.js';
3
3
  export { getLowValuePRSummaryReason } from '../shared/pr-summary.js';
4
4
  export declare function filterAutogeneratedFiles(pr: PRData, extraFilesToRemove?: ReadonlySet<string>): {
@@ -9,6 +9,6 @@ export declare function filterAutogeneratedFiles(pr: PRData, extraFilesToRemove?
9
9
  };
10
10
  export declare function getHeuristicPRAnalysis(pr: PRData): LLMPRAnalysis | null;
11
11
  export declare function parsePRAnalysisResponse(text: string): LLMPRAnalysis;
12
- export declare function getLLMAutogeneratedFiles(files: string[], model: LanguageModelV1): Promise<string[]>;
13
- export declare function analyzePR(pr: PRData, model: LanguageModelV1): Promise<LLMPRAnalysis>;
12
+ export declare function getLLMAutogeneratedFiles(files: string[], model: LanguageModel): Promise<string[]>;
13
+ export declare function analyzePR(pr: PRData, model: LanguageModel): Promise<LLMPRAnalysis>;
14
14
  //# sourceMappingURL=analyzer.d.ts.map