guardrail-cli 2.4.13 → 2.5.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.
- package/LICENSE +21 -21
- package/README.md +548 -521
- package/dist/commands/autopilot-decision.d.ts +24 -0
- package/dist/commands/autopilot-decision.d.ts.map +1 -0
- package/dist/commands/autopilot-decision.js +304 -0
- package/dist/commands/autopilot-decision.js.map +1 -0
- package/dist/commands/autopilot.d.ts +33 -0
- package/dist/commands/autopilot.d.ts.map +1 -0
- package/dist/commands/autopilot.js +1539 -0
- package/dist/commands/autopilot.js.map +1 -0
- package/dist/commands/baseline.d.ts.map +1 -1
- package/dist/commands/baseline.js.map +1 -1
- package/dist/commands/cache.d.ts.map +1 -1
- package/dist/commands/cache.js +3 -1
- package/dist/commands/cache.js.map +1 -1
- package/dist/commands/context.d.ts +8 -0
- package/dist/commands/context.d.ts.map +1 -0
- package/dist/commands/context.js +340 -0
- package/dist/commands/context.js.map +1 -0
- package/dist/commands/debug.d.ts +78 -0
- package/dist/commands/debug.d.ts.map +1 -0
- package/dist/commands/debug.js +381 -0
- package/dist/commands/debug.js.map +1 -0
- package/dist/commands/evidence.d.ts.map +1 -1
- package/dist/commands/evidence.js +23 -7
- package/dist/commands/evidence.js.map +1 -1
- package/dist/commands/index.d.ts +5 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +16 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/preview.d.ts +54 -0
- package/dist/commands/preview.d.ts.map +1 -0
- package/dist/commands/preview.js +352 -0
- package/dist/commands/preview.js.map +1 -0
- package/dist/commands/quality/check.d.ts +31 -0
- package/dist/commands/quality/check.d.ts.map +1 -0
- package/dist/commands/quality/check.js +242 -0
- package/dist/commands/quality/check.js.map +1 -0
- package/dist/commands/quality/index.d.ts +8 -0
- package/dist/commands/quality/index.d.ts.map +1 -0
- package/dist/commands/quality/index.js +14 -0
- package/dist/commands/quality/index.js.map +1 -0
- package/dist/commands/quality/setup-quality.d.ts +23 -0
- package/dist/commands/quality/setup-quality.d.ts.map +1 -0
- package/dist/commands/quality/setup-quality.js +452 -0
- package/dist/commands/quality/setup-quality.js.map +1 -0
- package/dist/commands/quality/tidy.d.ts +41 -0
- package/dist/commands/quality/tidy.d.ts.map +1 -0
- package/dist/commands/quality/tidy.js +466 -0
- package/dist/commands/quality/tidy.js.map +1 -0
- package/dist/commands/quality/utils.d.ts +73 -0
- package/dist/commands/quality/utils.d.ts.map +1 -0
- package/dist/commands/quality/utils.js +158 -0
- package/dist/commands/quality/utils.js.map +1 -0
- package/dist/commands/scan-secrets.d.ts.map +1 -1
- package/dist/commands/scan-secrets.js +35 -18
- package/dist/commands/scan-secrets.js.map +1 -1
- package/dist/commands/scan-vulnerabilities-enhanced.d.ts +1 -0
- package/dist/commands/scan-vulnerabilities-enhanced.d.ts.map +1 -1
- package/dist/commands/scan-vulnerabilities-enhanced.js +40 -14
- package/dist/commands/scan-vulnerabilities-enhanced.js.map +1 -1
- package/dist/commands/scan-vulnerabilities-osv.d.ts +1 -1
- package/dist/commands/scan-vulnerabilities-osv.d.ts.map +1 -1
- package/dist/commands/scan-vulnerabilities-osv.js +76 -45
- package/dist/commands/scan-vulnerabilities-osv.js.map +1 -1
- package/dist/commands/scan-vulnerabilities.d.ts.map +1 -1
- package/dist/commands/scan-vulnerabilities.js +82 -21
- package/dist/commands/scan-vulnerabilities.js.map +1 -1
- package/dist/commands/secrets-allowlist.d.ts.map +1 -1
- package/dist/commands/secrets-allowlist.js +12 -11
- package/dist/commands/secrets-allowlist.js.map +1 -1
- package/dist/fix/analytics.d.ts +121 -0
- package/dist/fix/analytics.d.ts.map +1 -0
- package/dist/fix/analytics.js +289 -0
- package/dist/fix/analytics.js.map +1 -0
- package/dist/fix/applicator.d.ts +21 -2
- package/dist/fix/applicator.d.ts.map +1 -1
- package/dist/fix/applicator.js +109 -6
- package/dist/fix/applicator.js.map +1 -1
- package/dist/fix/audit.d.ts +61 -0
- package/dist/fix/audit.d.ts.map +1 -0
- package/dist/fix/audit.js +149 -0
- package/dist/fix/audit.js.map +1 -0
- package/dist/fix/backup.d.ts +12 -2
- package/dist/fix/backup.d.ts.map +1 -1
- package/dist/fix/backup.js +53 -4
- package/dist/fix/backup.js.map +1 -1
- package/dist/fix/config.d.ts +78 -0
- package/dist/fix/config.d.ts.map +1 -0
- package/dist/fix/config.js +200 -0
- package/dist/fix/config.js.map +1 -0
- package/dist/fix/engine.d.ts.map +1 -1
- package/dist/fix/engine.js +5 -5
- package/dist/fix/engine.js.map +1 -1
- package/dist/fix/impact.d.ts +74 -0
- package/dist/fix/impact.d.ts.map +1 -0
- package/dist/fix/impact.js +281 -0
- package/dist/fix/impact.js.map +1 -0
- package/dist/fix/index.d.ts +3 -0
- package/dist/fix/index.d.ts.map +1 -1
- package/dist/fix/index.js +7 -1
- package/dist/fix/index.js.map +1 -1
- package/dist/fix/interactive.d.ts.map +1 -1
- package/dist/fix/interactive.js +9 -4
- package/dist/fix/interactive.js.map +1 -1
- package/dist/fix/learning.d.ts +109 -0
- package/dist/fix/learning.d.ts.map +1 -0
- package/dist/fix/learning.js +296 -0
- package/dist/fix/learning.js.map +1 -0
- package/dist/fix/metrics.d.ts +106 -0
- package/dist/fix/metrics.d.ts.map +1 -0
- package/dist/fix/metrics.js +138 -0
- package/dist/fix/metrics.js.map +1 -0
- package/dist/fix/parallel.d.ts +69 -0
- package/dist/fix/parallel.d.ts.map +1 -0
- package/dist/fix/parallel.js +203 -0
- package/dist/fix/parallel.js.map +1 -0
- package/dist/fix/report.d.ts +40 -0
- package/dist/fix/report.d.ts.map +1 -0
- package/dist/fix/report.js +212 -0
- package/dist/fix/report.js.map +1 -0
- package/dist/fix/strategy.d.ts +53 -0
- package/dist/fix/strategy.d.ts.map +1 -0
- package/dist/fix/strategy.js +143 -0
- package/dist/fix/strategy.js.map +1 -0
- package/dist/fix/templates.d.ts +58 -0
- package/dist/fix/templates.d.ts.map +1 -0
- package/dist/fix/templates.js +259 -0
- package/dist/fix/templates.js.map +1 -0
- package/dist/fix/testing.d.ts +68 -0
- package/dist/fix/testing.d.ts.map +1 -0
- package/dist/fix/testing.js +245 -0
- package/dist/fix/testing.js.map +1 -0
- package/dist/fix/validation.d.ts +71 -0
- package/dist/fix/validation.d.ts.map +1 -0
- package/dist/fix/validation.js +267 -0
- package/dist/fix/validation.js.map +1 -0
- package/dist/fix/visualization.d.ts +73 -0
- package/dist/fix/visualization.d.ts.map +1 -0
- package/dist/fix/visualization.js +243 -0
- package/dist/fix/visualization.js.map +1 -0
- package/dist/formatters/sarif-enhanced.d.ts.map +1 -1
- package/dist/formatters/sarif-enhanced.js +15 -7
- package/dist/formatters/sarif-enhanced.js.map +1 -1
- package/dist/formatters/sarif-v2.d.ts.map +1 -1
- package/dist/formatters/sarif-v2.js +82 -46
- package/dist/formatters/sarif-v2.js.map +1 -1
- package/dist/formatters/sarif.d.ts.map +1 -1
- package/dist/formatters/sarif.js +49 -22
- package/dist/formatters/sarif.js.map +1 -1
- package/dist/index.js +2544 -410
- package/dist/index.js.map +1 -1
- package/dist/init/ci-generator.d.ts.map +1 -1
- package/dist/init/ci-generator.js +186 -180
- package/dist/init/ci-generator.js.map +1 -1
- package/dist/init/detect-framework.d.ts.map +1 -1
- package/dist/init/detect-framework.js +19 -9
- package/dist/init/detect-framework.js.map +1 -1
- package/dist/init/hooks-installer.d.ts.map +1 -1
- package/dist/init/hooks-installer.js +74 -65
- package/dist/init/hooks-installer.js.map +1 -1
- package/dist/init/index.d.ts +3 -3
- package/dist/init/index.d.ts.map +1 -1
- package/dist/init/index.js.map +1 -1
- package/dist/init/templates.d.ts +10 -10
- package/dist/init/templates.d.ts.map +1 -1
- package/dist/init/templates.js +9 -4
- package/dist/init/templates.js.map +1 -1
- package/dist/reality/reality-runner.d.ts.map +1 -1
- package/dist/reality/reality-runner.js +23 -7
- package/dist/reality/reality-runner.js.map +1 -1
- package/dist/runtime/auth-utils.d.ts.map +1 -1
- package/dist/runtime/auth-utils.js.map +1 -1
- package/dist/runtime/cli-errors.d.ts +38 -0
- package/dist/runtime/cli-errors.d.ts.map +1 -0
- package/dist/runtime/cli-errors.js +354 -0
- package/dist/runtime/cli-errors.js.map +1 -0
- package/dist/runtime/client.d.ts.map +1 -1
- package/dist/runtime/client.js +27 -10
- package/dist/runtime/client.js.map +1 -1
- package/dist/runtime/creds.d.ts +5 -0
- package/dist/runtime/creds.d.ts.map +1 -1
- package/dist/runtime/creds.js +6 -1
- package/dist/runtime/creds.js.map +1 -1
- package/dist/runtime/exit-codes.d.ts +32 -4
- package/dist/runtime/exit-codes.d.ts.map +1 -1
- package/dist/runtime/exit-codes.js +42 -14
- package/dist/runtime/exit-codes.js.map +1 -1
- package/dist/runtime/owner-mode.d.ts +48 -0
- package/dist/runtime/owner-mode.d.ts.map +1 -0
- package/dist/runtime/owner-mode.js +284 -0
- package/dist/runtime/owner-mode.js.map +1 -0
- package/dist/runtime/semver.d.ts.map +1 -1
- package/dist/runtime/semver.js +5 -2
- package/dist/runtime/semver.js.map +1 -1
- package/dist/scanner/baseline.d.ts.map +1 -1
- package/dist/scanner/baseline.js +3 -3
- package/dist/scanner/baseline.js.map +1 -1
- package/dist/scanner/incremental.d.ts.map +1 -1
- package/dist/scanner/incremental.js +3 -3
- package/dist/scanner/incremental.js.map +1 -1
- package/dist/scanner/index.d.ts +8 -0
- package/dist/scanner/index.d.ts.map +1 -0
- package/dist/scanner/index.js +15 -0
- package/dist/scanner/index.js.map +1 -0
- package/dist/scanner/parallel.d.ts.map +1 -1
- package/dist/scanner/parallel.js +29 -8
- package/dist/scanner/parallel.js.map +1 -1
- package/dist/scanner/placeholder-detector.d.ts +56 -0
- package/dist/scanner/placeholder-detector.d.ts.map +1 -0
- package/dist/scanner/placeholder-detector.js +220 -0
- package/dist/scanner/placeholder-detector.js.map +1 -0
- package/dist/scanner/route-detector.d.ts +100 -0
- package/dist/scanner/route-detector.d.ts.map +1 -0
- package/dist/scanner/route-detector.js +455 -0
- package/dist/scanner/route-detector.js.map +1 -0
- package/dist/scanner/scoring.d.ts +67 -0
- package/dist/scanner/scoring.d.ts.map +1 -0
- package/dist/scanner/scoring.js +284 -0
- package/dist/scanner/scoring.js.map +1 -0
- package/dist/ship-baseline.d.ts +56 -0
- package/dist/ship-baseline.d.ts.map +1 -0
- package/dist/ship-baseline.js +194 -0
- package/dist/ship-baseline.js.map +1 -0
- package/dist/ship-config.d.ts +91 -0
- package/dist/ship-config.d.ts.map +1 -0
- package/dist/ship-config.js +133 -0
- package/dist/ship-config.js.map +1 -0
- package/dist/ship-data-loader.d.ts +70 -0
- package/dist/ship-data-loader.d.ts.map +1 -0
- package/dist/ship-data-loader.js +301 -0
- package/dist/ship-data-loader.js.map +1 -0
- package/dist/ui/frame.d.ts.map +1 -1
- package/dist/ui/frame.js +3 -1
- package/dist/ui/frame.js.map +1 -1
- package/dist/utils/ai-helpers.d.ts +72 -0
- package/dist/utils/ai-helpers.d.ts.map +1 -0
- package/dist/utils/ai-helpers.js +339 -0
- package/dist/utils/ai-helpers.js.map +1 -0
- package/dist/utils/validation.d.ts +34 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +160 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +3 -2
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preview/Dry-Run Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides preview functionality for paid commands:
|
|
5
|
+
* - gate
|
|
6
|
+
* - ship
|
|
7
|
+
* - reality
|
|
8
|
+
* - autopilot
|
|
9
|
+
*
|
|
10
|
+
* Shows what checks would run, artifacts that would be generated, and sample report skeleton
|
|
11
|
+
*/
|
|
12
|
+
export interface PreviewCheck {
|
|
13
|
+
id: string;
|
|
14
|
+
name: string;
|
|
15
|
+
description: string;
|
|
16
|
+
category: string;
|
|
17
|
+
tier: 'free' | 'starter' | 'pro' | 'enterprise';
|
|
18
|
+
}
|
|
19
|
+
export interface PreviewArtifact {
|
|
20
|
+
type: 'report' | 'badge' | 'log' | 'config' | 'data';
|
|
21
|
+
name: string;
|
|
22
|
+
format?: string;
|
|
23
|
+
location: string;
|
|
24
|
+
description: string;
|
|
25
|
+
}
|
|
26
|
+
export interface PreviewResult {
|
|
27
|
+
command: string;
|
|
28
|
+
checks: PreviewCheck[];
|
|
29
|
+
artifacts: PreviewArtifact[];
|
|
30
|
+
sampleReport?: any;
|
|
31
|
+
estimatedDuration?: string;
|
|
32
|
+
tierRequired: 'free' | 'starter' | 'pro' | 'enterprise';
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Generate preview for ship command
|
|
36
|
+
*/
|
|
37
|
+
export declare function generateShipPreview(projectPath: string, options?: any): PreviewResult;
|
|
38
|
+
/**
|
|
39
|
+
* Generate preview for gate command
|
|
40
|
+
*/
|
|
41
|
+
export declare function generateGatePreview(projectPath: string, options?: any): PreviewResult;
|
|
42
|
+
/**
|
|
43
|
+
* Generate preview for reality command
|
|
44
|
+
*/
|
|
45
|
+
export declare function generateRealityPreview(projectPath: string, options?: any): PreviewResult;
|
|
46
|
+
/**
|
|
47
|
+
* Generate preview for autopilot command
|
|
48
|
+
*/
|
|
49
|
+
export declare function generateAutopilotPreview(projectPath: string, options?: any): PreviewResult;
|
|
50
|
+
/**
|
|
51
|
+
* Format preview as text
|
|
52
|
+
*/
|
|
53
|
+
export declare function formatPreviewAsText(preview: PreviewResult): string;
|
|
54
|
+
//# sourceMappingURL=preview.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../src/commands/preview.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,YAAY,CAAC;CACjD;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,YAAY,CAAC;CACzD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,GAAQ,GAChB,aAAa,CA4Ff;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,GAAQ,GAChB,aAAa,CAkEf;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,GAAQ,GAChB,aAAa,CA+Df;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,GAAQ,GAChB,aAAa,CA+Df;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAgDlE"}
|
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Preview/Dry-Run Utilities
|
|
4
|
+
*
|
|
5
|
+
* Provides preview functionality for paid commands:
|
|
6
|
+
* - gate
|
|
7
|
+
* - ship
|
|
8
|
+
* - reality
|
|
9
|
+
* - autopilot
|
|
10
|
+
*
|
|
11
|
+
* Shows what checks would run, artifacts that would be generated, and sample report skeleton
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.generateShipPreview = generateShipPreview;
|
|
15
|
+
exports.generateGatePreview = generateGatePreview;
|
|
16
|
+
exports.generateRealityPreview = generateRealityPreview;
|
|
17
|
+
exports.generateAutopilotPreview = generateAutopilotPreview;
|
|
18
|
+
exports.formatPreviewAsText = formatPreviewAsText;
|
|
19
|
+
/**
|
|
20
|
+
* Generate preview for ship command
|
|
21
|
+
*/
|
|
22
|
+
function generateShipPreview(projectPath, options = {}) {
|
|
23
|
+
const checks = [
|
|
24
|
+
{
|
|
25
|
+
id: 'no-mock-data',
|
|
26
|
+
name: 'No Mock Data Detected',
|
|
27
|
+
description: 'Scans for mock data patterns in production code',
|
|
28
|
+
category: 'production-readiness',
|
|
29
|
+
tier: 'starter',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
id: 'no-localhost',
|
|
33
|
+
name: 'No Localhost/Ngrok',
|
|
34
|
+
description: 'Checks for localhost, staging, or ngrok URLs in production',
|
|
35
|
+
category: 'production-readiness',
|
|
36
|
+
tier: 'starter',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
id: 'env-vars',
|
|
40
|
+
name: 'Environment Variables Present',
|
|
41
|
+
description: 'Verifies required environment variables are configured',
|
|
42
|
+
category: 'configuration',
|
|
43
|
+
tier: 'starter',
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
id: 'real-billing',
|
|
47
|
+
name: 'Real Billing',
|
|
48
|
+
description: 'Checks for simulated or test billing implementations',
|
|
49
|
+
category: 'business-logic',
|
|
50
|
+
tier: 'pro',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
id: 'real-database',
|
|
54
|
+
name: 'Real Database',
|
|
55
|
+
description: 'Verifies production database configuration',
|
|
56
|
+
category: 'infrastructure',
|
|
57
|
+
tier: 'pro',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
id: 'oauth-callbacks',
|
|
61
|
+
name: 'OAuth Callbacks',
|
|
62
|
+
description: 'Validates OAuth callback URLs are production-ready',
|
|
63
|
+
category: 'security',
|
|
64
|
+
tier: 'pro',
|
|
65
|
+
},
|
|
66
|
+
];
|
|
67
|
+
const artifacts = [
|
|
68
|
+
{
|
|
69
|
+
type: 'report',
|
|
70
|
+
name: 'Ship Check Report',
|
|
71
|
+
format: options.format || 'table',
|
|
72
|
+
location: options.output || '.guardrail/ship-report.json',
|
|
73
|
+
description: 'Detailed ship check results and recommendations',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'badge',
|
|
77
|
+
name: 'Ship Badge',
|
|
78
|
+
format: 'svg',
|
|
79
|
+
location: '.guardrail/badges/ship-badge.svg',
|
|
80
|
+
description: 'Ship/no-ship status badge for README',
|
|
81
|
+
},
|
|
82
|
+
];
|
|
83
|
+
const sampleReport = {
|
|
84
|
+
verdict: 'review',
|
|
85
|
+
score: 75,
|
|
86
|
+
checks: [
|
|
87
|
+
{
|
|
88
|
+
id: 'no-mock-data',
|
|
89
|
+
name: 'No Mock Data Detected',
|
|
90
|
+
status: 'pass',
|
|
91
|
+
message: 'No mock data patterns found',
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
id: 'no-localhost',
|
|
95
|
+
name: 'No Localhost/Ngrok',
|
|
96
|
+
status: 'fail',
|
|
97
|
+
message: 'Found 3 localhost URLs in production code',
|
|
98
|
+
details: ['src/api/client.ts:45', 'src/utils/helpers.ts:12'],
|
|
99
|
+
},
|
|
100
|
+
],
|
|
101
|
+
timestamp: new Date().toISOString(),
|
|
102
|
+
};
|
|
103
|
+
return {
|
|
104
|
+
command: 'ship',
|
|
105
|
+
checks,
|
|
106
|
+
artifacts,
|
|
107
|
+
sampleReport,
|
|
108
|
+
estimatedDuration: '2-5 seconds',
|
|
109
|
+
tierRequired: 'starter',
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Generate preview for gate command
|
|
114
|
+
*/
|
|
115
|
+
function generateGatePreview(projectPath, options = {}) {
|
|
116
|
+
const checks = [
|
|
117
|
+
{
|
|
118
|
+
id: 'secrets',
|
|
119
|
+
name: 'Secrets Detection',
|
|
120
|
+
description: 'Scans for hardcoded secrets and credentials',
|
|
121
|
+
category: 'security',
|
|
122
|
+
tier: 'free',
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
id: 'vulnerabilities',
|
|
126
|
+
name: 'Vulnerability Scan',
|
|
127
|
+
description: 'Checks dependencies for known vulnerabilities',
|
|
128
|
+
category: 'security',
|
|
129
|
+
tier: 'free',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
id: 'compliance',
|
|
133
|
+
name: 'Compliance Check',
|
|
134
|
+
description: 'Validates compliance with configured frameworks',
|
|
135
|
+
category: 'compliance',
|
|
136
|
+
tier: 'pro',
|
|
137
|
+
},
|
|
138
|
+
];
|
|
139
|
+
const artifacts = [
|
|
140
|
+
{
|
|
141
|
+
type: 'report',
|
|
142
|
+
name: 'Gate Report',
|
|
143
|
+
format: options.format || 'sarif',
|
|
144
|
+
location: options.output || '.guardrail/gate-report.sarif',
|
|
145
|
+
description: 'Gate check results in SARIF format for CI/CD',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'log',
|
|
149
|
+
name: 'Gate Log',
|
|
150
|
+
format: 'json',
|
|
151
|
+
location: '.guardrail/gate-log.json',
|
|
152
|
+
description: 'Detailed execution log',
|
|
153
|
+
},
|
|
154
|
+
];
|
|
155
|
+
const sampleReport = {
|
|
156
|
+
passed: false,
|
|
157
|
+
findings: {
|
|
158
|
+
critical: 0,
|
|
159
|
+
high: 2,
|
|
160
|
+
medium: 5,
|
|
161
|
+
low: 10,
|
|
162
|
+
},
|
|
163
|
+
summary: {
|
|
164
|
+
secrets: 2,
|
|
165
|
+
vulnerabilities: 5,
|
|
166
|
+
compliance: 8,
|
|
167
|
+
},
|
|
168
|
+
timestamp: new Date().toISOString(),
|
|
169
|
+
};
|
|
170
|
+
return {
|
|
171
|
+
command: 'gate',
|
|
172
|
+
checks,
|
|
173
|
+
artifacts,
|
|
174
|
+
sampleReport,
|
|
175
|
+
estimatedDuration: '5-15 seconds',
|
|
176
|
+
tierRequired: 'free',
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Generate preview for reality command
|
|
181
|
+
*/
|
|
182
|
+
function generateRealityPreview(projectPath, options = {}) {
|
|
183
|
+
const checks = [
|
|
184
|
+
{
|
|
185
|
+
id: 'runtime-exploration',
|
|
186
|
+
name: 'Runtime Exploration',
|
|
187
|
+
description: 'Explores application runtime behavior',
|
|
188
|
+
category: 'testing',
|
|
189
|
+
tier: 'pro',
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
id: 'fake-detection',
|
|
193
|
+
name: 'Fake Success Detection',
|
|
194
|
+
description: 'Detects fake success patterns in API responses',
|
|
195
|
+
category: 'testing',
|
|
196
|
+
tier: 'pro',
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
id: 'auth-enforcement',
|
|
200
|
+
name: 'Auth Enforcement',
|
|
201
|
+
description: 'Validates authentication flow integrity',
|
|
202
|
+
category: 'security',
|
|
203
|
+
tier: 'pro',
|
|
204
|
+
},
|
|
205
|
+
];
|
|
206
|
+
const artifacts = [
|
|
207
|
+
{
|
|
208
|
+
type: 'report',
|
|
209
|
+
name: 'Reality Check Report',
|
|
210
|
+
format: 'json',
|
|
211
|
+
location: options.output || '.guardrail/reality-report.json',
|
|
212
|
+
description: 'Runtime behavior analysis results',
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
type: 'log',
|
|
216
|
+
name: 'Reality Flight Recorder',
|
|
217
|
+
format: 'json',
|
|
218
|
+
location: '.guardrail/reality-recorder.json',
|
|
219
|
+
description: 'Detailed runtime execution log',
|
|
220
|
+
},
|
|
221
|
+
];
|
|
222
|
+
const sampleReport = {
|
|
223
|
+
verdict: 'pass',
|
|
224
|
+
findings: [
|
|
225
|
+
{
|
|
226
|
+
type: 'fake-api-domain',
|
|
227
|
+
severity: 'critical',
|
|
228
|
+
message: 'Request to localhost:3000 detected',
|
|
229
|
+
url: 'http://localhost:3000/api/users',
|
|
230
|
+
},
|
|
231
|
+
],
|
|
232
|
+
timestamp: new Date().toISOString(),
|
|
233
|
+
};
|
|
234
|
+
return {
|
|
235
|
+
command: 'reality',
|
|
236
|
+
checks,
|
|
237
|
+
artifacts,
|
|
238
|
+
sampleReport,
|
|
239
|
+
estimatedDuration: '30-120 seconds',
|
|
240
|
+
tierRequired: 'pro',
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Generate preview for autopilot command
|
|
245
|
+
*/
|
|
246
|
+
function generateAutopilotPreview(projectPath, options = {}) {
|
|
247
|
+
const checks = [
|
|
248
|
+
{
|
|
249
|
+
id: 'code-analysis',
|
|
250
|
+
name: 'Code Analysis',
|
|
251
|
+
description: 'Comprehensive static code analysis',
|
|
252
|
+
category: 'quality',
|
|
253
|
+
tier: 'enterprise',
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
id: 'ai-recommendations',
|
|
257
|
+
name: 'AI Recommendations',
|
|
258
|
+
description: 'AI-powered code improvement suggestions',
|
|
259
|
+
category: 'quality',
|
|
260
|
+
tier: 'enterprise',
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
id: 'auto-fix',
|
|
264
|
+
name: 'Auto-Fix Suggestions',
|
|
265
|
+
description: 'Automated fix recommendations',
|
|
266
|
+
category: 'quality',
|
|
267
|
+
tier: 'enterprise',
|
|
268
|
+
},
|
|
269
|
+
];
|
|
270
|
+
const artifacts = [
|
|
271
|
+
{
|
|
272
|
+
type: 'report',
|
|
273
|
+
name: 'Autopilot Report',
|
|
274
|
+
format: 'json',
|
|
275
|
+
location: options.output || '.guardrail/autopilot-report.json',
|
|
276
|
+
description: 'Comprehensive analysis and recommendations',
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
type: 'data',
|
|
280
|
+
name: 'Fix Suggestions',
|
|
281
|
+
format: 'json',
|
|
282
|
+
location: '.guardrail/autopilot-fixes.json',
|
|
283
|
+
description: 'Automated fix suggestions',
|
|
284
|
+
},
|
|
285
|
+
];
|
|
286
|
+
const sampleReport = {
|
|
287
|
+
recommendations: [
|
|
288
|
+
{
|
|
289
|
+
type: 'security',
|
|
290
|
+
severity: 'high',
|
|
291
|
+
message: 'Hardcoded API key detected',
|
|
292
|
+
suggestion: 'Move to environment variables',
|
|
293
|
+
autoFixable: true,
|
|
294
|
+
},
|
|
295
|
+
],
|
|
296
|
+
timestamp: new Date().toISOString(),
|
|
297
|
+
};
|
|
298
|
+
return {
|
|
299
|
+
command: 'autopilot',
|
|
300
|
+
checks,
|
|
301
|
+
artifacts,
|
|
302
|
+
sampleReport,
|
|
303
|
+
estimatedDuration: '60-300 seconds',
|
|
304
|
+
tierRequired: 'enterprise',
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Format preview as text
|
|
309
|
+
*/
|
|
310
|
+
function formatPreviewAsText(preview) {
|
|
311
|
+
const lines = [];
|
|
312
|
+
lines.push('═══════════════════════════════════════════════════════════════');
|
|
313
|
+
lines.push(`PREVIEW: guardrail ${preview.command}`);
|
|
314
|
+
lines.push('═══════════════════════════════════════════════════════════════');
|
|
315
|
+
lines.push('');
|
|
316
|
+
lines.push(`Tier Required: ${preview.tierRequired.toUpperCase()}`);
|
|
317
|
+
if (preview.estimatedDuration) {
|
|
318
|
+
lines.push(`Estimated Duration: ${preview.estimatedDuration}`);
|
|
319
|
+
}
|
|
320
|
+
lines.push('');
|
|
321
|
+
lines.push('CHECKS THAT WOULD RUN:');
|
|
322
|
+
lines.push('');
|
|
323
|
+
for (const check of preview.checks) {
|
|
324
|
+
lines.push(` ✓ ${check.name} (${check.category})`);
|
|
325
|
+
lines.push(` ${check.description}`);
|
|
326
|
+
lines.push(` Tier: ${check.tier}`);
|
|
327
|
+
lines.push('');
|
|
328
|
+
}
|
|
329
|
+
lines.push('ARTIFACTS THAT WOULD BE GENERATED:');
|
|
330
|
+
lines.push('');
|
|
331
|
+
for (const artifact of preview.artifacts) {
|
|
332
|
+
lines.push(` ${artifact.type === 'report' ? '📄' : artifact.type === 'badge' ? '🛡️' : '📝'} ${artifact.name}`);
|
|
333
|
+
if (artifact.format) {
|
|
334
|
+
lines.push(` Format: ${artifact.format}`);
|
|
335
|
+
}
|
|
336
|
+
lines.push(` Location: ${artifact.location}`);
|
|
337
|
+
lines.push(` ${artifact.description}`);
|
|
338
|
+
lines.push('');
|
|
339
|
+
}
|
|
340
|
+
if (preview.sampleReport) {
|
|
341
|
+
lines.push('SAMPLE REPORT STRUCTURE:');
|
|
342
|
+
lines.push('');
|
|
343
|
+
lines.push(JSON.stringify(preview.sampleReport, null, 2));
|
|
344
|
+
lines.push('');
|
|
345
|
+
}
|
|
346
|
+
lines.push('═══════════════════════════════════════════════════════════════');
|
|
347
|
+
lines.push('This is a preview. No actual checks were executed.');
|
|
348
|
+
lines.push('Run the command without --preview to execute checks.');
|
|
349
|
+
lines.push('═══════════════════════════════════════════════════════════════');
|
|
350
|
+
return lines.join('\n');
|
|
351
|
+
}
|
|
352
|
+
//# sourceMappingURL=preview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../../src/commands/preview.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* guardrail check command
|
|
3
|
+
* Adapter/orchestrator that runs existing quality scripts
|
|
4
|
+
*/
|
|
5
|
+
import { Command } from 'commander';
|
|
6
|
+
export interface CheckResult {
|
|
7
|
+
script: string;
|
|
8
|
+
command: string;
|
|
9
|
+
exitCode: number;
|
|
10
|
+
success: boolean;
|
|
11
|
+
output?: string;
|
|
12
|
+
error?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface CheckOptions {
|
|
15
|
+
projectPath: string;
|
|
16
|
+
scripts?: string[];
|
|
17
|
+
json: boolean;
|
|
18
|
+
ci: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Run all quality checks
|
|
22
|
+
*/
|
|
23
|
+
export declare function runChecks(options: CheckOptions): Promise<{
|
|
24
|
+
results: CheckResult[];
|
|
25
|
+
allPassed: boolean;
|
|
26
|
+
}>;
|
|
27
|
+
/**
|
|
28
|
+
* Register check command
|
|
29
|
+
*/
|
|
30
|
+
export declare function registerCheckCommand(program: Command, printLogo: () => void): void;
|
|
31
|
+
//# sourceMappingURL=check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/commands/quality/check.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;CACb;AAyGD;;GAEG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC;IAC9D,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CAoDD;AA2DD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,IAAI,GACpB,IAAI,CA4DN"}
|