@prism-d1/cli 1.5.0 → 1.7.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 (79) hide show
  1. package/dist/src/aws/check.js +1 -1
  2. package/dist/src/aws/connect.d.ts +1 -1
  3. package/dist/src/aws/connect.d.ts.map +1 -1
  4. package/dist/src/aws/connect.js.map +1 -1
  5. package/dist/src/aws/team.d.ts +39 -0
  6. package/dist/src/aws/team.d.ts.map +1 -0
  7. package/dist/src/aws/team.js +172 -0
  8. package/dist/src/aws/team.js.map +1 -0
  9. package/dist/src/commands/_top/dashboard.d.ts.map +1 -1
  10. package/dist/src/commands/_top/dashboard.js +22 -3
  11. package/dist/src/commands/_top/dashboard.js.map +1 -1
  12. package/dist/src/commands/enable/codeburn.d.ts +6 -2
  13. package/dist/src/commands/enable/codeburn.d.ts.map +1 -1
  14. package/dist/src/commands/enable/codeburn.js +126 -21
  15. package/dist/src/commands/enable/codeburn.js.map +1 -1
  16. package/dist/src/commands/team/add-developer.d.ts +17 -0
  17. package/dist/src/commands/team/add-developer.d.ts.map +1 -0
  18. package/dist/src/commands/team/add-developer.js +22 -0
  19. package/dist/src/commands/team/add-developer.js.map +1 -0
  20. package/dist/src/commands/team/info.d.ts +16 -0
  21. package/dist/src/commands/team/info.d.ts.map +1 -0
  22. package/dist/src/commands/team/info.js +30 -0
  23. package/dist/src/commands/team/info.js.map +1 -0
  24. package/dist/src/dashboard/actions.d.ts +112 -0
  25. package/dist/src/dashboard/actions.d.ts.map +1 -0
  26. package/dist/src/dashboard/actions.js +242 -0
  27. package/dist/src/dashboard/actions.js.map +1 -0
  28. package/dist/src/dashboard/aws-identity.d.ts +115 -0
  29. package/dist/src/dashboard/aws-identity.d.ts.map +1 -0
  30. package/dist/src/dashboard/aws-identity.js +240 -0
  31. package/dist/src/dashboard/aws-identity.js.map +1 -0
  32. package/dist/src/dashboard/page.d.ts +1 -1
  33. package/dist/src/dashboard/page.d.ts.map +1 -1
  34. package/dist/src/dashboard/page.js +36 -9
  35. package/dist/src/dashboard/page.js.map +1 -1
  36. package/dist/src/dashboard/payload.d.ts +7 -0
  37. package/dist/src/dashboard/payload.d.ts.map +1 -1
  38. package/dist/src/dashboard/payload.js +2 -0
  39. package/dist/src/dashboard/payload.js.map +1 -1
  40. package/dist/src/dashboard/server.d.ts +27 -6
  41. package/dist/src/dashboard/server.d.ts.map +1 -1
  42. package/dist/src/dashboard/server.js +75 -10
  43. package/dist/src/dashboard/server.js.map +1 -1
  44. package/dist/src/dashboard/setup-api.d.ts +63 -0
  45. package/dist/src/dashboard/setup-api.d.ts.map +1 -0
  46. package/dist/src/dashboard/setup-api.js +66 -0
  47. package/dist/src/dashboard/setup-api.js.map +1 -0
  48. package/dist/src/dashboard/setup-page.d.ts +16 -0
  49. package/dist/src/dashboard/setup-page.d.ts.map +1 -0
  50. package/dist/src/dashboard/setup-page.js +347 -0
  51. package/dist/src/dashboard/setup-page.js.map +1 -0
  52. package/dist/src/dashboard/setup.d.ts +11 -2
  53. package/dist/src/dashboard/setup.d.ts.map +1 -1
  54. package/dist/src/dashboard/setup.js +35 -16
  55. package/dist/src/dashboard/setup.js.map +1 -1
  56. package/dist/src/dashboard/summary.d.ts +1 -1
  57. package/dist/src/dashboard/summary.d.ts.map +1 -1
  58. package/dist/src/dashboard/summary.js +2 -1
  59. package/dist/src/dashboard/summary.js.map +1 -1
  60. package/dist/src/index.d.ts.map +1 -1
  61. package/dist/src/index.js +8 -0
  62. package/dist/src/index.js.map +1 -1
  63. package/dist/src/utils/aws.d.ts +2 -0
  64. package/dist/src/utils/aws.d.ts.map +1 -1
  65. package/dist/src/utils/aws.js +1 -1
  66. package/dist/src/utils/aws.js.map +1 -1
  67. package/dist/src/utils/exec.d.ts +1 -1
  68. package/dist/src/utils/exec.d.ts.map +1 -1
  69. package/dist/src/utils/exec.js +3 -1
  70. package/dist/src/utils/exec.js.map +1 -1
  71. package/dist/src/utils/otel-sync-schedule.d.ts +2 -0
  72. package/dist/src/utils/otel-sync-schedule.d.ts.map +1 -1
  73. package/dist/src/utils/otel-sync-schedule.js +13 -0
  74. package/dist/src/utils/otel-sync-schedule.js.map +1 -1
  75. package/dist/src/utils/sync-mode.d.ts +43 -0
  76. package/dist/src/utils/sync-mode.d.ts.map +1 -0
  77. package/dist/src/utils/sync-mode.js +84 -0
  78. package/dist/src/utils/sync-mode.js.map +1 -0
  79. package/package.json +1 -1
