@superblocksteam/vite-plugin-file-sync 2.0.87-next.0 → 2.0.87
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/ai-service/agent/middleware.d.ts +1 -1
- package/dist/ai-service/agent/middleware.js +2 -2
- package/dist/ai-service/agent/middleware.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/api-executor.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/api-executor.js +13 -1
- package/dist/ai-service/agent/tools/apis/api-executor.js.map +1 -1
- package/dist/ai-service/index.d.ts +5 -0
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +23 -5
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/llm/client.js +2 -2
- package/dist/ai-service/llm/client.js.map +1 -1
- package/dist/ai-service/llm/stream/observers/logging.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/observers/logging.js +2 -4
- package/dist/ai-service/llm/stream/observers/logging.js.map +1 -1
- package/dist/ai-service/security/index.d.ts +2 -1
- package/dist/ai-service/security/index.d.ts.map +1 -1
- package/dist/ai-service/security/index.js +2 -1
- package/dist/ai-service/security/index.js.map +1 -1
- package/dist/ai-service/security/secret-scanner-service.d.ts +52 -0
- package/dist/ai-service/security/secret-scanner-service.d.ts.map +1 -0
- package/dist/ai-service/security/secret-scanner-service.js +290 -0
- package/dist/ai-service/security/secret-scanner-service.js.map +1 -0
- package/dist/ai-service/security/secret-scanner.d.ts +8 -15
- package/dist/ai-service/security/secret-scanner.d.ts.map +1 -1
- package/dist/ai-service/security/secret-scanner.js +1 -50
- package/dist/ai-service/security/secret-scanner.js.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.js +1 -5
- package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.js +53 -12
- package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
- package/dist/vite-plugin-yaml-types.d.ts +6 -2
- package/dist/vite-plugin-yaml-types.d.ts.map +1 -1
- package/dist/vite-plugin-yaml-types.js +82 -8
- package/dist/vite-plugin-yaml-types.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/stream/observers/logging.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/stream/observers/logging.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Provides secret scanning, safety classification, and other security-related functionality.
|
|
5
5
|
*/
|
|
6
|
-
export { scanContentForSecrets, isTrufflehogAvailable,
|
|
6
|
+
export { scanContentForSecrets, isTrufflehogAvailable, disposeSecretScanner, } from "./secret-scanner-service.js";
|
|
7
|
+
export { formatSecretFindings, redactSecrets, SecretRedactor, type SecretFinding, type SecretScanOptions, type SecretScanResult, } from "./secret-scanner.js";
|
|
7
8
|
export { classifyPromptSafety, createBlockedUserMessage, FAIL_OPEN_RESULT, FAIL_CLOSED_RESULT, type SafetyCategory, type SafetyClassificationResult, type SafetyClassificationOptions, type SafetyClassificationConfig, } from "./safety-classifier.js";
|
|
8
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai-service/security/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,GAChC,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai-service/security/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,GAChC,MAAM,wBAAwB,CAAC"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Provides secret scanning, safety classification, and other security-related functionality.
|
|
5
5
|
*/
|
|
6
|
-
export { scanContentForSecrets, isTrufflehogAvailable,
|
|
6
|
+
export { scanContentForSecrets, isTrufflehogAvailable, disposeSecretScanner, } from "./secret-scanner-service.js";
|
|
7
|
+
export { formatSecretFindings, redactSecrets, SecretRedactor, } from "./secret-scanner.js";
|
|
7
8
|
export { classifyPromptSafety, createBlockedUserMessage, FAIL_OPEN_RESULT, FAIL_CLOSED_RESULT, } from "./safety-classifier.js";
|
|
8
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai-service/security/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,cAAc,GAIf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,GAKnB,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai-service/security/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,cAAc,GAIf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,GAKnB,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Singleton secret scanner service with caching, concurrency control,
|
|
3
|
+
* and availability gating.
|
|
4
|
+
*
|
|
5
|
+
* Wraps the low-level TruffleHog process-spawning logic from
|
|
6
|
+
* `secret-scanner.ts` to prevent resource exhaustion in containers:
|
|
7
|
+
*
|
|
8
|
+
* - **Caching**: Content-hash keyed results avoid re-scanning identical
|
|
9
|
+
* content within a TTL window.
|
|
10
|
+
* - **In-flight deduplication**: Concurrent scans of identical content
|
|
11
|
+
* coalesce into a single TruffleHog invocation.
|
|
12
|
+
* - **Concurrency control**: A promise-based semaphore limits the number
|
|
13
|
+
* of concurrent TruffleHog child processes.
|
|
14
|
+
* - **Availability gating**: When TruffleHog is not installed, all scans
|
|
15
|
+
* immediately return empty findings without spawning processes or
|
|
16
|
+
* logging errors.
|
|
17
|
+
*/
|
|
18
|
+
import { type SecretScanOptions, type SecretScanResult } from "./secret-scanner.js";
|
|
19
|
+
/** Default timeout for a single TruffleHog scan (ms). */
|
|
20
|
+
export declare const DEFAULT_SCAN_TIMEOUT_MS = 10000;
|
|
21
|
+
/** Maximum number of cached scan results. */
|
|
22
|
+
export declare const MAX_CACHE_SIZE = 200;
|
|
23
|
+
/** Time-to-live for cached scan results (ms). */
|
|
24
|
+
export declare const CACHE_TTL_MS: number;
|
|
25
|
+
/** Maximum concurrent TruffleHog child processes. */
|
|
26
|
+
export declare const MAX_CONCURRENCY = 2;
|
|
27
|
+
/**
|
|
28
|
+
* Scans text content for secrets using TruffleHog, with caching,
|
|
29
|
+
* concurrency control, and availability gating.
|
|
30
|
+
*
|
|
31
|
+
* Drop-in replacement for the original `scanContentForSecrets` from
|
|
32
|
+
* `secret-scanner.ts` — same signature, same return type.
|
|
33
|
+
*
|
|
34
|
+
* @param content - The text content to scan for secrets
|
|
35
|
+
* @param options - Scan configuration options
|
|
36
|
+
* @returns Promise resolving to scan results with any findings
|
|
37
|
+
*/
|
|
38
|
+
export declare function scanContentForSecrets(content: string, options?: SecretScanOptions): Promise<SecretScanResult>;
|
|
39
|
+
/**
|
|
40
|
+
* Checks if TruffleHog is available on the system (cached after first call).
|
|
41
|
+
*
|
|
42
|
+
* @returns Promise resolving to true if TruffleHog is installed
|
|
43
|
+
*/
|
|
44
|
+
export declare function isTrufflehogAvailable(): Promise<boolean>;
|
|
45
|
+
/**
|
|
46
|
+
* Disposes the singleton scanner service, clearing all caches and
|
|
47
|
+
* resetting the availability flag.
|
|
48
|
+
*
|
|
49
|
+
* Primarily useful in tests or graceful shutdown.
|
|
50
|
+
*/
|
|
51
|
+
export declare function disposeSecretScanner(): void;
|
|
52
|
+
//# sourceMappingURL=secret-scanner-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secret-scanner-service.d.ts","sourceRoot":"","sources":["../../../src/ai-service/security/secret-scanner-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAKH,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAM7B,yDAAyD;AACzD,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAE9C,6CAA6C;AAC7C,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,iDAAiD;AACjD,eAAO,MAAM,YAAY,QAAgB,CAAC;AAE1C,qDAAqD;AACrD,eAAO,MAAM,eAAe,IAAI,CAAC;AA2QjC;;;;;;;;;;GAUG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAE3B;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,CAE9D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAK3C"}
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Singleton secret scanner service with caching, concurrency control,
|
|
3
|
+
* and availability gating.
|
|
4
|
+
*
|
|
5
|
+
* Wraps the low-level TruffleHog process-spawning logic from
|
|
6
|
+
* `secret-scanner.ts` to prevent resource exhaustion in containers:
|
|
7
|
+
*
|
|
8
|
+
* - **Caching**: Content-hash keyed results avoid re-scanning identical
|
|
9
|
+
* content within a TTL window.
|
|
10
|
+
* - **In-flight deduplication**: Concurrent scans of identical content
|
|
11
|
+
* coalesce into a single TruffleHog invocation.
|
|
12
|
+
* - **Concurrency control**: A promise-based semaphore limits the number
|
|
13
|
+
* of concurrent TruffleHog child processes.
|
|
14
|
+
* - **Availability gating**: When TruffleHog is not installed, all scans
|
|
15
|
+
* immediately return empty findings without spawning processes or
|
|
16
|
+
* logging errors.
|
|
17
|
+
*/
|
|
18
|
+
import { createHash } from "node:crypto";
|
|
19
|
+
import { getErrorMeta, getPrefixedLogger } from "../../util/logger.js";
|
|
20
|
+
import { isTrufflehogAvailable as checkTrufflehogAvailable, runTrufflehog, redactSecrets, } from "./secret-scanner.js";
|
|
21
|
+
// ---------------------------------------------------------------------------
|
|
22
|
+
// Constants
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
/** Default timeout for a single TruffleHog scan (ms). */
|
|
25
|
+
export const DEFAULT_SCAN_TIMEOUT_MS = 10_000;
|
|
26
|
+
/** Maximum number of cached scan results. */
|
|
27
|
+
export const MAX_CACHE_SIZE = 200;
|
|
28
|
+
/** Time-to-live for cached scan results (ms). */
|
|
29
|
+
export const CACHE_TTL_MS = 5 * 60 * 1000; // 5 minutes
|
|
30
|
+
/** Maximum concurrent TruffleHog child processes. */
|
|
31
|
+
export const MAX_CONCURRENCY = 2;
|
|
32
|
+
// ---------------------------------------------------------------------------
|
|
33
|
+
// SecretScannerService
|
|
34
|
+
// ---------------------------------------------------------------------------
|
|
35
|
+
/**
|
|
36
|
+
* Singleton service that wraps TruffleHog process spawning with caching,
|
|
37
|
+
* in-flight deduplication, concurrency control, and availability gating.
|
|
38
|
+
*
|
|
39
|
+
* Not intended to be instantiated directly — use the module-level
|
|
40
|
+
* {@link scanContentForSecrets} and {@link isTrufflehogAvailable} functions.
|
|
41
|
+
*/
|
|
42
|
+
class SecretScannerService {
|
|
43
|
+
/** Content hash -> cached findings. */
|
|
44
|
+
cache = new Map();
|
|
45
|
+
/** Content hash -> in-flight scan promise (coalesces duplicate requests). */
|
|
46
|
+
inflight = new Map();
|
|
47
|
+
/** Number of TruffleHog processes currently running. */
|
|
48
|
+
activeProcesses = 0;
|
|
49
|
+
/** Waiters blocked on a concurrency slot. */
|
|
50
|
+
waitQueue = [];
|
|
51
|
+
/**
|
|
52
|
+
* Tri-state availability flag:
|
|
53
|
+
* - `undefined` = not yet checked
|
|
54
|
+
* - `true` = TruffleHog is installed
|
|
55
|
+
* - `false` = TruffleHog is not installed
|
|
56
|
+
*/
|
|
57
|
+
available;
|
|
58
|
+
/**
|
|
59
|
+
* Scan content for secrets, applying caching and concurrency control.
|
|
60
|
+
*
|
|
61
|
+
* @param content - Text to scan
|
|
62
|
+
* @param options - Scan configuration
|
|
63
|
+
* @returns Scan result with findings and redacted content
|
|
64
|
+
*/
|
|
65
|
+
async scan(content, options = {}) {
|
|
66
|
+
const logger = getPrefixedLogger("[secret-scan]");
|
|
67
|
+
const { timeout = DEFAULT_SCAN_TIMEOUT_MS, verifiedOnly = false } = options;
|
|
68
|
+
// 1. Availability gate — only cache positive availability so transient
|
|
69
|
+
// failures (timeouts, SIGTERM) don't permanently disable scanning.
|
|
70
|
+
if (this.available !== true) {
|
|
71
|
+
const isAvailable = await checkTrufflehogAvailable();
|
|
72
|
+
if (isAvailable) {
|
|
73
|
+
this.available = true;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
logger.debug("TruffleHog not available; secret scanning skipped");
|
|
77
|
+
return {
|
|
78
|
+
success: false,
|
|
79
|
+
findings: [],
|
|
80
|
+
error: "Secret scanning unavailable: TruffleHog is not available",
|
|
81
|
+
hasVerifiedSecrets: false,
|
|
82
|
+
hasSecrets: false,
|
|
83
|
+
redactedContent: content,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// 2. Cache lookup
|
|
88
|
+
const cacheKey = this.hashContent(content, verifiedOnly);
|
|
89
|
+
const cached = this.cache.get(cacheKey);
|
|
90
|
+
if (cached && cached.expiresAt > Date.now()) {
|
|
91
|
+
const findings = cached.findings;
|
|
92
|
+
return {
|
|
93
|
+
success: true,
|
|
94
|
+
findings,
|
|
95
|
+
hasVerifiedSecrets: findings.some((f) => f.verified),
|
|
96
|
+
hasSecrets: findings.length > 0,
|
|
97
|
+
redactedContent: redactSecrets(content, findings),
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
// 3. In-flight deduplication — piggyback callers must also handle
|
|
101
|
+
// rejection so they return { success: false } instead of throwing.
|
|
102
|
+
const existing = this.inflight.get(cacheKey);
|
|
103
|
+
if (existing) {
|
|
104
|
+
try {
|
|
105
|
+
const findings = await existing;
|
|
106
|
+
return {
|
|
107
|
+
success: true,
|
|
108
|
+
findings,
|
|
109
|
+
hasVerifiedSecrets: findings.some((f) => f.verified),
|
|
110
|
+
hasSecrets: findings.length > 0,
|
|
111
|
+
redactedContent: redactSecrets(content, findings),
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
logger.error("Secret scan failed (deduped)", getErrorMeta(error));
|
|
116
|
+
return {
|
|
117
|
+
success: false,
|
|
118
|
+
findings: [],
|
|
119
|
+
error: error instanceof Error ? error.message : String(error),
|
|
120
|
+
hasVerifiedSecrets: false,
|
|
121
|
+
hasSecrets: false,
|
|
122
|
+
redactedContent: content,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
// 4. Spawn TruffleHog with concurrency control
|
|
127
|
+
const scanPromise = this.runWithConcurrencyControl(content, timeout, verifiedOnly, cacheKey);
|
|
128
|
+
this.inflight.set(cacheKey, scanPromise);
|
|
129
|
+
try {
|
|
130
|
+
const findings = await scanPromise;
|
|
131
|
+
return {
|
|
132
|
+
success: true,
|
|
133
|
+
findings,
|
|
134
|
+
hasVerifiedSecrets: findings.some((f) => f.verified),
|
|
135
|
+
hasSecrets: findings.length > 0,
|
|
136
|
+
redactedContent: redactSecrets(content, findings),
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
catch (error) {
|
|
140
|
+
logger.error("Secret scan failed", getErrorMeta(error));
|
|
141
|
+
return {
|
|
142
|
+
success: false,
|
|
143
|
+
findings: [],
|
|
144
|
+
error: error instanceof Error ? error.message : String(error),
|
|
145
|
+
hasVerifiedSecrets: false,
|
|
146
|
+
hasSecrets: false,
|
|
147
|
+
redactedContent: content,
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
finally {
|
|
151
|
+
this.inflight.delete(cacheKey);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Check if TruffleHog is available. Only caches positive results so
|
|
156
|
+
* transient failures don't permanently disable scanning.
|
|
157
|
+
*/
|
|
158
|
+
async isAvailable() {
|
|
159
|
+
if (this.available !== true) {
|
|
160
|
+
const isAvailable = await checkTrufflehogAvailable();
|
|
161
|
+
if (isAvailable) {
|
|
162
|
+
this.available = true;
|
|
163
|
+
}
|
|
164
|
+
return isAvailable;
|
|
165
|
+
}
|
|
166
|
+
return true;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Dispose of the singleton — clears the cache and resets availability.
|
|
170
|
+
*/
|
|
171
|
+
dispose() {
|
|
172
|
+
this.cache.clear();
|
|
173
|
+
this.inflight.clear();
|
|
174
|
+
this.available = undefined;
|
|
175
|
+
}
|
|
176
|
+
// -----------------------------------------------------------------------
|
|
177
|
+
// Private helpers
|
|
178
|
+
// -----------------------------------------------------------------------
|
|
179
|
+
/**
|
|
180
|
+
* Compute a cache key from content and scan flags.
|
|
181
|
+
*/
|
|
182
|
+
hashContent(content, verifiedOnly) {
|
|
183
|
+
const hash = createHash("sha256");
|
|
184
|
+
hash.update(content);
|
|
185
|
+
hash.update(verifiedOnly ? ":v" : ":a");
|
|
186
|
+
return hash.digest("hex");
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Acquire a concurrency slot, run TruffleHog, cache the result, and
|
|
190
|
+
* release the slot.
|
|
191
|
+
*/
|
|
192
|
+
async runWithConcurrencyControl(content, timeout, verifiedOnly, cacheKey) {
|
|
193
|
+
await this.acquireSlot();
|
|
194
|
+
try {
|
|
195
|
+
const findings = await runTrufflehog(content, timeout, verifiedOnly);
|
|
196
|
+
// Cache successful results
|
|
197
|
+
this.cacheResult(cacheKey, findings);
|
|
198
|
+
return findings;
|
|
199
|
+
}
|
|
200
|
+
finally {
|
|
201
|
+
this.releaseSlot();
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Wait until a concurrency slot is available.
|
|
206
|
+
*/
|
|
207
|
+
async acquireSlot() {
|
|
208
|
+
if (this.activeProcesses < MAX_CONCURRENCY) {
|
|
209
|
+
this.activeProcesses++;
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
212
|
+
return new Promise((resolve) => {
|
|
213
|
+
this.waitQueue.push(resolve);
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Release a concurrency slot and wake the next waiter.
|
|
218
|
+
*/
|
|
219
|
+
releaseSlot() {
|
|
220
|
+
const next = this.waitQueue.shift();
|
|
221
|
+
if (next) {
|
|
222
|
+
// Hand the slot directly to the next waiter
|
|
223
|
+
next();
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
this.activeProcesses--;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Store findings in the cache, evicting the oldest entry if at capacity.
|
|
231
|
+
*/
|
|
232
|
+
cacheResult(key, findings) {
|
|
233
|
+
if (this.cache.size >= MAX_CACHE_SIZE) {
|
|
234
|
+
// Evict the oldest entry (first key in insertion order)
|
|
235
|
+
const oldest = this.cache.keys().next().value;
|
|
236
|
+
if (oldest !== undefined) {
|
|
237
|
+
this.cache.delete(oldest);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
this.cache.set(key, {
|
|
241
|
+
findings,
|
|
242
|
+
expiresAt: Date.now() + CACHE_TTL_MS,
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
// ---------------------------------------------------------------------------
|
|
247
|
+
// Module-level singleton
|
|
248
|
+
// ---------------------------------------------------------------------------
|
|
249
|
+
let instance;
|
|
250
|
+
function getInstance() {
|
|
251
|
+
if (!instance) {
|
|
252
|
+
instance = new SecretScannerService();
|
|
253
|
+
}
|
|
254
|
+
return instance;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Scans text content for secrets using TruffleHog, with caching,
|
|
258
|
+
* concurrency control, and availability gating.
|
|
259
|
+
*
|
|
260
|
+
* Drop-in replacement for the original `scanContentForSecrets` from
|
|
261
|
+
* `secret-scanner.ts` — same signature, same return type.
|
|
262
|
+
*
|
|
263
|
+
* @param content - The text content to scan for secrets
|
|
264
|
+
* @param options - Scan configuration options
|
|
265
|
+
* @returns Promise resolving to scan results with any findings
|
|
266
|
+
*/
|
|
267
|
+
export async function scanContentForSecrets(content, options = {}) {
|
|
268
|
+
return getInstance().scan(content, options);
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Checks if TruffleHog is available on the system (cached after first call).
|
|
272
|
+
*
|
|
273
|
+
* @returns Promise resolving to true if TruffleHog is installed
|
|
274
|
+
*/
|
|
275
|
+
export async function isTrufflehogAvailable() {
|
|
276
|
+
return getInstance().isAvailable();
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Disposes the singleton scanner service, clearing all caches and
|
|
280
|
+
* resetting the availability flag.
|
|
281
|
+
*
|
|
282
|
+
* Primarily useful in tests or graceful shutdown.
|
|
283
|
+
*/
|
|
284
|
+
export function disposeSecretScanner() {
|
|
285
|
+
if (instance) {
|
|
286
|
+
instance.dispose();
|
|
287
|
+
instance = undefined;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
//# sourceMappingURL=secret-scanner-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secret-scanner-service.js","sourceRoot":"","sources":["../../../src/ai-service/security/secret-scanner-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,24 +66,17 @@ export interface SecretScanResult {
|
|
|
66
66
|
*/
|
|
67
67
|
export declare function redactSecrets(content: string, findings: SecretFinding[]): string;
|
|
68
68
|
/**
|
|
69
|
-
*
|
|
69
|
+
* Runs TruffleHog CLI using stdin and returns parsed findings.
|
|
70
70
|
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
71
|
+
* Uses TruffleHog's built-in detectors for common secret types (Stripe, GitHub,
|
|
72
|
+
* AWS, private keys, etc.) without custom configuration.
|
|
73
73
|
*
|
|
74
|
-
* @param content -
|
|
75
|
-
* @param
|
|
76
|
-
* @
|
|
77
|
-
*
|
|
78
|
-
* @example
|
|
79
|
-
* ```typescript
|
|
80
|
-
* const result = await scanContentForSecrets(userPrompt);
|
|
81
|
-
* if (result.hasVerifiedSecrets) {
|
|
82
|
-
* console.log("Verified secrets found:", result.findings.filter(f => f.verified));
|
|
83
|
-
* }
|
|
84
|
-
* ```
|
|
74
|
+
* @param content - Content to scan for secrets (piped to stdin)
|
|
75
|
+
* @param timeout - Timeout in milliseconds
|
|
76
|
+
* @param verifiedOnly - Whether to only return verified secrets
|
|
77
|
+
* @returns Promise resolving to array of SecretFinding objects
|
|
85
78
|
*/
|
|
86
|
-
export declare function
|
|
79
|
+
export declare function runTrufflehog(content: string, timeout: number, verifiedOnly: boolean): Promise<SecretFinding[]>;
|
|
87
80
|
/**
|
|
88
81
|
* Checks if TruffleHog is available on the system.
|
|
89
82
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secret-scanner.d.ts","sourceRoot":"","sources":["../../../src/ai-service/security/secret-scanner.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkCH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mFAAmF;IACnF,YAAY,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,QAAQ,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,sBAAsB;IACtB,cAAc,CAAC,EAAE;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8FAA8F;IAC9F,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,+BAA+B;IAC/B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,uDAAuD;IACvD,UAAU,EAAE,OAAO,CAAC;IACpB,sEAAsE;IACtE,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,aAAa,EAAE,GACxB,MAAM,CAoBR;AA4DD
|
|
1
|
+
{"version":3,"file":"secret-scanner.d.ts","sourceRoot":"","sources":["../../../src/ai-service/security/secret-scanner.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkCH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mFAAmF;IACnF,YAAY,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,QAAQ,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,sBAAsB;IACtB,cAAc,CAAC,EAAE;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8FAA8F;IAC9F,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,+BAA+B;IAC/B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,uDAAuD;IACvD,UAAU,EAAE,OAAO,CAAC;IACpB,sEAAsE;IACtE,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,aAAa,EAAE,GACxB,MAAM,CAoBR;AA4DD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,aAAa,EAAE,CAAC,CAkE1B;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,CAmB9D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAAkB;IAExC;;;;OAIG;gBACS,QAAQ,EAAE,aAAa,EAAE;IAOrC;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAc/B;;;;;;;OAOG;IACH,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAiBnC;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;CACF;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,CAmBtE"}
|
|
@@ -111,55 +111,6 @@ function generateRedactedValue(raw) {
|
|
|
111
111
|
const prefixLength = Math.min(8, Math.floor(raw.length / 3));
|
|
112
112
|
return raw.slice(0, prefixLength) + "****";
|
|
113
113
|
}
|
|
114
|
-
/**
|
|
115
|
-
* Scans text content for secrets using TruffleHog.
|
|
116
|
-
*
|
|
117
|
-
* This function pipes content directly to TruffleHog's stdin command
|
|
118
|
-
* and returns any detected secrets.
|
|
119
|
-
*
|
|
120
|
-
* @param content - The text content to scan for secrets
|
|
121
|
-
* @param options - Scan configuration options
|
|
122
|
-
* @returns Promise resolving to scan results with any findings
|
|
123
|
-
*
|
|
124
|
-
* @example
|
|
125
|
-
* ```typescript
|
|
126
|
-
* const result = await scanContentForSecrets(userPrompt);
|
|
127
|
-
* if (result.hasVerifiedSecrets) {
|
|
128
|
-
* console.log("Verified secrets found:", result.findings.filter(f => f.verified));
|
|
129
|
-
* }
|
|
130
|
-
* ```
|
|
131
|
-
*/
|
|
132
|
-
export async function scanContentForSecrets(content, options = {}) {
|
|
133
|
-
const { timeout = 5000, verifiedOnly = false } = options;
|
|
134
|
-
const logger = getPrefixedLogger("[secret-scan]");
|
|
135
|
-
const startTime = performance.now();
|
|
136
|
-
logger.debug(`Starting secret scan (contentLength=${content.length}, timeout=${timeout}ms)`);
|
|
137
|
-
try {
|
|
138
|
-
const findings = await runTrufflehog(content, timeout, verifiedOnly);
|
|
139
|
-
const duration = performance.now() - startTime;
|
|
140
|
-
logger.debug(`TruffleHog scan completed in ${duration.toFixed(2)}ms: found ${findings.length} potential secrets`);
|
|
141
|
-
const redactedContent = redactSecrets(content, findings);
|
|
142
|
-
return {
|
|
143
|
-
success: true,
|
|
144
|
-
findings,
|
|
145
|
-
hasVerifiedSecrets: findings.some((f) => f.verified),
|
|
146
|
-
hasSecrets: findings.length > 0,
|
|
147
|
-
redactedContent,
|
|
148
|
-
};
|
|
149
|
-
}
|
|
150
|
-
catch (error) {
|
|
151
|
-
const duration = performance.now() - startTime;
|
|
152
|
-
logger.error(`Secret scan failed after ${duration.toFixed(2)}ms: `, getErrorMeta(error));
|
|
153
|
-
return {
|
|
154
|
-
success: false,
|
|
155
|
-
findings: [],
|
|
156
|
-
error: error instanceof Error ? error.message : String(error),
|
|
157
|
-
hasVerifiedSecrets: false,
|
|
158
|
-
hasSecrets: false,
|
|
159
|
-
redactedContent: content, // Return original content on error
|
|
160
|
-
};
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
114
|
/**
|
|
164
115
|
* Runs TruffleHog CLI using stdin and returns parsed findings.
|
|
165
116
|
*
|
|
@@ -171,7 +122,7 @@ export async function scanContentForSecrets(content, options = {}) {
|
|
|
171
122
|
* @param verifiedOnly - Whether to only return verified secrets
|
|
172
123
|
* @returns Promise resolving to array of SecretFinding objects
|
|
173
124
|
*/
|
|
174
|
-
async function runTrufflehog(content, timeout, verifiedOnly) {
|
|
125
|
+
export async function runTrufflehog(content, timeout, verifiedOnly) {
|
|
175
126
|
return new Promise((resolve, reject) => {
|
|
176
127
|
const args = ["stdin", "--json"];
|
|
177
128
|
if (!shouldSkipNoUpdateFlag()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secret-scanner.js","sourceRoot":"","sources":["../../../src/ai-service/security/secret-scanner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"secret-scanner.js","sourceRoot":"","sources":["../../../src/ai-service/security/secret-scanner.ts"],"names":[],"mappings":"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"}
|