@oss-autopilot/core 1.2.0 → 1.4.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.
@@ -39,12 +39,19 @@ export const commands = [
39
39
  .command('daily')
40
40
  .description('Run daily check on all tracked PRs')
41
41
  .option('--json', 'Output as JSON')
42
+ .option('--compact', 'Reduce JSON payload by omitting summary, repoGroups, and full failure details')
42
43
  .action(async (options) => {
43
44
  try {
44
45
  if (options.json) {
45
46
  const { runDaily } = await import('./commands/daily.js');
46
47
  const data = await runDaily();
47
- outputJson(data);
48
+ if (options.compact) {
49
+ const { toCompactDailyOutput } = await import('./formatters/json.js');
50
+ outputJson(toCompactDailyOutput(data));
51
+ }
52
+ else {
53
+ outputJson(data);
54
+ }
48
55
  }
49
56
  else {
50
57
  const { runDailyForDisplay, printDigest } = await import('./commands/daily.js');
@@ -193,6 +200,54 @@ export const commands = [
193
200
  });
194
201
  },
195
202
  },
203
+ // ── Vet List ──────────────────────────────────────────────────────────
204
+ {
205
+ name: 'vet-list',
206
+ register(program) {
207
+ program
208
+ .command('vet-list')
209
+ .description('Re-vet all available issues in your curated issue list (#764)')
210
+ .option('--path <file>', 'Path to issue list file (auto-detected if not specified)')
211
+ .option('--concurrency <n>', 'Max parallel vet operations (default: 5)')
212
+ .option('--json', 'Output as JSON')
213
+ .action(async (options) => {
214
+ try {
215
+ const { runVetList } = await import('./commands/vet-list.js');
216
+ const concurrency = options.concurrency ? parseInt(options.concurrency, 10) : undefined;
217
+ if (concurrency !== undefined && (!Number.isFinite(concurrency) || concurrency < 1)) {
218
+ throw new Error(`Invalid concurrency "${options.concurrency}". Must be a positive integer.`);
219
+ }
220
+ const data = await runVetList({ issueListPath: options.path, concurrency });
221
+ if (options.json) {
222
+ outputJson(data);
223
+ }
224
+ else {
225
+ console.log(`\nRe-vetted ${data.summary.total} issues:\n`);
226
+ console.log(` Still available: ${data.summary.stillAvailable}`);
227
+ console.log(` Claimed: ${data.summary.claimed}`);
228
+ console.log(` Closed: ${data.summary.closed}`);
229
+ console.log(` Has PR: ${data.summary.hasPR}`);
230
+ console.log(` Errors: ${data.summary.errors}`);
231
+ console.log('');
232
+ for (const result of data.results) {
233
+ const status = result.listStatus === 'still_available'
234
+ ? '\u2705'
235
+ : result.listStatus === 'error'
236
+ ? '\u274c'
237
+ : '\u26a0\ufe0f';
238
+ console.log(`${status} [${result.listStatus}] ${result.issue.repo}#${result.issue.number}: ${result.issue.title}`);
239
+ if (result.errorMessage) {
240
+ console.log(` Error: ${result.errorMessage}`);
241
+ }
242
+ }
243
+ }
244
+ }
245
+ catch (err) {
246
+ handleCommandError(err, options.json);
247
+ }
248
+ });
249
+ },
250
+ },
196
251
  // ── Track ──────────────────────────────────────────────────────────────
197
252
  {
198
253
  name: 'track',
@@ -717,12 +772,19 @@ export const commands = [
717
772
  .command('startup')
718
773
  .description('Run all pre-flight checks and daily fetch in one call')
719
774
  .option('--json', 'Output as JSON')
775
+ .option('--compact', 'Reduce JSON payload by omitting summary, repoGroups, and full failure details')
720
776
  .action(async (options) => {
721
777
  try {
722
778
  const { runStartup } = await import('./commands/startup.js');
723
779
  const data = await runStartup();
724
780
  if (options.json) {
725
- outputJson(data);
781
+ if (options.compact) {
782
+ const { toCompactStartupOutput } = await import('./formatters/json.js');
783
+ outputJson(toCompactStartupOutput(data));
784
+ }
785
+ else {
786
+ outputJson(data);
787
+ }
726
788
  }
727
789
  else {
728
790
  if (!data.setupComplete) {