@@ -13,8 +13,9 @@ import { existsSync, mkdirSync, writeFileSync, readFileSync, unlinkSync } from '
13
13
  import { join } from 'node:path';
14
14
  import { run, runInteractive } from '../../utils/exec.js';
15
15
  import { withPrivateTemp } from '../../utils/tempfile.js';
16
- import { CRON_MARKER, PLIST_LABEL, SCHTASK_NAME, otelLogDir, otelLogFile, codeburnSyncConfigPath, linuxCrontabAvailable, crontabLines, darwinPlistPath, scheduleExists, schedulerName, CODEBURN_INSTALL_ARGS, ENABLE_CODEBURN_CMD, SYNC_SINCE, syncArgs, linuxCronScheduleExists, SYSTEMD_SCHEDULER_NAME, SYSTEMD_UNIT, systemdServicePath, systemdTimerExists, systemdTimerPath, systemdUserAvailable, systemdUserDir, } from '../../utils/otel-sync-schedule.js';
16
+ import { CRON_MARKER, PLIST_LABEL, SCHTASK_NAME, otelLogDir, otelLogFile, codeburnSyncConfigPath, linuxCrontabAvailable, crontabLines, darwinPlistPath, scheduleExists, schedulerName, CODEBURN_INSTALL_ARGS, ENABLE_CODEBURN_CMD, SYNC_SINCE, syncArgs, linuxCronScheduleExists, SYSTEMD_SCHEDULER_NAME, SYSTEMD_UNIT, systemdServicePath, systemdTimerExists, systemdTimerPath, systemdUserAvailable, systemdUserDir, configuredSyncUrl, } from '../../utils/otel-sync-schedule.js';
17
17
  import { runGuarded } from './security.js';
18
+ import { effectiveMode, LOCAL_MODE_HELP, MODE_SOURCE_TEXT, PLATFORM_TEAM_HELP, SETUP_DOCS, SYNC_MODE_PATH, TEAM_URL_CMD, writeSyncMode, } from '../../utils/sync-mode.js';
18
19
  // ---- Constants ----
19
20
  // Marker, label and task name are shared with the dashboard's setup check.
20
21
  const LOG_DIR = otelLogDir();
@@ -382,19 +383,8 @@ function removeSchedules(opts, d) {
382
383
  d.log('');
383
384
  return 0;
384
385
  }
385
- /** The sync endpoint codeburn has stored, or null when sync is not set up. '' when the file is unreadable. */
386
- export function configuredSyncUrl(home) {
387
- const configPath = codeburnSyncConfigPath(home);
388
- if (!existsSync(configPath))
389
- return null;
390
- try {
391
- const cfg = JSON.parse(readFileSync(configPath, 'utf8'));
392
- return String(cfg.baseUrl || cfg.endpoint || cfg.url || '');
393
- }
394
- catch {
395
- return '';
396
- }
397
- }
386
+ // Lives in utils/otel-sync-schedule.ts (shared with the dashboard and aws check); re-exported for existing importers.
387
+ export { configuredSyncUrl };
398
388
  /** True when `version` (e.g. "0.9.24") is at least MIN_CODEBURN. */
