@prism-d1/cli 1.4.0 → 1.4.2
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/dist/src/aws/connect.d.ts.map +1 -1
- package/dist/src/aws/connect.js +9 -4
- package/dist/src/aws/connect.js.map +1 -1
- package/dist/src/aws/recommend.d.ts +7 -1
- package/dist/src/aws/recommend.d.ts.map +1 -1
- package/dist/src/aws/recommend.js +30 -7
- package/dist/src/aws/recommend.js.map +1 -1
- package/dist/src/aws/run-check.d.ts.map +1 -1
- package/dist/src/aws/run-check.js +3 -2
- package/dist/src/aws/run-check.js.map +1 -1
- package/dist/src/codewatch/globalHooks.d.ts +1 -3
- package/dist/src/codewatch/globalHooks.d.ts.map +1 -1
- package/dist/src/codewatch/globalHooks.js +2 -7
- package/dist/src/codewatch/globalHooks.js.map +1 -1
- package/dist/src/codewatch/hooks.d.ts +9 -2
- package/dist/src/codewatch/hooks.d.ts.map +1 -1
- package/dist/src/codewatch/hooks.js +13 -0
- package/dist/src/codewatch/hooks.js.map +1 -1
- package/dist/src/commands/_top/dashboard.js +1 -1
- package/dist/src/commands/_top/dashboard.js.map +1 -1
- package/dist/src/commands/bootstrapper/setup-otel-sync.d.ts.map +1 -1
- package/dist/src/commands/bootstrapper/setup-otel-sync.js +3 -2
- package/dist/src/commands/bootstrapper/setup-otel-sync.js.map +1 -1
- package/dist/src/commands/codewatch/pre-commit.d.ts.map +1 -1
- package/dist/src/commands/codewatch/pre-commit.js +3 -1
- package/dist/src/commands/codewatch/pre-commit.js.map +1 -1
- package/dist/src/commands/codewatch/pre-push.d.ts.map +1 -1
- package/dist/src/commands/codewatch/pre-push.js +3 -1
- package/dist/src/commands/codewatch/pre-push.js.map +1 -1
- package/dist/src/commands/codewatch/report.d.ts.map +1 -1
- package/dist/src/commands/codewatch/report.js +9 -3
- package/dist/src/commands/codewatch/report.js.map +1 -1
- package/dist/src/commands/enable/codeburn.d.ts.map +1 -1
- package/dist/src/commands/enable/codeburn.js +22 -6
- package/dist/src/commands/enable/codeburn.js.map +1 -1
- package/dist/src/commands/enable/codewatch.d.ts.map +1 -1
- package/dist/src/commands/enable/codewatch.js +2 -1
- package/dist/src/commands/enable/codewatch.js.map +1 -1
- package/dist/src/dashboard/setup.d.ts.map +1 -1
- package/dist/src/dashboard/setup.js +6 -1
- package/dist/src/dashboard/setup.js.map +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +16 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/security/errors.d.ts +1 -0
- package/dist/src/security/errors.d.ts.map +1 -1
- package/dist/src/security/errors.js +2 -1
- package/dist/src/security/errors.js.map +1 -1
- package/dist/src/security/pentest.d.ts.map +1 -1
- package/dist/src/security/pentest.js +5 -1
- package/dist/src/security/pentest.js.map +1 -1
- package/dist/src/security/review.d.ts +4 -4
- package/dist/src/security/review.d.ts.map +1 -1
- package/dist/src/security/review.js +12 -8
- package/dist/src/security/review.js.map +1 -1
- package/dist/src/security/setup.d.ts.map +1 -1
- package/dist/src/security/setup.js +4 -2
- package/dist/src/security/setup.js.map +1 -1
- package/dist/src/security/threat-model.d.ts +9 -2
- package/dist/src/security/threat-model.d.ts.map +1 -1
- package/dist/src/security/threat-model.js +47 -9
- package/dist/src/security/threat-model.js.map +1 -1
- package/dist/src/utils/otel-sync-schedule.d.ts +9 -0
- package/dist/src/utils/otel-sync-schedule.d.ts.map +1 -1
- package/dist/src/utils/otel-sync-schedule.js +18 -2
- package/dist/src/utils/otel-sync-schedule.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/security/setup.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/security/setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,7 @@ import { createHash } from 'node:crypto';
|
|
|
19
19
|
import { existsSync, readFileSync, writeFileSync } from 'node:fs';
|
|
20
20
|
import { join, resolve } from 'node:path';
|
|
21
21
|
import { diffTemplates, formatDiff } from './cfn-diff.js';
|
|
22
|
-
import { cliVersionOk, explainAwsError, MIN_AWS_CLI_TEXT, redact } from './errors.js';
|
|
22
|
+
import { cliVersionOk, CREDENTIALS_HINT, explainAwsError, MIN_AWS_CLI_TEXT, NO_CREDENTIALS_MESSAGE, redact } from './errors.js';
|
|
23
23
|
import { ensureMarkerIgnored, MARKER_PATH, readSecurityMarkerWithSource, writeSecurityMarker } from './marker.js';
|
|
24
24
|
import { codeReviewParam, codeReviewTitle, repoIdFromRemote, repoSlug, repoZipKey, SSM_PREFIX } from './repo.js';
|
|
25
25
|
import { accountChangeWarning, connectionLabel } from '../aws/connection.js';
|
|
@@ -112,7 +112,7 @@ function identity(ctx) {
|
|
|
112
112
|
const r = call(ctx, ['sts', 'get-caller-identity']);
|
|
113
113
|
const account = String(r.json?.Account || '');
|
|
114
114
|
if (!account)
|
|
115
|
-
throw new Abort(
|
|
115
|
+
throw new Abort(NO_CREDENTIALS_MESSAGE);
|
|
116
116
|
// The alias is a nicety for the confirmation; a caller without iam:ListAccountAliases still proceeds.
|
|
117
117
|
const a = ctx.deps.aws(['iam', 'list-account-aliases'], ctx.opts.region);
|
|
118
118
|
const alias = a.ok && Array.isArray(a.json?.AccountAliases) && a.json.AccountAliases[0] ? String(a.json.AccountAliases[0]) : null;
|
|
@@ -632,6 +632,8 @@ function securityStatus(ctx) {
|
|
|
632
632
|
deps.log(`Security Agent status (region ${opts.region}, ${opts.regionSource}; credentials: ${credentialSource(opts, deps.env)}):`);
|
|
633
633
|
for (const [m, l, d] of rows)
|
|
634
634
|
deps.log(` [${m}] ${l}: ${d}`);
|
|
635
|
+
if (rows.some(([m, l, d]) => m === 'missing' && l === 'Credentials' && d === NO_CREDENTIALS_MESSAGE))
|
|
636
|
+
deps.log(` ${CREDENTIALS_HINT}`);
|
|
635
637
|
return code;
|
|
636
638
|
}
|
|
637
639
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/security/setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/security/setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,6 +83,13 @@ export declare function docLimitWarnings(docs: {
|
|
|
83
83
|
path: string;
|
|
84
84
|
size: number;
|
|
85
85
|
}[]): string[];
|
|
86
|
+
/** shortcut: "tiny" is a guess (a few lines); tune it once runs show how much a model needs. */
|
|
87
|
+
export declare const TINY_DOCS_BYTES = 1024;
|
|
88
|
+
/** A warning when the scope docs are so small the threat model may come back empty; null otherwise. */
|
|
89
|
+
export declare function tinyDocsHint(docs: {
|
|
90
|
+
path: string;
|
|
91
|
+
size: number;
|
|
92
|
+
}[]): string | null;
|
|
86
93
|
export declare function getTmJob(ctx: Ctx, space: string, jobId: string): TmJob;
|
|
87
94
|
/** The newest job of the newest threat model this repo's runs created, or null. */
|
|
88
95
|
export declare function latestTmJob(ctx: Ctx, space: string, slug: string): TmJob | null;
|
|
@@ -121,8 +128,8 @@ export declare function toThreatModelResult(o: TmBase & {
|
|
|
121
128
|
threats: ThreatRow[];
|
|
122
129
|
now: Date;
|
|
123
130
|
}): PrismResult;
|
|
124
|
-
/**
|
|
125
|
-
export declare function
|
|
131
|
+
/** Records (pending, completed or failed) in this repo for this account, region and agent space, newest first. */
|
|
132
|
+
export declare function threatModelRecords(root: string, account: string, region: string, space: string): ResultEntry[];
|
|
126
133
|
export declare function failOnThreat(ts: ThreatRow[], failOn: string | undefined): boolean;
|
|
127
134
|
export declare const THREAT_MODEL_NOTICE = "prism-cli security threat-model uploads the repo at HEAD and its scope docs (read from HEAD) to the Security Agent scan bucket under threat-model/<slug>/<commit>/, creates a threat model and starts a threat model job in the AWS account your credentials point to. Those are its only AWS writes; AWS does not charge for threat modeling while it is in preview. The result is saved to .prism/results/.";
|
|
128
135
|
/** `prism-cli security threat-model`. Returns the exit code. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threat-model.d.ts","sourceRoot":"","sources":["../../../src/security/threat-model.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"threat-model.d.ts","sourceRoot":"","sources":["../../../src/security/threat-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -186,6 +186,30 @@ export function docLimitWarnings(docs) {
|
|
|
186
186
|
return [];
|
|
187
187
|
return [`Warning: ${out.join('; ')}. The web app's design review allows 5 files, 2 MB each (0.5 MB for .md and .txt), 6 MB in total; the threat-model API documents no limits. If the job fails, trim the docs.`];
|
|
188
188
|
}
|
|
189
|
+
/** shortcut: "tiny" is a guess (a few lines); tune it once runs show how much a model needs. */
|
|
190
|
+
export const TINY_DOCS_BYTES = 1024;
|
|
191
|
+
/** A warning when the scope docs are so small the threat model may come back empty; null otherwise. */
|
|
192
|
+
export function tinyDocsHint(docs) {
|
|
193
|
+
const total = docs.reduce((a, d) => a + d.size, 0);
|
|
194
|
+
if (!docs.length || total >= TINY_DOCS_BYTES)
|
|
195
|
+
return null;
|
|
196
|
+
return `Warning: the scope docs are only ${total} bytes in total (${docs.map((d) => d.path).join(', ')}), so the threat model may find no threats. `
|
|
197
|
+
+ 'Pass a fuller design doc with --doc, or commit the Kiro spec docs (.kiro/specs/<feature>/design.md and requirements.md), which are used when no --doc is given.';
|
|
198
|
+
}
|
|
199
|
+
/** Sizes of a recorded run's scope docs at its commit, or null when git cannot tell. */
|
|
200
|
+
function recordedDocSizes(deps, root, commit, paths) {
|
|
201
|
+
if (!commit || !paths.length)
|
|
202
|
+
return null;
|
|
203
|
+
const out = [];
|
|
204
|
+
for (const path of paths) {
|
|
205
|
+
const r = deps.git(['-C', root, 'cat-file', '-s', `${commit}:${path}`]);
|
|
206
|
+
const size = Number(r.stdout.trim());
|
|
207
|
+
if (!r.ok || !Number.isFinite(size))
|
|
208
|
+
return null;
|
|
209
|
+
out.push({ path, size });
|
|
210
|
+
}
|
|
211
|
+
return out;
|
|
212
|
+
}
|
|
189
213
|
// ---------------------------------------------------------------------------
|
|
190
214
|
// Jobs and threats (reads)
|
|
191
215
|
// ---------------------------------------------------------------------------
|
|
@@ -376,10 +400,10 @@ export function toThreatModelResult(o) {
|
|
|
376
400
|
},
|
|
377
401
|
});
|
|
378
402
|
}
|
|
379
|
-
/**
|
|
380
|
-
export function
|
|
403
|
+
/** Records (pending, completed or failed) in this repo for this account, region and agent space, newest first. */
|
|
404
|
+
export function threatModelRecords(root, account, region, space) {
|
|
381
405
|
return readResultEntries(root)
|
|
382
|
-
.filter(({ result: r }) => r.kind === 'security-threat-model' && r.
|
|
406
|
+
.filter(({ result: r }) => r.kind === 'security-threat-model' && r.threat_model?.job_id
|
|
383
407
|
&& r.threat_model.account === account && r.threat_model.region === region && r.threat_model.agent_space_id === space)
|
|
384
408
|
.sort((a, b) => b.result.started_at.localeCompare(a.result.started_at));
|
|
385
409
|
}
|
|
@@ -405,12 +429,16 @@ function saveFailed(ctx, json, result, job, repo, space, id) {
|
|
|
405
429
|
ctx.deps.log(`Saved ${path}`);
|
|
406
430
|
return 1;
|
|
407
431
|
}
|
|
408
|
-
|
|
432
|
+
/** `tinyDocs`: the tiny-docs warning, repeated when the job found no threats. */
|
|
433
|
+
function finishThreats(ctx, json, result, threats, repo, job, minLevel, id, tinyDocs) {
|
|
409
434
|
const deps = ctx.deps;
|
|
410
435
|
const shown = minLevel ? threats.filter((t) => sevRank(t.severity) >= sevRank(minLevel.toUpperCase()) && sevRank(t.severity) > 0) : threats;
|
|
411
436
|
const path = writeResult(repo.root, result, id);
|
|
437
|
+
const emptyHint = !threats.length && tinyDocs ? tinyDocs : null;
|
|
412
438
|
if (json) {
|
|
413
439
|
deps.out(JSON.stringify(result, null, 2) + '\n');
|
|
440
|
+
if (emptyHint)
|
|
441
|
+
deps.err(emptyHint);
|
|
414
442
|
deps.err(`Saved ${path}`);
|
|
415
443
|
return;
|
|
416
444
|
}
|
|
@@ -427,6 +455,8 @@ function finishThreats(ctx, json, result, threats, repo, job, minLevel, id) {
|
|
|
427
455
|
printThreats(say, shown);
|
|
428
456
|
else
|
|
429
457
|
say(minLevel ? `No threats at ${minLevel} or above.` : 'No threats.');
|
|
458
|
+
if (emptyHint)
|
|
459
|
+
say(emptyHint);
|
|
430
460
|
if (minLevel && shown.length !== threats.length)
|
|
431
461
|
say(`(${threats.length - shown.length} below ${minLevel} not shown; ${threatTotals(countBySeverity(threats))})`);
|
|
432
462
|
say(`Saved ${path}`);
|
|
@@ -495,6 +525,9 @@ export async function securityThreatModel(input, deps) {
|
|
|
495
525
|
: `Scope docs: none (${input.docs === false ? '--no-docs' : 'no --doc and no .kiro/specs/*/design.md or requirements.md in HEAD'}); the source alone is modeled`);
|
|
496
526
|
for (const w of docLimitWarnings(docs))
|
|
497
527
|
say(w);
|
|
528
|
+
const tinyDocs = tinyDocsHint(docs);
|
|
529
|
+
if (tinyDocs)
|
|
530
|
+
say(tinyDocs);
|
|
498
531
|
const source = { file: zip, key: `${prefix}/source.zip` };
|
|
499
532
|
for (const s of [source, ...docs]) {
|
|
500
533
|
const uri = `s3://${bucket}/${s.key}`;
|
|
@@ -549,7 +582,7 @@ export async function securityThreatModel(input, deps) {
|
|
|
549
582
|
if (out.job.status !== 'COMPLETED')
|
|
550
583
|
return saveFailed(ctx, !!input.json, toThreatModelResult({ ...base, threats: [] }), out.job, repo, space, pendingId);
|
|
551
584
|
const threats = fetchThreats(ctx, space, out.job.threatModelJobId, repo.root);
|
|
552
|
-
finishThreats(ctx, !!input.json, toThreatModelResult({ ...base, threats }), threats, repo, out.job, undefined, pendingId);
|
|
585
|
+
finishThreats(ctx, !!input.json, toThreatModelResult({ ...base, threats }), threats, repo, out.job, undefined, pendingId, tinyDocs);
|
|
553
586
|
if (failOnThreat(threats, failOn)) {
|
|
554
587
|
say(`--fail-on ${failOn}: threats at or above ${failOn}.`);
|
|
555
588
|
return 1;
|
|
@@ -582,13 +615,16 @@ export async function securityThreats(input, deps) {
|
|
|
582
615
|
printIdentity(ctx, id);
|
|
583
616
|
const repo = needRepo(ctx, root);
|
|
584
617
|
const space = agentSpace(ctx, id);
|
|
585
|
-
const
|
|
618
|
+
const records = threatModelRecords(repo.root, id.account, ctx.opts.region, space);
|
|
619
|
+
const pendings = records.filter((e) => e.result.status === 'pending');
|
|
620
|
+
// A job already on record (pending or completed) is updated in place, keeping its scope docs and commit.
|
|
621
|
+
const recordOf = (jobId) => records.find((e) => e.result.threat_model.job_id === jobId) ?? null;
|
|
586
622
|
let pending = null;
|
|
587
623
|
let job;
|
|
588
624
|
if (input.job) {
|
|
589
625
|
if (!/^[A-Za-z0-9_-]{1,128}$/.test(input.job))
|
|
590
626
|
throw new Abort(`--job must be a job id, got "${input.job}"`);
|
|
591
|
-
pending =
|
|
627
|
+
pending = recordOf(input.job);
|
|
592
628
|
job = getTmJob(ctx, space, input.job);
|
|
593
629
|
}
|
|
594
630
|
else if (pendings.length) {
|
|
@@ -604,9 +640,10 @@ export async function securityThreats(input, deps) {
|
|
|
604
640
|
say(`No threat models yet for ${repo.id}. Start one with: prism-cli security threat-model`);
|
|
605
641
|
return 0;
|
|
606
642
|
}
|
|
643
|
+
pending = recordOf(job.threatModelJobId);
|
|
607
644
|
}
|
|
608
645
|
if (pending)
|
|
609
|
-
say(
|
|
646
|
+
say(`${pending.result.status === 'pending' ? 'Pending: ' : 'Recorded:'} recorded by threat-model at ${pending.result.started_at} (commit ${(pending.result.commit || '').slice(0, 12)})`);
|
|
610
647
|
say(`Job: ${job.threatModelJobId} (${job.status}${job.createdAt ? `, started ${job.createdAt}` : ''})`);
|
|
611
648
|
if (!TERMINAL.has(job.status)) {
|
|
612
649
|
if (!input.wait) {
|
|
@@ -639,7 +676,8 @@ export async function securityThreats(input, deps) {
|
|
|
639
676
|
return 1;
|
|
640
677
|
}
|
|
641
678
|
const threats = fetchThreats(ctx, space, job.threatModelJobId, repo.root);
|
|
642
|
-
|
|
679
|
+
const sizes = pending ? recordedDocSizes(deps, root, pending.result.commit, base.scopeDocs) : null;
|
|
680
|
+
finishThreats(ctx, !!input.json, toThreatModelResult({ ...base, threats }), threats, repo, job, min, pending?.id, sizes && tinyDocsHint(sizes));
|
|
643
681
|
return 0;
|
|
644
682
|
}
|
|
645
683
|
catch (e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threat-model.js","sourceRoot":"","sources":["../../../src/security/threat-model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"threat-model.js","sourceRoot":"","sources":["../../../src/security/threat-model.ts"],"names":[],"mappings":"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"}
|