399
389
  export function codeburnVersionOk(version) {
400
390
  const parts = version.split('.').map((n) => parseInt(n, 10) || 0);
@@ -446,8 +436,10 @@ function showStatus(d) {
446
436
  d.log(` ✗ codeburn not found in PATH (run ${ENABLE_CODEBURN_CMD})`);
447
437
  }
448
438
  const url = configuredSyncUrl(d.home);
439
+ const m = effectiveMode(d.home, url);
440
+ d.log(` Sync mode: ${m.mode} (${MODE_SOURCE_TEXT[m.source]})`);
449
441
  if (url === null)
450
- d.log(` ✗ sync not configured (run ${ENABLE_CODEBURN_CMD})`);
442
+ d.log(m.mode === 'team' ? ` ✗ sync not configured (run ${TEAM_URL_CMD})` : ' - no sync endpoint (usage stays on this machine)');
451
443
  else if (url)
452
444
  d.log(` ✓ sync configured: ${url}`);
453
445
  else
@@ -484,6 +476,100 @@ function showStatus(d) {
484
476
  reportSyncStatus(codeburnPath, d);
485
477
  d.log('');
486
478
  }
479
+ const MODE_CHOICES = [
480
+ ['1', 'local', 'just me, keep it on this machine'],
481
+ ['2', 'team', "my team's PRISM (I have the collector URL from my platform team)"],
482
+ ['3', 'admin', "I'm the platform team setting up PRISM"],
483
+ ];
484
+ /**
485
+ * The sync mode for this run: a flag, else the mode already in effect (saved,
486
+ * or team for a machine with a sync endpoint), else the question on a TTY,
487
+ * else local. Returns an exit code on a bad answer.
488
+ */
489
+ async function chooseMode(opts, d, dry) {
490
+ if (opts.local)
491
+ return 'local';
492
+ if (opts.admin)
493
+ return 'admin';
494
+ if (opts.url)
495
+ return 'team';
496
+ const cur = effectiveMode(d.home);
497
+ if (cur.source !== 'default') {
498
+ d.log(` Sync mode: ${cur.mode} (${MODE_SOURCE_TEXT[cur.source]}; --local, --url or --admin changes it)`);
499
+ return cur.mode;
500
+ }
501
+ if (!d.isTTY) {
502
+ d.log(' No terminal and no --local, --url or --admin: local only.');
503
+ return 'local';
504
+ }
505
+ if (dry) {
506
+ d.log(' → would ask where your usage should go; this plan is for local only (--url or --admin plans the others)');
507
+ return 'local';
508
+ }
509
+ d.log(' Where should your usage go?');
510
+ for (const [n, , text] of MODE_CHOICES)
511
+ d.log(` ${n}) ${text}`);
512
+ const answer = (await d.ask(' Choose 1, 2 or 3 [1]: ')).trim() || '1';
513
+ const picked = MODE_CHOICES.find(([n]) => n === answer);
514
+ if (!picked) {
515
+ d.error(`Error: "${answer}" is not 1, 2 or 3. Or pass --local, --url <collector URL> or --admin.`);
516
+ return 1;
517
+ }
518
+ return picked[1];
519
+ }
520
+ function saveMode(mode, d, dry) {
521
+ if (dry) {
522
+ d.log(` → would save sync mode ${mode} in ${SYNC_MODE_PATH}`);
523
+ return;
524
+ }
525
+ writeSyncMode(d.home, mode);
526
+ d.log(` ✓ Sync mode ${mode} saved in ${SYNC_MODE_PATH}`);
527
+ }
528
+ /** Every installed sync schedule's name; an unreadable crontab is skipped (it cannot be told). */
529
+ function installedSchedules(d) {
530
+ const all = d.linux ? [nativeSchedule(d), systemdSchedule(d)] : [nativeSchedule(d)];
531
+ return all.filter((s) => probeSchedule(s) === true).map((s) => s.name);
532
+ }
533
+ /** Local only: codeburn keeps working here; no endpoint is set up and no schedule installed. */
534
+ async function localOnly(opts, d, dry) {
535
+ // Removal first: taking the schedule off never needs codeburn installed.
536
+ if (opts.remove) {
537
+ const code = removeSchedules(opts, d);
538
+ if (code)
539
+ return code;
540
+ }
541
+ const ensured = await ensureCodeburn(opts, d);
542
+ if (typeof ensured === 'number')
543
+ return ensured;
544
+ saveMode('local', d, dry);
545
+ const url = configuredSyncUrl(d.home);
546
+ const left = dry && opts.remove ? [] : installedSchedules(d);
547
+ d.log('');
548
+ if (left.length) {
549
+ d.log(` ⚠ Sync mode is local, but the ${left.join(' and ')} schedule is still installed and still pushes usage.`);
550
+ d.log(` Remove it: ${ENABLE_CODEBURN_CMD} --local --remove`);
551
+ }
552
+ else {
553
+ d.log(' ✅ Local only: codeburn usage stays on this machine. No sync endpoint is set up and no schedule is installed.');
554
+ }
555
+ if (url !== null)
556
+ d.log(` Left in place: codeburn's sync config${url ? ` for ${url}` : ''} (${codeburnSyncConfigPath(d.home)}). Nothing pushes to it without a schedule.`);
557
+ d.log(`\n ${LOCAL_MODE_HELP.text}`);
558
+ d.log(` Setup instructions: ${SETUP_DOCS.telemetryAccount}\n`);
559
+ return 0;
560
+ }
561
+ /** Admin: the platform-team steps and helper commands. No AWS call is made. */
562
+ function platformTeam(d, dry) {
563
+ d.log(' Platform team setup (this prints steps only; no AWS calls are made):\n');
564
+ PLATFORM_TEAM_HELP.steps.forEach((step, i) => d.log(` ${i + 1}. ${step}`));
565
+ d.log('\n Helper commands:');
566
+ d.log(' prism-cli team info read-only: prints OtelCollectorUrl and OtelUserPoolId');
567
+ d.log(' prism-cli team add-developer <email> creates the developer\'s telemetry account (asks first; --dry-run shows the plan)');
568
+ d.log(`\n Platform team guide: ${SETUP_DOCS.platformTeamGuide}\n`);
569
+ saveMode('admin', d, dry);
570
+ d.log(` To sync your own usage as well, run ${TEAM_URL_CMD}.\n`);
571
+ return 0;
572
+ }
487
573
  /**
488
574
  * Step 1: codeburn on PATH, installing it after a confirmation when missing.
489
575
  * Returns its path, `null` on a dry run without it, or an exit code on refusal.
@@ -540,7 +626,12 @@ export async function enableCodeburn(opts, d) {
540
626
  showStatus(d);
541
627
  return 0;
542
628
  }
543
- if (opts.remove)
629
+ const modes = [opts.local && '--local', opts.url && '--url', opts.admin && '--admin'].filter(Boolean);
630
+ if (modes.length > 1) {
631
+ d.error(`Error: ${modes.join(' and ')} choose different sync modes; pass one of them.`);
632
+ return 1;
633
+ }
634
+ if (opts.remove && !opts.local)
544
635
  return removeSchedules(opts, d);
545
636
  const dry = !!opts.dryRun;
546
637
  const intervalHours = opts.interval ? parseInt(opts.interval, 10) : 12;
@@ -549,6 +640,13 @@ export async function enableCodeburn(opts, d) {
549
640
  return 1;
550
641
  }
551
642
  d.log(dry ? '\n🔄 enable codeburn — dry run, nothing is changed\n' : '\n🔄 enable codeburn\n');
643
+ const mode = await chooseMode(opts, d, dry);
644
+ if (typeof mode === 'number')
645
+ return mode;
646
+ if (mode === 'admin')
647
+ return platformTeam(d, dry);
648
+ if (mode === 'local')
649
+ return localOnly(opts, d, dry);
552
650
  // 1. codeburn installed, and new enough for --attribution
553
651
  const ensured = await ensureCodeburn(opts, d);
554
652
  if (typeof ensured === 'number')
@@ -574,9 +672,13 @@ export async function enableCodeburn(opts, d) {
574
672
  d.log(' → would ask for the OTEL collector URL (pass --url <OtelCollectorUrl> to skip)');
575
673
  }
576
674
  else {
577
- otelUrl = await d.ask(' OTEL collector URL (from CDK deploy output OtelCollectorUrl): ');
675
+ if (!d.isTTY) {
676
+ d.error(`Error: the collector URL is required. Ask your platform team for it, then run ${TEAM_URL_CMD}.`);
677
+ return 1;
678
+ }
679
+ otelUrl = await d.ask(' Collector URL (from your platform team; the OtelCollectorUrl stack output): ');
578
680
  if (!otelUrl) {
579
- d.error('Error: OTEL collector URL is required. Pass --url <OtelCollectorUrl>.');
681
+ d.error(`Error: the collector URL is required. Ask your platform team for it, then run ${TEAM_URL_CMD}.`);
580
682
  return 1;
581
683
  }
582
684
  }
@@ -682,6 +784,7 @@ export async function enableCodeburn(opts, d) {
682
784
  }
683
785
  }
684
786
  // 6. What codeburn itself reports.
787
+ saveMode('team', d, dry);
685
788
  if (dry) {
686
789
  d.log(' → would run: codeburn sync status');
687
790
  d.log('\n Dry run complete. Re-run without --dry-run to apply.\n');
@@ -703,12 +806,14 @@ export async function enableCodeburn(opts, d) {
703
806
  return 0;
704
807
  }
705
808
  export const CODEBURN_OPTIONS = [
706
- { flags: '--url <url>', description: 'OTEL collector URL (from CDK deploy output OtelCollectorUrl; default: the URL codeburn already syncs to)' },
809
+ { flags: '--local', description: 'Sync mode local (the default): codeburn usage stays on this machine; no endpoint, no schedule. Leaves an existing endpoint and schedule in place unless --remove' },
810
+ { flags: '--url <url>', description: "Sync mode team: your team's collector URL (the OtelCollectorUrl stack output, from your platform team; default: the URL codeburn already syncs to)" },
811
+ { flags: '--admin', description: 'Sync mode admin: print the platform-team setup steps and the prism-cli team helper commands (no AWS calls)' },
707
812
  { flags: '--interval <hours>', description: 'Sync interval in hours (default: 12)' },
708
813
  { flags: '--yes', description: `Install codeburn (${INSTALL_CMD}), reconfigure a different endpoint, and accept an offered systemd user timer without a prompt` },
709
814
  { flags: '--dry-run', description: 'Print the plan with the exact commands; change nothing' },
710
815
  { flags: '--status', description: 'Show codeburn, sync and schedule status' },
711
- { flags: '--remove', description: 'Remove the sync schedule (both kinds on Linux, unless --schedule picks one)' },
816
+ { flags: '--remove', description: 'Remove the sync schedule (both kinds on Linux, unless --schedule picks one); with --local, switch to local and remove it' },
712
817
  { flags: '--schedule <kind>', description: 'Linux: systemd (a systemd user timer) or cron (your crontab). Default: cron; when the crontab cannot be read, a systemd user timer is offered' },
713
818
  ];
714
819
  /** The one entry point for `enable codeburn` and its `bootstrapper setup-otel-sync` alias. */
@@ -716,7 +821,7 @@ export async function runEnableCodeburn(opts, hooks = {}) {
716
821
  await runGuarded(() => enableCodeburn(opts, (hooks.deps ?? defaultDeps)()), hooks);
717
822
  }
718
823
  export default {
719
- description: 'Install codeburn and schedule its OTEL sync (pushes AI usage and commit attribution every 12h)',
824
+ description: "Set up codeburn: local only (default), sync to your team's PRISM every 12h (--url), or the platform-team steps (--admin)",
720
825
  options: CODEBURN_OPTIONS,
721
826
  action: runEnableCodeburn,
722
827
  };
@@ -1 +1 @@
1
- {"version":3,"file":"codeburn.js","sourceRoot":"","sources":["../../../../src/commands/enable/codeburn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codeburn.js","sourceRoot":"","sources":["../../../../src/commands/enable/codeburn.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { type AddDeveloperOptions } from '../../aws/team.js';
2
+ import { type TeamHooks } from './info.js';
3
+ declare const _default: {
4
+ description: string;
5
+ argument: {
6
+ name: string;
7
+ spec: string;
8
+ description: string;
9
+ };
10
+ options: {
11
+ flags: string;
12
+ description: string;
13
+ }[];
14
+ action(opts: AddDeveloperOptions, hooks?: TeamHooks): Promise<void>;
15
+ };
16
+ export default _default;
17
+ //# sourceMappingURL=add-developer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-developer.d.ts","sourceRoot":"","sources":["../../../../src/commands/team/add-developer.ts"],"names":[],"mappings":"AACA,OAAO,EAAiC,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG5F,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;iBAWhC,mBAAmB,UAAS,SAAS;;AAT1D,wBAeE"}
@@ -0,0 +1,22 @@
1
+ import { connectionDefaults } from '../../aws/connection.js';
2
+ import { ADD_PERMISSIONS, addDeveloper } from '../../aws/team.js';
3
+ import { AWS_TARGET_OPTIONS } from '../aws/check.js';
4
+ import { runGuarded } from '../enable/security.js';
5
+ import { teamDeps } from './info.js';
6
+ export default {
7
+ description: `AWS write: create a developer's telemetry account (Cognito user named by their email) after showing the plan and asking (needs ${ADD_PERMISSIONS})`,
8
+ argument: { name: 'email', spec: '<email>', description: "the developer's email; it is also the username" },
9
+ options: [
10
+ ...AWS_TARGET_OPTIONS,
11
+ { flags: '--user-pool-id <id>', description: "Cognito user pool (default: the PRISM stack's OtelUserPoolId output)" },
12
+ { flags: '--yes', description: 'Create without the confirmation prompt (for scripts)' },
13
+ { flags: '--dry-run', description: 'Show the plan (account, region, pool, email); change nothing' },
14
+ ],
15
+ async action(opts, hooks = {}) {
16
+ await runGuarded(async () => {
17
+ const o = connectionDefaults({ ...opts, profile: opts.profile || undefined, region: opts.region || undefined }, hooks.env);
18
+ return addDeveloper(o, (hooks.teamDeps ?? teamDeps)());
19
+ }, hooks);
20
+ },
21
+ };
22
+ //# sourceMappingURL=add-developer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-developer.js","sourceRoot":"","sources":["../../../../src/commands/team/add-developer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,YAAY,EAA4B,MAAM,mBAAmB,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAkB,MAAM,WAAW,CAAC;AAErD,eAAe;IACb,WAAW,EAAE,kIAAkI,eAAe,GAAG;IACjK,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,gDAAgD,EAAE;IAC3G,OAAO,EAAE;QACP,GAAG,kBAAkB;QACrB,EAAE,KAAK,EAAE,qBAAqB,EAAE,WAAW,EAAE,sEAAsE,EAAE;QACrH,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,sDAAsD,EAAE;QACvF,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,8DAA8D,EAAE;KACpG;IACD,KAAK,CAAC,MAAM,CAAC,IAAyB,EAAE,QAAmB,EAAE;QAC3D,MAAM,UAAU,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3H,OAAO,YAAY,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC;CACF,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { type TeamDeps, type TeamOptions } from '../../aws/team.js';
2
+ import { type RunHooks } from '../enable/security.js';
3
+ export declare function teamDeps(): TeamDeps;
4
+ export interface TeamHooks extends RunHooks {
5
+ teamDeps?: () => TeamDeps;
6
+ }
7
+ declare const _default: {
8
+ description: string;
9
+ options: {
10
+ flags: string;
11
+ description: string;
12
+ }[];
13
+ action(opts: TeamOptions, hooks?: TeamHooks): Promise<void>;
14
+ };
15
+ export default _default;
16
+ //# sourceMappingURL=info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../../../src/commands/team/info.ts"],"names":[],"mappings":"AAGA,OAAO,EAA8B,KAAK,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhG,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAElE,wBAAgB,QAAQ,IAAI,QAAQ,CAYnC;AAED,MAAM,WAAW,SAAU,SAAQ,QAAQ;IAAG,QAAQ,CAAC,EAAE,MAAM,QAAQ,CAAA;CAAE;;;;;;;iBAKpD,WAAW,UAAS,SAAS;;AAHlD,wBASE"}
@@ -0,0 +1,30 @@
1
+ import { createInterface } from 'node:readline';
2
+ import { JSON_OPTION } from '../../utils/audit.js';
3
+ import { configuredRegion, connectionDefaults } from '../../aws/connection.js';
4
+ import { INFO_PERMISSIONS, teamInfo } from '../../aws/team.js';
5
+ import { AWS_TARGET_OPTIONS } from '../aws/check.js';
6
+ import { runGuarded } from '../enable/security.js';
7
+ export function teamDeps() {
8
+ return {
9
+ env: process.env,
10
+ configRegion: configuredRegion,
11
+ isTTY: !!(process.stdin.isTTY && process.stdout.isTTY),
12
+ ask: (q) => new Promise((done) => {
13
+ const rl = createInterface({ input: process.stdin, output: process.stdout });
14
+ rl.question(q, (a) => { rl.close(); done(a.trim()); });
15
+ }),
16
+ log: (line = '') => console.log(line),
17
+ err: (line = '') => console.error(line),
18
+ };
19
+ }
20
+ export default {
21
+ description: `Read-only: print the PRISM stack's OtelCollectorUrl and OtelUserPoolId, and the line to send developers (needs ${INFO_PERMISSIONS})`,
22
+ options: [...AWS_TARGET_OPTIONS, JSON_OPTION],
23
+ async action(opts, hooks = {}) {
24
+ await runGuarded(async () => {
25
+ const o = connectionDefaults({ ...opts, profile: opts.profile || undefined, region: opts.region || undefined }, hooks.env);
26
+ return teamInfo(o, (hooks.teamDeps ?? teamDeps)());
27
+ }, hooks);
28
+ },
29
+ };
30
+ //# sourceMappingURL=info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../../../src/commands/team/info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAmC,MAAM,mBAAmB,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAiB,MAAM,uBAAuB,CAAC;AAElE,MAAM,UAAU,QAAQ;IACtB,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,YAAY,EAAE,gBAAgB;QAC9B,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QACtD,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC/B,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAC7E,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;QACrC,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;KACxC,CAAC;AACJ,CAAC;AAID,eAAe;IACb,WAAW,EAAE,kHAAkH,gBAAgB,GAAG;IAClJ,OAAO,EAAE,CAAC,GAAG,kBAAkB,EAAE,WAAW,CAAC;IAC7C,KAAK,CAAC,MAAM,CAAC,IAAiB,EAAE,QAAmB,EAAE;QACnD,MAAM,UAAU,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,CAAC,GAAG,kBAAkB,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3H,OAAO,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC;CACF,CAAC"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * The Setup page's Run buttons: a fixed allowlist of action ids, each mapped
3
+ * here (server side) to a fixed argv for this CLI's own binary.
4
+ *
5
+ * Safety properties, enforced in start():
6
+ * - spawn(process.execPath, [cli entry, ...fixed args]) with shell:false and
7
+ * stdin closed, so prompts take their no-terminal path and nothing is parsed
8
+ * by a shell;
9
+ * - the request names an action id and nothing else free-form: a repo is an
10
+ * id resolved against the dashboard's own scan list (never a client path),
11
+ * and the only text input is a collector URL for team mode, validated as
12
+ * https with a hostname, no userinfo, at most 2048 characters;
13
+ * - one action at a time, each with a timeout;
14
+ * - output is redacted before it leaves the server, and every run is
15
+ * appended to ~/.prism/logs/dashboard-actions.log (time, id, repo name,
16
+ * exit code; never output or URLs);
17
+ * - no action writes to AWS. aws check and team info are read-only;
18
+ * AWS-writing commands are copy-only on the page.
19
+ */
20
+ import { type ChildProcess, type SpawnOptions } from 'node:child_process';
21
+ export type ActionId = 'codewatch-repo' | 'codewatch-global' | 'codeburn-local' | 'codeburn-systemd' | 'codeburn-team' | 'codeburn-remove' | 'codeburn-status' | 'aws-check' | 'team-info';
22
+ export interface ActionDef {
23
+ label: string;
24
+ /** Fixed CLI arguments after the entry script. codeburn-team appends the validated URL. */
25
+ args: readonly string[];
26
+ /** Runs inside a repo picked from the scan list. */
27
+ repo?: true;
28
+ /** Takes the collector URL. */
29
+ url?: true;
30
+ /** Needs `confirm: true` in the request (a second confirmation on the page). */
31
+ confirm?: true;
32
+ /** Makes read-only AWS calls (describe/get/list). No action writes to AWS. */
33
+ readOnlyAws?: true;
34
+ /** Linux with a working `systemctl --user` only. */
35
+ systemd?: true;
36
+ timeoutMs: number;
37
+ }
38
+ export declare const ACTIONS: Record<ActionId, ActionDef>;
39
+ export declare const MAX_URL_LENGTH = 2048;
40
+ /** null when `s` is an acceptable collector URL, else why not. */
41
+ export declare function collectorUrlError(s: unknown): string | null;
42
+ /** Stable id for a scanned repo: never a path the client could choose. */
43
+ export declare function repoId(path: string): string;
44
+ /**
45
+ * Masks secrets in command output: AWS key ids, key=value secrets, bearer
46
+ * tokens, JWTs, URL userinfo and token-like query parameters.
47
+ * shortcut: pattern-based, so an unusual secret format can slip through; add its pattern when one is seen.
48
+ */
49
+ export declare function redact(s: string): string;
50
+ /** This CLI's own entry script: dist/bin/prism-cli.js beside dist/src/dashboard/. */
51
+ export declare function cliEntry(): string;
52
+ export interface ScanRepo {
53
+ id: string;
54
+ name: string;
55
+ path: string;
56
+ }
57
+ export type SpawnFn = (file: string, args: string[], opts: SpawnOptions) => ChildProcess;
58
+ export interface RunnerDeps {
59
+ execPath: string;
60
+ entry: string;
61
+ /** Where repo-less actions run (the dashboard's working directory). */
62
+ cwd: string;
63
+ home: string;
64
+ repos(): Promise<ScanRepo[]>;
65
+ systemdAvailable(): boolean;
66
+ platform: NodeJS.Platform;
67
+ spawn?: SpawnFn;
68
+ now?: () => Date;
69
+ /** Called after each action finishes (the dashboard drops its cached payload). */
70
+ onDone?: () => void;
71
+ /** Kill grace after SIGTERM. */
72
+ killGraceMs?: number;
73
+ }
74
+ export interface ApiResult {
75
+ status: number;
76
+ json: unknown;
77
+ }
78
+ export interface ActionStatus {
79
+ state: 'idle' | 'running' | 'done';
80
+ runId?: number;
81
+ action?: ActionId;
82
+ repo?: string | null;
83
+ command?: string;
84
+ cwd?: string;
85
+ output?: string;
86
+ exitCode?: number | null;
87
+ timedOut?: boolean;
88
+ startedAt?: string;
89
+ finishedAt?: string | null;
90
+ }
91
+ /** `prism-cli <args>` as shown on the page. Arguments are fixed words or the validated https URL. */
92
+ export declare function displayCommand(args: readonly string[]): string;
93
+ export declare function actionLogPath(home: string): string;
94
+ export declare class ActionRunner {
95
+ private d;
96
+ private cur;
97
+ private busy;
98
+ private seq;
99
+ constructor(d: RunnerDeps);
100
+ /** True while an action (or Check now) holds the lock. */
101
+ get running(): boolean;
102
+ /** Runs `fn` under the same one-at-a-time lock as the actions. */
103
+ exclusive<T>(fn: () => T | Promise<T>): Promise<ApiResult>;
104
+ available(id: ActionId): boolean;
105
+ /** Validates the request, then starts the action. 202 with the command, else 4xx with the reason. */
106
+ start(body: unknown): Promise<ApiResult>;
107
+ private finish;
108
+ private log;
109
+ /** The current or last action, output redacted. */
110
+ status(): ActionStatus;
111
+ }
112
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/dashboard/actions.ts"],"names":[],"mappings":"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"}