appsec-agent 1.7.0 → 1.8.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/README.md +57 -1
- package/conf/appsec_agent.yaml +5 -0
- package/dist/bin/agent-run.js +2 -0
- package/dist/bin/agent-run.js.map +1 -1
- package/dist/conf/appsec_agent.yaml +5 -0
- package/dist/src/agent_actions.d.ts +6 -0
- package/dist/src/agent_actions.d.ts.map +1 -1
- package/dist/src/agent_actions.js +63 -0
- package/dist/src/agent_actions.js.map +1 -1
- package/dist/src/agent_options.d.ts +5 -0
- package/dist/src/agent_options.d.ts.map +1 -1
- package/dist/src/agent_options.js +33 -0
- package/dist/src/agent_options.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/main.d.ts.map +1 -1
- package/dist/src/main.js +99 -2
- package/dist/src/main.js.map +1 -1
- package/dist/src/schemas/qa_context.d.ts +69 -0
- package/dist/src/schemas/qa_context.d.ts.map +1 -0
- package/dist/src/schemas/qa_context.js +105 -0
- package/dist/src/schemas/qa_context.js.map +1 -0
- package/dist/src/schemas/security_fix.d.ts +10 -0
- package/dist/src/schemas/security_fix.d.ts.map +1 -1
- package/dist/src/schemas/security_fix.js +12 -0
- package/dist/src/schemas/security_fix.js.map +1 -1
- package/dist/src/tools/bash_tool.d.ts +32 -0
- package/dist/src/tools/bash_tool.d.ts.map +1 -0
- package/dist/src/tools/bash_tool.js +125 -0
- package/dist/src/tools/bash_tool.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -143,6 +143,15 @@ A specialized agent for generating precise security fixes that can:
|
|
|
143
143
|
- Support retry workflows when a previous fix fails validation
|
|
144
144
|
- Use `Read` and `Grep` tools for additional source context when `--src_dir` is provided
|
|
145
145
|
|
|
146
|
+
### QA Verifier Agent (`qa_verifier`)
|
|
147
|
+
A specialized agent for verifying security fixes that can:
|
|
148
|
+
- Run the project's test suite to verify a security fix doesn't break functionality
|
|
149
|
+
- Analyze test failures to determine if they are caused by the fix or are pre-existing
|
|
150
|
+
- Provide a structured JSON verdict (`QaVerdict`) with pass/fail status, failure details, and suggestions
|
|
151
|
+
- Execute shell commands via a restricted Bash tool with security constraints
|
|
152
|
+
- Support custom test commands, setup commands, and environment variables
|
|
153
|
+
- Accept deployment context for environment-aware verification
|
|
154
|
+
|
|
146
155
|
### Threat Modeler (`threat_modeler`)
|
|
147
156
|
A specialized agent for comprehensive threat modeling that can:
|
|
148
157
|
- Generate ASCII text-based Data Flow Diagrams (DFD)
|
|
@@ -321,6 +330,48 @@ The agent returns a structured `FixOutput`:
|
|
|
321
330
|
}
|
|
322
331
|
```
|
|
323
332
|
|
|
333
|
+
### QA Verifier Example
|
|
334
|
+
```bash
|
|
335
|
+
# Verify a security fix by running the project's tests
|
|
336
|
+
$ npx agent-run -r qa_verifier --qa-context qa_context.json
|
|
337
|
+
|
|
338
|
+
# With source directory for additional context
|
|
339
|
+
$ npx agent-run -r qa_verifier --qa-context qa_context.json -s ./src
|
|
340
|
+
|
|
341
|
+
# Custom output file
|
|
342
|
+
$ npx agent-run -r qa_verifier --qa-context qa_context.json -o qa_verdict.json
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
The QA context JSON file should follow this structure:
|
|
346
|
+
|
|
347
|
+
```json
|
|
348
|
+
{
|
|
349
|
+
"pr_url": "https://github.com/owner/repo/pull/42",
|
|
350
|
+
"test_command": "npm test",
|
|
351
|
+
"test_framework": "jest",
|
|
352
|
+
"setup_commands": "npm ci",
|
|
353
|
+
"timeout_seconds": 120,
|
|
354
|
+
"block_on_failure": true,
|
|
355
|
+
"deployment_context": "Production Kubernetes cluster",
|
|
356
|
+
"environment_variables": {
|
|
357
|
+
"NODE_ENV": "test"
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
```
|
|
361
|
+
|
|
362
|
+
The agent returns a structured `QaVerdict`:
|
|
363
|
+
|
|
364
|
+
```json
|
|
365
|
+
{
|
|
366
|
+
"pass": true,
|
|
367
|
+
"test_exit_code": 0,
|
|
368
|
+
"failures": [],
|
|
369
|
+
"logs": "All 235 tests passed",
|
|
370
|
+
"analysis": "All tests pass after the security fix.",
|
|
371
|
+
"suggestions": []
|
|
372
|
+
}
|
|
373
|
+
```
|
|
374
|
+
|
|
324
375
|
### Threat Modeler Example
|
|
325
376
|
```bash
|
|
326
377
|
# Run threat modeler on current directory
|
|
@@ -427,6 +478,9 @@ appsec-agent/
|
|
|
427
478
|
│ │ ├── security_report.ts # JSON schema for code review reports
|
|
428
479
|
│ │ ├── threat_model_report.ts # JSON schema for threat model reports
|
|
429
480
|
│ │ └── security_fix.ts # JSON schema for code fixer output
|
|
481
|
+
│ │ └── qa_context.ts # JSON schema for QA verifier verdict
|
|
482
|
+
│ ├── tools/
|
|
483
|
+
│ │ └── bash_tool.ts # Restricted Bash tool for QA verifier
|
|
430
484
|
│ └── __tests__/
|
|
431
485
|
│ ├── concurrency.test.ts # Concurrency and thread-safety tests
|
|
432
486
|
│ └── ... # Other test files
|
|
@@ -455,6 +509,7 @@ appsec-agent/
|
|
|
455
509
|
- `getThreatModelerOptions()`: Gets options for threat modeler
|
|
456
510
|
- `getDiffReviewerOptions()`: Gets options for PR diff-focused code reviewer
|
|
457
511
|
- `getCodeFixerOptions()`: Gets options for code fixer agent (always uses JSON schema output)
|
|
512
|
+
- `getQaVerifierOptions()`: Gets options for QA verifier agent (Read, Grep, Bash tools + JSON schema output)
|
|
458
513
|
|
|
459
514
|
#### Diff Context Functions
|
|
460
515
|
|
|
@@ -548,10 +603,11 @@ $ npm test -- concurrency.test.ts
|
|
|
548
603
|
### Test Results
|
|
549
604
|
|
|
550
605
|
All tests pass including:
|
|
551
|
-
- ✅
|
|
606
|
+
- ✅ 235 total tests across 11 suites
|
|
552
607
|
- ✅ 11 concurrency tests
|
|
553
608
|
- ✅ 51 diff context validation tests
|
|
554
609
|
- ✅ 9 code fixer tests (main + agent options)
|
|
610
|
+
- ✅ 5 QA verifier tests
|
|
555
611
|
- ✅ Full coverage of core functionality
|
|
556
612
|
|
|
557
613
|
## 📚 References
|
package/conf/appsec_agent.yaml
CHANGED
|
@@ -38,6 +38,11 @@ default: &default
|
|
|
38
38
|
system_prompt: "You are an expert security engineer specializing in fixing vulnerabilities in code. You receive a finding with code context and must produce a precise, minimal fix that resolves the security issue while preserving the original code's functionality and indentation. Only modify the affected lines. Always use the recommended secure alternatives when applicable."
|
|
39
39
|
output_format: "json"
|
|
40
40
|
verbose: True
|
|
41
|
+
qa_verifier:
|
|
42
|
+
options:
|
|
43
|
+
system_prompt: "You are a QA verification engineer. Your task is to verify security fixes by running the project's test suite and analyzing the results. You have access to the project source code and can execute shell commands to run tests. First, set up the environment (install dependencies if needed), then run the test suite. If tests fail, analyze the failures to determine if they are caused by the security fix or are pre-existing issues. Provide a structured verdict JSON with your findings."
|
|
44
|
+
output_format: "json"
|
|
45
|
+
verbose: True
|
|
41
46
|
|
|
42
47
|
|
|
43
48
|
development:
|
package/dist/bin/agent-run.js
CHANGED
|
@@ -60,6 +60,7 @@ program
|
|
|
60
60
|
.option('-c, --context <context>', 'Additional context for the code review (e.g., deployment environment, architecture, compliance requirements)')
|
|
61
61
|
.option('--diff-context <file>', 'JSON file with diff context for PR-focused code review (optimizes token usage)')
|
|
62
62
|
.option('--fix-context <file>', 'JSON file with fix context for code_fixer role (finding + code context)')
|
|
63
|
+
.option('--qa-context <file>', 'JSON file with QA context for qa_verifier role (PR URL + test configuration)')
|
|
63
64
|
.option('--diff-max-tokens <n>', 'Max tokens per batch for PR chunking (0 = disabled). Overrides config.')
|
|
64
65
|
.option('--diff-max-batches <n>', 'Max batches per PR run (e.g. 3). Overrides config.')
|
|
65
66
|
.option('--diff-max-files <n>', 'Max files to include in PR review; rest skipped. Overrides config.')
|
|
@@ -134,6 +135,7 @@ const args = {
|
|
|
134
135
|
context: options.context,
|
|
135
136
|
diff_context: options.diffContext,
|
|
136
137
|
fix_context: options.fixContext,
|
|
138
|
+
qa_context: options.qaContext,
|
|
137
139
|
model: options.model,
|
|
138
140
|
diff_max_tokens_per_batch: options.diffMaxTokens !== undefined ? parseInt(options.diffMaxTokens, 10) : undefined,
|
|
139
141
|
diff_max_batches: options.diffMaxBatches !== undefined ? parseInt(options.diffMaxBatches, 10) : undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-run.js","sourceRoot":"","sources":["../../bin/agent-run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-run.js","sourceRoot":"","sources":["../../bin/agent-run.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,11 @@ default: &default
|
|
|
38
38
|
system_prompt: "You are an expert security engineer specializing in fixing vulnerabilities in code. You receive a finding with code context and must produce a precise, minimal fix that resolves the security issue while preserving the original code's functionality and indentation. Only modify the affected lines. Always use the recommended secure alternatives when applicable."
|
|
39
39
|
output_format: "json"
|
|
40
40
|
verbose: True
|
|
41
|
+
qa_verifier:
|
|
42
|
+
options:
|
|
43
|
+
system_prompt: "You are a QA verification engineer. Your task is to verify security fixes by running the project's test suite and analyzing the results. You have access to the project source code and can execute shell commands to run tests. First, set up the environment (install dependencies if needed), then run the test suite. If tests fail, analyze the failures to determine if they are caused by the security fix or are pre-existing issues. Provide a structured verdict JSON with your findings."
|
|
44
|
+
output_format: "json"
|
|
45
|
+
verbose: True
|
|
41
46
|
|
|
42
47
|
|
|
43
48
|
development:
|
|
@@ -14,6 +14,7 @@ export interface AgentArgs {
|
|
|
14
14
|
context?: string;
|
|
15
15
|
diff_context?: string;
|
|
16
16
|
fix_context?: string;
|
|
17
|
+
qa_context?: string;
|
|
17
18
|
model?: string;
|
|
18
19
|
diff_max_tokens_per_batch?: number;
|
|
19
20
|
diff_max_batches?: number;
|
|
@@ -43,6 +44,11 @@ export declare class AgentActions {
|
|
|
43
44
|
* Returns the structured fix JSON and prints cost to stdout.
|
|
44
45
|
*/
|
|
45
46
|
codeFixerWithOptions(userPrompt: string, srcDir?: string | null): Promise<string>;
|
|
47
|
+
/**
|
|
48
|
+
* QA verifier agent with structured JSON output.
|
|
49
|
+
* Runs project tests, analyzes results, and returns a QaVerdict.
|
|
50
|
+
*/
|
|
51
|
+
qaVerifierWithOptions(userPrompt: string, srcDir?: string | null): Promise<string>;
|
|
46
52
|
/**
|
|
47
53
|
* PR diff-focused code reviewer with options
|
|
48
54
|
* Optimized for reviewing only changed code from a pull request
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent_actions.d.ts","sourceRoot":"","sources":["../../src/agent_actions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAOD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,IAAI,CAAY;IACxB,OAAO,CAAC,mBAAmB,CAA2B;gBAC1C,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS;IAMtE;;OAEG;IACG,4BAA4B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAiJ/F;;OAEG;IACG,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoElE;;OAEG;IACG,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA4DxE;;;OAGG;IACG,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAqDvF;;;;OAIG;IACG,uBAAuB,CAC3B,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,EACtB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GACvD,OAAO,CAAC,MAAM,CAAC;CAmEnB"}
|
|
1
|
+
{"version":3,"file":"agent_actions.d.ts","sourceRoot":"","sources":["../../src/agent_actions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAOD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,IAAI,CAAY;IACxB,OAAO,CAAC,mBAAmB,CAA2B;gBAC1C,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS;IAMtE;;OAEG;IACG,4BAA4B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAiJ/F;;OAEG;IACG,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoElE;;OAEG;IACG,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA4DxE;;;OAGG;IACG,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAqDvF;;;OAGG;IACG,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAqDxF;;;;OAIG;IACG,uBAAuB,CAC3B,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,EACtB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GACvD,OAAO,CAAC,MAAM,CAAC;CAmEnB"}
|
|
@@ -370,6 +370,69 @@ class AgentActions {
|
|
|
370
370
|
console.log();
|
|
371
371
|
return structuredJson;
|
|
372
372
|
}
|
|
373
|
+
/**
|
|
374
|
+
* QA verifier agent with structured JSON output.
|
|
375
|
+
* Runs project tests, analyzes results, and returns a QaVerdict.
|
|
376
|
+
*/
|
|
377
|
+
async qaVerifierWithOptions(userPrompt, srcDir) {
|
|
378
|
+
const agentOptions = new agent_options_1.AgentOptions(this.confDict, this.environment, this.args.model);
|
|
379
|
+
const options = agentOptions.getQaVerifierOptions(this.args.role, srcDir);
|
|
380
|
+
let cursor = null;
|
|
381
|
+
let structuredJson = '';
|
|
382
|
+
try {
|
|
383
|
+
cursor = new blinking_cursor_1.BlinkingCursor();
|
|
384
|
+
cursor.start();
|
|
385
|
+
try {
|
|
386
|
+
for await (const message of (0, llm_query_1.llmQuery)({ prompt: userPrompt, options })) {
|
|
387
|
+
if (message.type === 'stream_event') {
|
|
388
|
+
if (cursor)
|
|
389
|
+
cursor.stop();
|
|
390
|
+
}
|
|
391
|
+
else if (message.type === 'assistant') {
|
|
392
|
+
if (cursor)
|
|
393
|
+
cursor.stop();
|
|
394
|
+
const assistantMsg = message;
|
|
395
|
+
if (this.args.verbose && assistantMsg.message.content) {
|
|
396
|
+
for (const block of assistantMsg.message.content) {
|
|
397
|
+
if (block.type === 'text') {
|
|
398
|
+
console.log(`Claude: ${block.text}`);
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
else if (message.type === 'result') {
|
|
404
|
+
if (cursor)
|
|
405
|
+
cursor.stop();
|
|
406
|
+
const resultMsg = message;
|
|
407
|
+
if (resultMsg.structured_output) {
|
|
408
|
+
structuredJson = JSON.stringify(resultMsg.structured_output, null, 2);
|
|
409
|
+
}
|
|
410
|
+
if (resultMsg.total_cost_usd && resultMsg.total_cost_usd > 0) {
|
|
411
|
+
console.log(`\nCost: $${resultMsg.total_cost_usd.toFixed(4)}`);
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
finally {
|
|
417
|
+
if (cursor)
|
|
418
|
+
cursor.stop();
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
catch (error) {
|
|
422
|
+
if (cursor) {
|
|
423
|
+
try {
|
|
424
|
+
cursor.stop();
|
|
425
|
+
}
|
|
426
|
+
catch {
|
|
427
|
+
// Ignore if cursor cleanup fails
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
console.error('Error during QA verification:', error);
|
|
431
|
+
throw error;
|
|
432
|
+
}
|
|
433
|
+
console.log();
|
|
434
|
+
return structuredJson;
|
|
435
|
+
}
|
|
373
436
|
/**
|
|
374
437
|
* PR diff-focused code reviewer with options
|
|
375
438
|
* Optimized for reviewing only changed code from a pull request
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent_actions.js","sourceRoot":"","sources":["../../src/agent_actions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent_actions.js","sourceRoot":"","sources":["../../src/agent_actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -62,5 +62,10 @@ export declare class AgentOptions {
|
|
|
62
62
|
* @param srcDir - Optional source directory path for additional context
|
|
63
63
|
*/
|
|
64
64
|
getCodeFixerOptions(role?: string, srcDir?: string | null): Options;
|
|
65
|
+
/**
|
|
66
|
+
* Get options for the QA verifier agent
|
|
67
|
+
* Uses Read, Grep, and Bash tools for test execution and analysis
|
|
68
|
+
*/
|
|
69
|
+
getQaVerifierOptions(role?: string, srcDir?: string | null): Options;
|
|
65
70
|
}
|
|
66
71
|
//# sourceMappingURL=agent_options.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent_options.d.ts","sourceRoot":"","sources":["../../src/agent_options.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAqC,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACxG,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"agent_options.d.ts","sourceRoot":"","sources":["../../src/agent_options.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAqC,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACxG,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAMrC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,GAAG,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,YAAY,CAAsB;gBAE9B,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,GAAE,MAAiB;IAM/E;;;OAGG;IACH,eAAe,IAAI,YAAY,EAAE;IAIjC;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAIzB;;OAEG;IACH,sBAAsB,EAAE,UAAU,CAqBjC;IAED;;OAEG;IACH,0BAA0B,CAAC,IAAI,GAAE,MAA6B,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAgBhG;;;;OAIG;IACH,sBAAsB,CAAC,IAAI,GAAE,MAAwB,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO;IA4BtF;;;;OAIG;IACH,uBAAuB,CAAC,IAAI,GAAE,MAAyB,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO;IA6BxF;;;;;;;OAOG;IACH,sBAAsB,CAAC,IAAI,GAAE,MAAwB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO;IAkD9G;;;;;;OAMG;IACH,mBAAmB,CAAC,IAAI,GAAE,MAAqB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IA+BjF;;;OAGG;IACH,oBAAoB,CAAC,IAAI,GAAE,MAAsB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;CA+BpF"}
|
|
@@ -9,6 +9,7 @@ exports.AgentOptions = void 0;
|
|
|
9
9
|
const security_report_1 = require("./schemas/security_report");
|
|
10
10
|
const threat_model_report_1 = require("./schemas/threat_model_report");
|
|
11
11
|
const security_fix_1 = require("./schemas/security_fix");
|
|
12
|
+
const qa_context_1 = require("./schemas/qa_context");
|
|
12
13
|
class AgentOptions {
|
|
13
14
|
confDict;
|
|
14
15
|
environment;
|
|
@@ -210,6 +211,38 @@ You have access to Read and Write tools if you need to:
|
|
|
210
211
|
};
|
|
211
212
|
return options;
|
|
212
213
|
}
|
|
214
|
+
/**
|
|
215
|
+
* Get options for the QA verifier agent
|
|
216
|
+
* Uses Read, Grep, and Bash tools for test execution and analysis
|
|
217
|
+
*/
|
|
218
|
+
getQaVerifierOptions(role = 'qa_verifier', srcDir) {
|
|
219
|
+
const roleConfig = this.confDict[this.environment]?.[role];
|
|
220
|
+
let systemPrompt = roleConfig?.options?.system_prompt ||
|
|
221
|
+
'You are a QA verification engineer. Your task is to verify security fixes by running the project\'s test suite ' +
|
|
222
|
+
'and analyzing the results. You have access to the project source code and can execute shell commands to run tests. ' +
|
|
223
|
+
'First, set up the environment (install dependencies if needed), then run the test suite. ' +
|
|
224
|
+
'If tests fail, analyze the failures to determine if they are caused by the security fix or are pre-existing issues. ' +
|
|
225
|
+
'Provide a structured verdict with pass/fail status, failure details, and actionable suggestions.';
|
|
226
|
+
if (srcDir) {
|
|
227
|
+
systemPrompt += `\n\nProject source code is available at: ${srcDir}. Use Read and Grep to inspect files, and Bash to execute commands.`;
|
|
228
|
+
}
|
|
229
|
+
const options = {
|
|
230
|
+
agents: {
|
|
231
|
+
'qa-verifier': {
|
|
232
|
+
description: 'Verifies security fixes by running project tests and analyzing results',
|
|
233
|
+
prompt: systemPrompt,
|
|
234
|
+
tools: ['Read', 'Grep', 'Bash'],
|
|
235
|
+
model: this.model
|
|
236
|
+
}
|
|
237
|
+
},
|
|
238
|
+
permissionMode: 'bypassPermissions',
|
|
239
|
+
outputFormat: {
|
|
240
|
+
type: 'json_schema',
|
|
241
|
+
schema: qa_context_1.QA_VERDICT_SCHEMA
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
return options;
|
|
245
|
+
}
|
|
213
246
|
}
|
|
214
247
|
exports.AgentOptions = AgentOptions;
|
|
215
248
|
//# sourceMappingURL=agent_options.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent_options.js","sourceRoot":"","sources":["../../src/agent_options.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIH,+DAAmE;AACnE,uEAA2E;AAC3E,yDAA2D;
|
|
1
|
+
{"version":3,"file":"agent_options.js","sourceRoot":"","sources":["../../src/agent_options.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIH,+DAAmE;AACnE,uEAA2E;AAC3E,yDAA2D;AAC3D,qDAAyD;AAQzD,MAAa,YAAY;IACf,QAAQ,CAAa;IACrB,WAAW,CAAS;IACpB,KAAK,CAAS;IACd,YAAY,GAAmB,EAAE,CAAC;IAE1C,YAAY,QAAoB,EAAE,WAAmB,EAAE,QAAgB,QAAQ;QAC7E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,sBAAsB,GAAe,KAAK,EACxC,QAAgB,EAChB,SAAkC,EAClC,OAAO,EACoB,EAAE;QAC7B,uBAAuB;QACvB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;SAC5E,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/D,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,yBAAyB;QACzB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;IACxD,CAAC,CAAA;IAED;;OAEG;IACH,0BAA0B,CAAC,OAAe,oBAAoB,EAAE,MAAsB;QACpF,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,YAAY,GAAG,UAAU,EAAE,OAAO,EAAE,aAAa;YACnD,wIAAwI,CAAC;QAE3I,4DAA4D;QAC5D,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,IAAI,kDAAkD,MAAM,+DAA+D,CAAC;QAC1I,CAAC;QAED,OAAO;YACL,YAAY,EAAE,YAAY;YAC1B,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,IAAI,CAAC;SAC9C,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,sBAAsB,CAAC,OAAe,eAAe,EAAE,YAAqB;QAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,UAAU,EAAE,OAAO,EAAE,aAAa;YACrD,iMAAiM,CAAC;QAEpM,MAAM,OAAO,GAAY;YACvB,MAAM,EAAE;gBACN,eAAe,EAAE;oBACf,WAAW,EAAE,oEAAoE;oBACjF,MAAM,EAAE,YAAY;oBACpB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;oBAChC,KAAK,EAAE,IAAI,CAAC,KAAK;iBACC;aACrB;YACD,cAAc,EAAE,mBAAmB;SACpC,CAAC;QAEF,yDAAyD;QACzD,IAAI,YAAY,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;YAC3C,OAAO,CAAC,YAAY,GAAG;gBACrB,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,wCAAsB;aAC/B,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,uBAAuB,CAAC,OAAe,gBAAgB,EAAE,YAAqB;QAC5E,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,UAAU,EAAE,OAAO,EAAE,aAAa;YACrD,4MAA4M,CAAC;QAE/M,MAAM,MAAM,GAAG,YAAY,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC;QAEtD,MAAM,OAAO,GAAY;YACvB,MAAM,EAAE;gBACN,gBAAgB,EAAE;oBAChB,WAAW,EAAE,uEAAuE;oBACpF,MAAM,EAAE,YAAY;oBACpB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC;oBACxE,KAAK,EAAE,IAAI,CAAC,KAAK;iBACC;aACrB;YACD,cAAc,EAAE,mBAAmB;SACpC,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,YAAY,GAAG;gBACrB,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,gDAA0B;aACnC,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACH,sBAAsB,CAAC,OAAe,eAAe,EAAE,MAAsB,EAAE,YAAqB;QAClG,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAE3D,IAAI,YAAY,GAAG;;;;;;;;;;;;;mCAaY,CAAC;QAEhC,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,IAAI,sCAAsC,MAAM,EAAE,CAAC;QACjE,CAAC;QAED,kDAAkD;QAClD,IAAI,UAAU,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;YACrD,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,2BAA2B,CAAC;QAChE,CAAC;QAED,MAAM,OAAO,GAAY;YACvB,MAAM,EAAE;gBACN,eAAe,EAAE;oBACf,WAAW,EAAE,sDAAsD;oBACnE,MAAM,EAAE,YAAY;oBACpB,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;oBACxB,KAAK,EAAE,IAAI,CAAC,KAAK;iBACC;aACrB;YACD,cAAc,EAAE,mBAAmB;SACpC,CAAC;QAEF,yDAAyD;QACzD,IAAI,YAAY,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;YAC3C,OAAO,CAAC,YAAY,GAAG;gBACrB,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,wCAAsB;aAC/B,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CAAC,OAAe,YAAY,EAAE,MAAsB;QACrE,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,YAAY,GAAG,UAAU,EAAE,OAAO,EAAE,aAAa;YACnD,sFAAsF;gBACtF,gGAAgG;gBAChG,0FAA0F;gBAC1F,iGAAiG,CAAC;QAEpG,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,IAAI,sCAAsC,MAAM,wDAAwD,CAAC;QACvH,CAAC;QAED,MAAM,OAAO,GAAY;YACvB,MAAM,EAAE;gBACN,YAAY,EAAE;oBACZ,WAAW,EAAE,2DAA2D;oBACxE,MAAM,EAAE,YAAY;oBACpB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;oBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;iBACC;aACrB;YACD,cAAc,EAAE,mBAAmB;YACnC,YAAY,EAAE;gBACZ,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,gCAAiB;aAC1B;SACF,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAAC,OAAe,aAAa,EAAE,MAAsB;QACvE,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,YAAY,GAAG,UAAU,EAAE,OAAO,EAAE,aAAa;YACnD,iHAAiH;gBACjH,qHAAqH;gBACrH,2FAA2F;gBAC3F,sHAAsH;gBACtH,kGAAkG,CAAC;QAErG,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,IAAI,4CAA4C,MAAM,qEAAqE,CAAC;QAC1I,CAAC;QAED,MAAM,OAAO,GAAY;YACvB,MAAM,EAAE;gBACN,aAAa,EAAE;oBACb,WAAW,EAAE,wEAAwE;oBACrF,MAAM,EAAE,YAAY;oBACpB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;oBAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;iBACC;aACrB;YACD,cAAc,EAAE,mBAAmB;YACnC,YAAY,EAAE;gBACZ,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,8BAAiB;aAC1B;SACF,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AA9QD,oCA8QC"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -9,4 +9,5 @@ export { main } from './main';
|
|
|
9
9
|
export * from './utils';
|
|
10
10
|
export { DFDNode, DFDDataFlow, DFDTrustBoundary, Threat, Risk, ThreatModelReport, THREAT_MODEL_REPORT_SCHEMA, } from './schemas/threat_model_report';
|
|
11
11
|
export { FixContext, FixContextFinding, FixContextCodeContext, FixOutput, FIX_OUTPUT_SCHEMA, } from './schemas/security_fix';
|
|
12
|
+
export { QaContext, QaVerdict, QA_VERDICT_SCHEMA, } from './schemas/qa_context';
|
|
12
13
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,MAAM,EACN,IAAI,EACJ,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,qBAAqB,EACrB,SAAS,EACT,iBAAiB,GAClB,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,MAAM,EACN,IAAI,EACJ,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,qBAAqB,EACrB,SAAS,EACT,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,SAAS,EACT,SAAS,EACT,iBAAiB,GAClB,MAAM,sBAAsB,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -19,7 +19,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
19
19
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.FIX_OUTPUT_SCHEMA = exports.THREAT_MODEL_REPORT_SCHEMA = exports.main = exports.AgentOptions = exports.AgentActions = void 0;
|
|
22
|
+
exports.QA_VERDICT_SCHEMA = exports.FIX_OUTPUT_SCHEMA = exports.THREAT_MODEL_REPORT_SCHEMA = exports.main = exports.AgentOptions = exports.AgentActions = void 0;
|
|
23
23
|
var agent_actions_1 = require("./agent_actions");
|
|
24
24
|
Object.defineProperty(exports, "AgentActions", { enumerable: true, get: function () { return agent_actions_1.AgentActions; } });
|
|
25
25
|
var agent_options_1 = require("./agent_options");
|
|
@@ -31,4 +31,6 @@ var threat_model_report_1 = require("./schemas/threat_model_report");
|
|
|
31
31
|
Object.defineProperty(exports, "THREAT_MODEL_REPORT_SCHEMA", { enumerable: true, get: function () { return threat_model_report_1.THREAT_MODEL_REPORT_SCHEMA; } });
|
|
32
32
|
var security_fix_1 = require("./schemas/security_fix");
|
|
33
33
|
Object.defineProperty(exports, "FIX_OUTPUT_SCHEMA", { enumerable: true, get: function () { return security_fix_1.FIX_OUTPUT_SCHEMA; } });
|
|
34
|
+
var qa_context_1 = require("./schemas/qa_context");
|
|
35
|
+
Object.defineProperty(exports, "QA_VERDICT_SCHEMA", { enumerable: true, get: function () { return qa_context_1.QA_VERDICT_SCHEMA; } });
|
|
34
36
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;AAEH,iDAA0D;AAAjD,6GAAA,YAAY,OAAA;AACrB,iDAA6D;AAApD,6GAAA,YAAY,OAAA;AACrB,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb,0CAAwB;AACxB,qEAQuC;AADrC,iIAAA,0BAA0B,OAAA;AAE5B,uDAMgC;AAD9B,iHAAA,iBAAiB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;AAEH,iDAA0D;AAAjD,6GAAA,YAAY,OAAA;AACrB,iDAA6D;AAApD,6GAAA,YAAY,OAAA;AACrB,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb,0CAAwB;AACxB,qEAQuC;AADrC,iIAAA,0BAA0B,OAAA;AAE5B,uDAMgC;AAD9B,iHAAA,iBAAiB,OAAA;AAEnB,mDAI8B;AAD5B,+GAAA,iBAAiB,OAAA"}
|
package/dist/src/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAgB,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAgB,SAAS,EAAE,MAAM,iBAAiB,CAAC;AA8X1D,wBAAsB,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CA8RxE"}
|
package/dist/src/main.js
CHANGED
|
@@ -46,6 +46,7 @@ const utils_1 = require("./utils");
|
|
|
46
46
|
const diff_context_1 = require("./diff_context");
|
|
47
47
|
const diff_chunking_1 = require("./diff_chunking");
|
|
48
48
|
const diff_report_merge_1 = require("./diff_report_merge");
|
|
49
|
+
const qa_context_1 = require("./schemas/qa_context");
|
|
49
50
|
/**
|
|
50
51
|
* Validate and copy source directory, exiting on validation failure
|
|
51
52
|
*/
|
|
@@ -157,13 +158,62 @@ function loadFixContext(fixContextPath, cwd) {
|
|
|
157
158
|
process.exit(1);
|
|
158
159
|
}
|
|
159
160
|
}
|
|
161
|
+
/**
|
|
162
|
+
* Build user prompt for the qa_verifier role from QaContext
|
|
163
|
+
*/
|
|
164
|
+
function buildQaVerifierPrompt(ctx) {
|
|
165
|
+
const parts = [];
|
|
166
|
+
parts.push('## QA Verification Task\n');
|
|
167
|
+
parts.push(`Verify the security fix applied in PR: ${ctx.pr_url}\n`);
|
|
168
|
+
if (ctx.deployment_context) {
|
|
169
|
+
parts.push('### Deployment & Environment Context');
|
|
170
|
+
parts.push(ctx.deployment_context);
|
|
171
|
+
parts.push('');
|
|
172
|
+
}
|
|
173
|
+
parts.push('### Test Configuration');
|
|
174
|
+
parts.push(`- **Test command:** \`${ctx.test_command}\``);
|
|
175
|
+
if (ctx.test_framework) {
|
|
176
|
+
parts.push(`- **Test framework:** ${ctx.test_framework}`);
|
|
177
|
+
}
|
|
178
|
+
if (ctx.setup_commands) {
|
|
179
|
+
parts.push(`- **Setup commands:** \`${ctx.setup_commands}\``);
|
|
180
|
+
}
|
|
181
|
+
parts.push(`- **Timeout:** ${ctx.timeout_seconds} seconds`);
|
|
182
|
+
parts.push(`- **Block on failure:** ${ctx.block_on_failure ? 'Yes' : 'No'}`);
|
|
183
|
+
parts.push('');
|
|
184
|
+
if (ctx.environment_variables && Object.keys(ctx.environment_variables).length > 0) {
|
|
185
|
+
parts.push('### Environment Variables');
|
|
186
|
+
for (const [key, val] of Object.entries(ctx.environment_variables)) {
|
|
187
|
+
parts.push(`- \`${key}\` = \`${val}\``);
|
|
188
|
+
}
|
|
189
|
+
parts.push('');
|
|
190
|
+
}
|
|
191
|
+
parts.push('### Instructions');
|
|
192
|
+
parts.push('1. If setup commands are provided, run them first to prepare the environment.');
|
|
193
|
+
parts.push('2. Run the test command and capture the output.');
|
|
194
|
+
parts.push('3. If tests fail, analyze the failure output to determine:');
|
|
195
|
+
parts.push(' - Which specific tests failed and why');
|
|
196
|
+
parts.push(' - Whether the failures are related to the security fix or are pre-existing');
|
|
197
|
+
parts.push(' - Actionable suggestions for resolving failures');
|
|
198
|
+
parts.push('4. Return a structured QA verdict JSON with your findings.');
|
|
199
|
+
return parts.join('\n');
|
|
200
|
+
}
|
|
160
201
|
/**
|
|
161
202
|
* Build user prompt for the code_fixer role from FixContext
|
|
162
203
|
*/
|
|
163
204
|
function buildCodeFixerPrompt(ctx) {
|
|
164
205
|
const { finding, code_context } = ctx;
|
|
165
206
|
let prompt = `Fix the following security vulnerability. Return your fix as structured JSON (follow the required schema). Do not write any files.
|
|
207
|
+
`;
|
|
208
|
+
if (ctx.deployment_context) {
|
|
209
|
+
prompt += `
|
|
210
|
+
## Deployment & Environment Context
|
|
211
|
+
${ctx.deployment_context}
|
|
166
212
|
|
|
213
|
+
Please consider this context when generating the fix. Focus on security practices relevant to this deployment environment.
|
|
214
|
+
`;
|
|
215
|
+
}
|
|
216
|
+
prompt += `
|
|
167
217
|
## Finding
|
|
168
218
|
- **Severity**: ${finding.severity}
|
|
169
219
|
- **Type**: ${finding.title}
|
|
@@ -232,6 +282,19 @@ ${code_context.indentation_guidance}
|
|
|
232
282
|
4. The finding is reported at line ${finding.line} - your fix MUST include or be adjacent to this line
|
|
233
283
|
5. NEVER return start_line: 1 unless the vulnerability is literally at line 1 of the file
|
|
234
284
|
6. Your fixed_code should contain ONLY the code for lines start_line through end_line`;
|
|
285
|
+
if (ctx.generate_companion_test) {
|
|
286
|
+
prompt += `
|
|
287
|
+
|
|
288
|
+
## COMPANION TEST GENERATION
|
|
289
|
+
In addition to the fix, generate a companion unit test that verifies:
|
|
290
|
+
1. The security vulnerability is properly addressed by the fix
|
|
291
|
+
2. The fixed code still produces correct output for normal inputs
|
|
292
|
+
3. Known attack vectors for this vulnerability type are properly blocked
|
|
293
|
+
|
|
294
|
+
Include the test code in the \`test_code\` field, suggest an appropriate file path in \`test_file\`,
|
|
295
|
+
and specify the test framework in \`test_framework\` (e.g. jest, pytest, junit).
|
|
296
|
+
The test should be self-contained and runnable with minimal setup.`;
|
|
297
|
+
}
|
|
235
298
|
if (ctx.previous_fix_code && ctx.validation_errors?.length) {
|
|
236
299
|
prompt += `
|
|
237
300
|
|
|
@@ -474,11 +537,26 @@ Provide a comprehensive security review report identifying potential security is
|
|
|
474
537
|
const outputFile = validateOutputFile(args.output_file || `threat_model_report.${extension}`, currentWorkingDir);
|
|
475
538
|
const tmpSrcDir = args.src_dir ? validateAndCopySrcDir(args.src_dir, currentWorkingDir) : null;
|
|
476
539
|
const srcLocation = tmpSrcDir ? `the ${tmpSrcDir} directory` : 'the current working directory';
|
|
540
|
+
let contextSection = '';
|
|
541
|
+
if (args.context) {
|
|
542
|
+
console.log('Using context:', args.context.substring(0, 50) + (args.context.length > 50 ? '...' : ''));
|
|
543
|
+
contextSection = `
|
|
544
|
+
|
|
545
|
+
IMPORTANT DEPLOYMENT & ENVIRONMENT CONTEXT:
|
|
546
|
+
${args.context}
|
|
547
|
+
|
|
548
|
+
Please consider this context when performing threat modeling. Focus on:
|
|
549
|
+
- Threats specific to this deployment environment
|
|
550
|
+
- Attack vectors relevant to the stated architecture and compliance requirements
|
|
551
|
+
- Data flow risks that may be mitigated or exacerbated by this context
|
|
552
|
+
|
|
553
|
+
`;
|
|
554
|
+
}
|
|
477
555
|
const isJson = args.output_format?.toLowerCase() === 'json';
|
|
478
556
|
let userPrompt;
|
|
479
557
|
if (isJson) {
|
|
480
558
|
userPrompt = `Analyze the source code in ${srcLocation} and produce a comprehensive threat model report as structured JSON (follow the required schema). Do not write any files; the system will save the output.
|
|
481
|
-
|
|
559
|
+
${contextSection}
|
|
482
560
|
Your analysis must include:
|
|
483
561
|
1. A Data Flow Diagram (DFD) — identify all system components as nodes (external entities, processes, data stores), map all data flows between them with protocols and data classifications, and define trust boundaries.
|
|
484
562
|
2. A STRIDE threat analysis — provide an executive summary, then enumerate each threat with its STRIDE category, severity, likelihood, affected DFD components (by node/flow ID), impact assessment, and mitigation strategy. Include CWE/OWASP references where applicable.
|
|
@@ -488,7 +566,7 @@ Use sequential IDs: node-001/flow-001/tb-001 for DFD elements, THREAT-001 for th
|
|
|
488
566
|
}
|
|
489
567
|
else {
|
|
490
568
|
const basePrompt = `Draw the ASCII text based Data Flow Diagram (DFD), with output format as <codebase_data_flow_diagram_text_timestamp>. Then proceeding to use STRIDE methodology to perform threat modeling on the DFD, without output report in the format <codebase_threat_model_timestamp>. Finally, provide a separate risk registry report including proposed remediation plan in the format <codebase_risk_registry_text_timestamp>. We're looking for 3 reports in the current working directory as the deliverable. Please write the threat modeler report under the current working directory in ${args.output_format} format.`;
|
|
491
|
-
userPrompt = `Review the code in ${srcLocation}
|
|
569
|
+
userPrompt = `Review the code in ${srcLocation}.${contextSection} ${basePrompt}`;
|
|
492
570
|
}
|
|
493
571
|
const structuredResult = await agentActions.threatModelerAgentWithOptions(userPrompt);
|
|
494
572
|
if (structuredResult) {
|
|
@@ -516,6 +594,25 @@ Use sequential IDs: node-001/flow-001/tb-001 for DFD elements, THREAT-001 for th
|
|
|
516
594
|
}
|
|
517
595
|
cleanupTmpDir(tmpSrcDir);
|
|
518
596
|
}
|
|
597
|
+
else if (args.role === 'qa_verifier') {
|
|
598
|
+
console.log('Running QA Verifier Agent');
|
|
599
|
+
if (!args.qa_context) {
|
|
600
|
+
console.error('Error: --qa-context is required for the qa_verifier role.');
|
|
601
|
+
process.exit(1);
|
|
602
|
+
}
|
|
603
|
+
const qaContext = (0, qa_context_1.loadQaContext)(args.qa_context, currentWorkingDir);
|
|
604
|
+
const outputFile = validateOutputFile(args.output_file || 'qa_verdict.json', currentWorkingDir);
|
|
605
|
+
const tmpSrcDir = args.src_dir
|
|
606
|
+
? validateAndCopySrcDir(args.src_dir, currentWorkingDir)
|
|
607
|
+
: null;
|
|
608
|
+
const userPrompt = buildQaVerifierPrompt(qaContext);
|
|
609
|
+
const structuredResult = await agentActions.qaVerifierWithOptions(userPrompt, tmpSrcDir);
|
|
610
|
+
if (structuredResult) {
|
|
611
|
+
fs.writeFileSync(outputFile, structuredResult, 'utf-8');
|
|
612
|
+
console.log(`QA verdict written to ${outputFile}`);
|
|
613
|
+
}
|
|
614
|
+
cleanupTmpDir(tmpSrcDir);
|
|
615
|
+
}
|
|
519
616
|
else {
|
|
520
617
|
console.error(`Error: Invalid appsec AI agent role: ${args.role} - refer to 'appsec_agent.yaml' for available roles`);
|
|
521
618
|
process.exit(1);
|
package/dist/src/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkYH,oBA8RC;AA9pBD,6CAA+B;AAC/B,2CAA6B;AAC7B,mDAA0D;AAC1D,mCAAyL;AACzL,iDAA8F;AAC9F,mDAAoE;AACpE,2DAAwD;AAExD,qDAAgE;AAEhE;;GAEG;AACH,SAAS,qBAAqB,CAAC,MAAc,EAAE,GAAW;IACxD,IAAI,CAAC,IAAA,6BAAqB,EAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAA,4BAAoB,EAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,yCAAyC,QAAQ,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,KAAK,CAAC,uFAAuF,CAAC,CAAC;QACvG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,IAAA,yBAAiB,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,UAAkB,EAAE,GAAW;IACzD,MAAM,SAAS,GAAG,IAAA,8BAAsB,EAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC1D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAA,4BAAoB,EAAC,UAAU,CAAC,CAAC;QAClD,OAAO,CAAC,KAAK,CAAC,oCAAoC,QAAQ,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,KAAK,CAAC,sHAAsH,CAAC,CAAC;QACtI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,MAAqB,EAAE,UAAmB,KAAK;IACpE,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO;IAE9C,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,IAAA,4BAAoB,EAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,IAAA,4BAAoB,EAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,KAAK,EAAE,OAAO,IAAI,eAAe,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC,mDAAmD,QAAQ,KAAK,YAAY,EAAE,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,eAAuB,EAAE,GAAW;IAC3D,gCAAgC;IAChC,MAAM,YAAY,GAAG,IAAA,6BAAqB,EAAC,eAAe,EAAE,GAAG,CAAC,CAAC;IAEjE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,IAAA,4BAAoB,EAAC,eAAe,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;QACpE,OAAO,CAAC,KAAK,CAAC,yFAAyF,CAAC,CAAC;QACzG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,4BAAoB,EAAC,YAAY,CAAC,CAAC;IAEpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,uCAAuC,QAAQ,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,0BAA0B;IAC1B,IAAI,IAAa,CAAC;IAClB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,YAAY,GAAG,KAAK,EAAE,OAAO,IAAI,eAAe,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,2CAA2C,QAAQ,KAAK,YAAY,EAAE,CAAC,CAAC;QACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,mGAAmG;IACnG,IAAI,CAAC,IAAA,kCAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;QACpE,OAAO,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;QACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,cAAsB,EAAE,GAAW;IACzD,MAAM,YAAY,GAAG,IAAA,6BAAqB,EAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IAEhE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,IAAA,4BAAoB,EAAC,cAAc,CAAC,CAAC;QACtD,OAAO,CAAC,KAAK,CAAC,yCAAyC,QAAQ,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,KAAK,CAAC,yFAAyF,CAAC,CAAC;QACzG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,4BAAoB,EAAC,YAAY,CAAC,CAAC;IAEpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAe,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACxC,OAAO,CAAC,KAAK,CAAC,0EAA0E,QAAQ,EAAE,CAAC,CAAC;YACpG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,YAAY,GAAG,KAAK,EAAE,OAAO,IAAI,eAAe,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,0CAA0C,QAAQ,KAAK,YAAY,EAAE,CAAC,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,GAAc;IAC3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACxC,KAAK,CAAC,IAAI,CAAC,0CAA0C,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAErE,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IACrC,KAAK,CAAC,IAAI,CAAC,yBAAyB,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC;IAC1D,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,yBAAyB,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,2BAA2B,GAAG,CAAC,cAAc,IAAI,CAAC,CAAC;IAChE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,CAAC,eAAe,UAAU,CAAC,CAAC;IAC5D,KAAK,CAAC,IAAI,CAAC,2BAA2B,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,IAAI,GAAG,CAAC,qBAAqB,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnF,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACxC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACnE,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;QAC1C,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC/B,KAAK,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;IAC5F,KAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;IAC9D,KAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IACzE,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IACvD,KAAK,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;IAC5F,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IAEzE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,GAAe;IAC3C,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;IAEtC,IAAI,MAAM,GAAG;CACd,CAAC;IAEA,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAC3B,MAAM,IAAI;;EAEZ,GAAG,CAAC,kBAAkB;;;CAGvB,CAAC;IACA,CAAC;IAED,MAAM,IAAI;;kBAEM,OAAO,CAAC,QAAQ;cACpB,OAAO,CAAC,KAAK;aACd,OAAO,CAAC,GAAG;eACT,OAAO,CAAC,KAAK;cACd,OAAO,CAAC,IAAI;cACZ,OAAO,CAAC,IAAI;;;EAGxB,OAAO,CAAC,WAAW;;;EAGnB,OAAO,CAAC,cAAc;CACvB,CAAC;IAEA,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,GAAG,CAAC,iBAAiB,IAAI,CAAC;IAC3C,CAAC;IAED,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzB,MAAM,IAAI;sFACwE,CAAC;IACrF,CAAC;IAED,MAAM,IAAI;;;;QAIJ,YAAY,CAAC,QAAQ;EAC3B,YAAY,CAAC,OAAO;;;qCAGe,YAAY,CAAC,wBAAwB,IAAI,YAAY,CAAC,sBAAsB;QACzG,YAAY,CAAC,QAAQ;EAC3B,YAAY,CAAC,kBAAkB;;;;QAIzB,YAAY,CAAC,QAAQ;EAC3B,YAAY,CAAC,2BAA2B;;CAEzC,CAAC;IAEA,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,GAAG,CAAC,gBAAgB,IAAI,CAAC;IAC1C,CAAC;IAED,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,GAAG,CAAC,iBAAiB,IAAI,CAAC;IAC3C,CAAC;IAED,IAAI,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,GAAG,CAAC,mBAAmB,IAAI,CAAC;IAC7C,CAAC;IAED,MAAM,IAAI;;EAEV,YAAY,CAAC,oBAAoB;;;;;;;;;;;;4DAYyB,YAAY,CAAC,wBAAwB,IAAI,YAAY,CAAC,sBAAsB;gCACxG,YAAY,CAAC,wBAAwB;8BACvC,YAAY,CAAC,sBAAsB;qCAC5B,OAAO,CAAC,IAAI;;sFAEqC,CAAC;IAErF,IAAI,GAAG,CAAC,uBAAuB,EAAE,CAAC;QAChC,MAAM,IAAI;;;;;;;;;;mEAUqD,CAAC;IAClE,CAAC;IAED,IAAI,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC3D,MAAM,IAAI;;;;;;;QAON,YAAY,CAAC,QAAQ;EAC3B,GAAG,CAAC,iBAAiB;;;;EAIrB,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;oGAEkC,CAAC;IACnG,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,+DAA+D;AAC/D,MAAM,4BAA4B,GAAG,CAAC,CAAC;AACvC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B;;GAEG;AACH,SAAS,kBAAkB,CAAC,QAAa,EAAE,WAAmB,EAAE,IAAe;IAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC;IACxG,MAAM,QAAQ,GAAG,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,IAAI,QAAQ,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAChG,MAAM,UAAU,GAAG;QACjB,iBAAiB,EAAE,QAAQ,EAAE,gCAAgC,IAAI,4BAA4B;QAC7F,UAAU,EAAE,QAAQ,EAAE,uBAAuB,IAAI,mBAAmB;QACpE,QAAQ,EAAE,QAAQ,EAAE,qBAAqB;QACzC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAC,SAAS;KAClH,CAAC;IACF,OAAO;QACL,iBAAiB,EAAE,IAAI,CAAC,yBAAyB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,UAAU,CAAC,iBAAiB;QAC/H,UAAU,EAAE,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU;QAC/F,QAAQ,EAAE,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ;QACvF,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY;KAC9G,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAC5B,WAAwB,EACxB,UAAkB,EAClB,YAAoB,EACpB,iBAA0B;IAE1B,MAAM,aAAa,GAAG,IAAA,yCAA0B,EAAC,WAAW,CAAC,CAAC;IAE9D,IAAI,MAAM,GAAG;;EAEb,aAAa;;;;;;;;;;;;;;;;;CAiBd,CAAC;IAEA,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,IAAI;EACZ,iBAAiB;;CAElB,CAAC;IACA,CAAC;IAED,IAAI,YAAY,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;QAC3C,MAAM,IAAI,mKAAmK,UAAU;yEAClH,CAAC;IACxE,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,mDAAmD,UAAU,OAAO,YAAY;yEACrB,CAAC;IACxE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,IAAI,CAAC,QAAa,EAAE,IAAe;IACvD,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACxC,MAAM,YAAY,GAAG,IAAI,4BAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAExE,IAAI,IAAI,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAExD,IAAI,SAAS,GAAkB,IAAI,CAAC;QACpC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,SAAS,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,oCAAoC,IAAA,4BAAoB,EAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACnF,OAAO,CAAC,GAAG,CAAC,8EAA8E,CAAC,CAAC;QAC9F,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QACrC,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;YAClC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;QAEH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,UAAU,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;gBACvD,EAAE,CAAC,QAAQ,CAAC,qDAAqD,EAAE,OAAO,CAAC,CAAC;YAC9E,CAAC,CAAC,CAAC;YAEH,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;gBACtD,EAAE,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM;YACR,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;gBAAE,SAAS;YAEjC,MAAM,YAAY,CAAC,4BAA4B,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACvE,MAAM,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5D,CAAC;QAED,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAEjC,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACxE,MAAM,SAAS,GAAG,IAAA,6BAAqB,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,WAAW,IAAI,sBAAsB,SAAS,EAAE,EAAE,iBAAiB,CAAC,CAAC;QAEhH,4DAA4D;QAC5D,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;YAExE,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,CAAC,iBAAiB,WAAW,CAAC,QAAQ,KAAK,WAAW,CAAC,iBAAiB,YAAY,WAAW,CAAC,eAAe,KAAK,WAAW,CAAC,iBAAiB,GAAG,CAAC,CAAC;YAEjK,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/F,MAAM,YAAY,GAAG,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC1E,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,GAAG,IAAA,gCAAgB,EAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAEnG,MAAM,oBAAoB,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAEvG,IAAI,oBAAoB,EAAE,CAAC;gBACzB,MAAM,UAAU,GAAG,qBAAqB,CACtC,OAAO,CAAC,CAAC,CAAC,EACV,UAAU,EACV,IAAI,CAAC,aAAa,IAAI,MAAM,EAC5B,IAAI,CAAC,OAAO,CACb,CAAC;gBACF,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,uBAAuB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;gBAC3F,IAAI,gBAAgB,EAAE,CAAC;oBACrB,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;oBACxD,OAAO,CAAC,GAAG,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;gBACjD,CAAC;gBACD,aAAa,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;iBAAM,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAG,IAAA,6BAAqB,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,sBAAsB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACjF,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC1B,MAAM,UAAU,GAAa,EAAE,CAAC;gBAChC,MAAM,UAAU,GAAa,EAAE,CAAC;gBAEhC,IAAI,CAAC;oBACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACxC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;wBACtF,MAAM,UAAU,GAAG,qBAAqB,CACtC,OAAO,CAAC,CAAC,CAAC,EACV,eAAe,EACf,IAAI,CAAC,aAAa,IAAI,MAAM,EAC5B,IAAI,CAAC,OAAO,CACb,CAAC;wBACF,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,uBAAuB,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;4BAC/F,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,IAAI,MAAM,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;gCACrE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;4BACzC,CAAC;wBACH,CAAC,CAAC,CAAC;wBACH,IAAI,WAAW,EAAE,CAAC;4BAChB,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;4BACxD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,sBAAsB,eAAe,EAAE,CAAC,CAAC;wBACrE,CAAC;wBACD,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;4BACnC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;wBACnC,CAAC;oBACH,CAAC;oBAED,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC/F,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBACvD,IAAI,cAAkC,CAAC;oBACvC,IAAI,mBAAmB,EAAE,CAAC;wBACxB,cAAc,GAAG,gCAAgC,YAAY,CAAC,UAAU,6BAA6B,UAAU,CAAC,MAAM,wFAAwF,CAAC;oBACjN,CAAC;yBAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACnC,cAAc,GAAG,GAAG,YAAY,CAAC,MAAM,2DAA2D,CAAC;oBACrG,CAAC;oBAED,IAAA,qCAAiB,EAAC;wBAChB,UAAU;wBACV,UAAU,EAAE,UAAU;wBACtB,MAAM,EAAE,IAAI,CAAC,aAAa,IAAI,MAAM;wBACpC,YAAY;wBACZ,UAAU,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;wBAC1D,gBAAgB,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;wBACpE,cAAc;qBACf,CAAC,CAAC;oBAEH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC1B,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC9E,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;wBACpD,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACtD,CAAC;gBACH,CAAC;wBAAS,CAAC;oBACT,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;oBAC9C,aAAa,CAAC,SAAS,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBACpD,aAAa,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,uCAAuC;YACvC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;YAEzC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/F,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,6BAA6B,SAAS,EAAE,CAAC,CAAC,CAAC,2BAA2B,CAAC;YAEvG,oCAAoC;YACpC,IAAI,cAAc,GAAG,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACxG,cAAc,GAAG;;;EAGvB,IAAI,CAAC,OAAO;;;;;;;;CAQb,CAAC;YACI,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC;YAC5D,MAAM,iBAAiB,GAAG,MAAM;gBAC9B,CAAC,CAAC,mKAAmK,UAAU,GAAG;gBAClL,CAAC,CAAC,yCAAyC,UAAU,4CAA4C,IAAI,CAAC,aAAa,UAAU,CAAC;YAChI,IAAI,UAAU,GAAG,0BAA0B,WAAW,IAAI,cAAc;;0GAE4B,iBAAiB,EAAE,CAAC;YACxH,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM,IAAI,SAAS,EAAE,CAAC;gBACzD,MAAM,UAAU,GAAG,IAAA,gCAAwB,EAAC,SAAS,CAAC,CAAC;gBACvD,IAAI,UAAU,EAAE,CAAC;oBACf,UAAU,IAAI,oKAAoK,UAAU,EAAE,CAAC;gBACjM,CAAC;YACH,CAAC;YACD,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;YAChF,IAAI,gBAAgB,EAAE,CAAC;gBACrB,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;gBACxD,OAAO,CAAC,GAAG,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,aAAa,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC;IAEH,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAEtC,MAAM,SAAS,GAAG,IAAA,6BAAqB,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,WAAW,IAAI,uBAAuB,SAAS,EAAE,EAAE,iBAAiB,CAAC,CAAC;QACjH,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/F,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,SAAS,YAAY,CAAC,CAAC,CAAC,+BAA+B,CAAC;QAE/F,IAAI,cAAc,GAAG,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACvG,cAAc,GAAG;;;EAGrB,IAAI,CAAC,OAAO;;;;;;;CAOb,CAAC;QACE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC;QAE5D,IAAI,UAAkB,CAAC;QACvB,IAAI,MAAM,EAAE,CAAC;YACX,UAAU,GAAG,8BAA8B,WAAW;EAC1D,cAAc;;;;;;2GAM2F,CAAC;QACxG,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,4jBAA4jB,IAAI,CAAC,aAAa,UAAU,CAAC;YAC5mB,UAAU,GAAG,sBAAsB,WAAW,IAAI,cAAc,IAAI,UAAU,EAAE,CAAC;QACnF,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC;QACtF,IAAI,gBAAgB,EAAE,CAAC;YACrB,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,aAAa,CAAC,SAAS,CAAC,CAAC;IAE3B,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QAExC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,kBAAkB,CACnC,IAAI,CAAC,WAAW,IAAI,iBAAiB,EACrC,iBAAiB,CAClB,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;YAC5B,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC;QAET,MAAM,UAAU,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAEpD,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,oBAAoB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACxF,IAAI,gBAAgB,EAAE,CAAC;YACrB,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,aAAa,CAAC,SAAS,CAAC,CAAC;IAE3B,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QAEzC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,SAAS,GAAG,IAAA,0BAAa,EAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,kBAAkB,CACnC,IAAI,CAAC,WAAW,IAAI,iBAAiB,EACrC,iBAAiB,CAClB,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;YAC5B,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC;QAET,MAAM,UAAU,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAEpD,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,qBAAqB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACzF,IAAI,gBAAgB,EAAE,CAAC;YACrB,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,yBAAyB,UAAU,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,aAAa,CAAC,SAAS,CAAC,CAAC;IAE3B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,wCAAwC,IAAI,CAAC,IAAI,qDAAqD,CAAC,CAAC;QACtH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QA Verification Context and Verdict Schemas
|
|
3
|
+
*
|
|
4
|
+
* Defines the input context and output verdict for the qa_verifier role.
|
|
5
|
+
* QaContext is assembled by sast-ai-app and passed via --qa-context JSON file.
|
|
6
|
+
* QaVerdict is the structured output returned by the qa_verifier agent.
|
|
7
|
+
*/
|
|
8
|
+
export interface QaContext {
|
|
9
|
+
pr_url: string;
|
|
10
|
+
deployment_context?: string;
|
|
11
|
+
test_command: string;
|
|
12
|
+
test_framework?: string;
|
|
13
|
+
setup_commands?: string;
|
|
14
|
+
runtime_image?: string;
|
|
15
|
+
environment_variables?: Record<string, string>;
|
|
16
|
+
timeout_seconds: number;
|
|
17
|
+
block_on_failure: boolean;
|
|
18
|
+
}
|
|
19
|
+
export interface QaVerdict {
|
|
20
|
+
pass: boolean;
|
|
21
|
+
test_exit_code: number;
|
|
22
|
+
failures: string[];
|
|
23
|
+
logs: string;
|
|
24
|
+
analysis?: string;
|
|
25
|
+
suggestions?: string[];
|
|
26
|
+
}
|
|
27
|
+
export declare function loadQaContext(filePath: string, cwd: string): QaContext;
|
|
28
|
+
export declare const QA_VERDICT_SCHEMA: {
|
|
29
|
+
name: string;
|
|
30
|
+
strict: boolean;
|
|
31
|
+
schema: {
|
|
32
|
+
type: string;
|
|
33
|
+
properties: {
|
|
34
|
+
pass: {
|
|
35
|
+
type: string;
|
|
36
|
+
description: string;
|
|
37
|
+
};
|
|
38
|
+
test_exit_code: {
|
|
39
|
+
type: string;
|
|
40
|
+
description: string;
|
|
41
|
+
};
|
|
42
|
+
failures: {
|
|
43
|
+
type: string;
|
|
44
|
+
items: {
|
|
45
|
+
type: string;
|
|
46
|
+
};
|
|
47
|
+
description: string;
|
|
48
|
+
};
|
|
49
|
+
logs: {
|
|
50
|
+
type: string;
|
|
51
|
+
description: string;
|
|
52
|
+
};
|
|
53
|
+
analysis: {
|
|
54
|
+
type: string;
|
|
55
|
+
description: string;
|
|
56
|
+
};
|
|
57
|
+
suggestions: {
|
|
58
|
+
type: string;
|
|
59
|
+
items: {
|
|
60
|
+
type: string;
|
|
61
|
+
};
|
|
62
|
+
description: string;
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
required: string[];
|
|
66
|
+
additionalProperties: boolean;
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
//# sourceMappingURL=qa_context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qa_context.d.ts","sourceRoot":"","sources":["../../../src/schemas/qa_context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAsBtE;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoC7B,CAAC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* QA Verification Context and Verdict Schemas
|
|
4
|
+
*
|
|
5
|
+
* Defines the input context and output verdict for the qa_verifier role.
|
|
6
|
+
* QaContext is assembled by sast-ai-app and passed via --qa-context JSON file.
|
|
7
|
+
* QaVerdict is the structured output returned by the qa_verifier agent.
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
26
|
+
var ownKeys = function(o) {
|
|
27
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
28
|
+
var ar = [];
|
|
29
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
return ownKeys(o);
|
|
33
|
+
};
|
|
34
|
+
return function (mod) {
|
|
35
|
+
if (mod && mod.__esModule) return mod;
|
|
36
|
+
var result = {};
|
|
37
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
38
|
+
__setModuleDefault(result, mod);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
})();
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
exports.QA_VERDICT_SCHEMA = void 0;
|
|
44
|
+
exports.loadQaContext = loadQaContext;
|
|
45
|
+
const fs = __importStar(require("fs"));
|
|
46
|
+
const path = __importStar(require("path"));
|
|
47
|
+
function loadQaContext(filePath, cwd) {
|
|
48
|
+
const resolved = path.isAbsolute(filePath) ? filePath : path.join(cwd, filePath);
|
|
49
|
+
if (!fs.existsSync(resolved)) {
|
|
50
|
+
throw new Error(`QA context file not found: ${resolved}`);
|
|
51
|
+
}
|
|
52
|
+
const content = fs.readFileSync(resolved, 'utf-8');
|
|
53
|
+
const ctx = JSON.parse(content);
|
|
54
|
+
if (!ctx.pr_url || typeof ctx.pr_url !== 'string') {
|
|
55
|
+
throw new Error('QA context must include a valid pr_url');
|
|
56
|
+
}
|
|
57
|
+
if (!ctx.test_command || typeof ctx.test_command !== 'string') {
|
|
58
|
+
throw new Error('QA context must include a valid test_command');
|
|
59
|
+
}
|
|
60
|
+
if (typeof ctx.timeout_seconds !== 'number' || ctx.timeout_seconds < 1) {
|
|
61
|
+
ctx.timeout_seconds = 300;
|
|
62
|
+
}
|
|
63
|
+
if (typeof ctx.block_on_failure !== 'boolean') {
|
|
64
|
+
ctx.block_on_failure = false;
|
|
65
|
+
}
|
|
66
|
+
return ctx;
|
|
67
|
+
}
|
|
68
|
+
exports.QA_VERDICT_SCHEMA = {
|
|
69
|
+
name: 'qa_verdict',
|
|
70
|
+
strict: true,
|
|
71
|
+
schema: {
|
|
72
|
+
type: 'object',
|
|
73
|
+
properties: {
|
|
74
|
+
pass: {
|
|
75
|
+
type: 'boolean',
|
|
76
|
+
description: 'Whether all tests passed'
|
|
77
|
+
},
|
|
78
|
+
test_exit_code: {
|
|
79
|
+
type: 'number',
|
|
80
|
+
description: 'Exit code from the test command'
|
|
81
|
+
},
|
|
82
|
+
failures: {
|
|
83
|
+
type: 'array',
|
|
84
|
+
items: { type: 'string' },
|
|
85
|
+
description: 'List of individual test failure descriptions'
|
|
86
|
+
},
|
|
87
|
+
logs: {
|
|
88
|
+
type: 'string',
|
|
89
|
+
description: 'Relevant test output logs (truncated if large)'
|
|
90
|
+
},
|
|
91
|
+
analysis: {
|
|
92
|
+
type: 'string',
|
|
93
|
+
description: 'LLM analysis of why tests failed and potential root causes'
|
|
94
|
+
},
|
|
95
|
+
suggestions: {
|
|
96
|
+
type: 'array',
|
|
97
|
+
items: { type: 'string' },
|
|
98
|
+
description: 'Actionable suggestions for fixing the test failures'
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
required: ['pass', 'test_exit_code', 'failures', 'logs'],
|
|
102
|
+
additionalProperties: false
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
//# sourceMappingURL=qa_context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qa_context.js","sourceRoot":"","sources":["../../../src/schemas/qa_context.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BH,sCAsBC;AA9CD,uCAAyB;AACzB,2CAA6B;AAuB7B,SAAgB,aAAa,CAAC,QAAgB,EAAE,GAAW;IACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACjF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAc,CAAC;IAE7C,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ,IAAI,GAAG,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC;IAC5B,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QAC9C,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAEY,QAAA,iBAAiB,GAAG;IAC/B,IAAI,EAAE,YAAY;IAClB,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,0BAA0B;aACxC;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iCAAiC;aAC/C;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,8CAA8C;aAC5D;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gDAAgD;aAC9D;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4DAA4D;aAC1E;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,qDAAqD;aACnE;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC;QACxD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
|
|
@@ -35,10 +35,14 @@ export interface FixContext {
|
|
|
35
35
|
negative_examples: string;
|
|
36
36
|
custom_instructions: string;
|
|
37
37
|
chain_of_thought: boolean;
|
|
38
|
+
/** Deployment/environment context from the project settings */
|
|
39
|
+
deployment_context?: string;
|
|
38
40
|
/** Retry-specific: previous fix code that failed validation */
|
|
39
41
|
previous_fix_code?: string;
|
|
40
42
|
/** Retry-specific: validation errors from the previous attempt */
|
|
41
43
|
validation_errors?: string[];
|
|
44
|
+
/** Phase 3: When true, the agent should generate a companion unit test */
|
|
45
|
+
generate_companion_test?: boolean;
|
|
42
46
|
}
|
|
43
47
|
export interface FixOutput {
|
|
44
48
|
fixed_code: string;
|
|
@@ -47,6 +51,12 @@ export interface FixOutput {
|
|
|
47
51
|
explanation: string;
|
|
48
52
|
confidence: 'high' | 'medium' | 'low';
|
|
49
53
|
breaking_changes: boolean;
|
|
54
|
+
/** Phase 3: Generated companion test code */
|
|
55
|
+
test_code?: string;
|
|
56
|
+
/** Phase 3: Suggested file path for the test (e.g. "__tests__/fix.test.ts") */
|
|
57
|
+
test_file?: string;
|
|
58
|
+
/** Phase 3: Test framework used (e.g. "jest", "pytest") */
|
|
59
|
+
test_framework?: string;
|
|
50
60
|
}
|
|
51
61
|
/**
|
|
52
62
|
* JSON Schema for Claude Agent SDK's outputFormat option.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security_fix.d.ts","sourceRoot":"","sources":["../../../src/schemas/security_fix.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wBAAwB,EAAE,MAAM,CAAC;IACjC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,2BAA2B,EAAE,MAAM,CAAC;IACpC,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,YAAY,EAAE,qBAAqB,CAAC;IACpC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kEAAkE;IAClE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"security_fix.d.ts","sourceRoot":"","sources":["../../../src/schemas/security_fix.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wBAAwB,EAAE,MAAM,CAAC;IACjC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,2BAA2B,EAAE,MAAM,CAAC;IACpC,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,YAAY,EAAE,qBAAqB,CAAC;IACpC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,+DAA+D;IAC/D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kEAAkE;IAClE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,0EAA0E;IAC1E,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAMD,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CA8CrD,CAAC"}
|
|
@@ -44,6 +44,18 @@ exports.FIX_OUTPUT_SCHEMA = {
|
|
|
44
44
|
type: 'boolean',
|
|
45
45
|
description: 'Whether this fix introduces breaking changes to the API.',
|
|
46
46
|
},
|
|
47
|
+
test_code: {
|
|
48
|
+
type: 'string',
|
|
49
|
+
description: 'Optional: Generated companion unit test code that verifies the fix.',
|
|
50
|
+
},
|
|
51
|
+
test_file: {
|
|
52
|
+
type: 'string',
|
|
53
|
+
description: 'Optional: Suggested file path for the companion test.',
|
|
54
|
+
},
|
|
55
|
+
test_framework: {
|
|
56
|
+
type: 'string',
|
|
57
|
+
description: 'Optional: Test framework used (e.g. jest, pytest, junit).',
|
|
58
|
+
},
|
|
47
59
|
},
|
|
48
60
|
};
|
|
49
61
|
//# sourceMappingURL=security_fix.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security_fix.js","sourceRoot":"","sources":["../../../src/schemas/security_fix.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;
|
|
1
|
+
{"version":3,"file":"security_fix.js","sourceRoot":"","sources":["../../../src/schemas/security_fix.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAiEH;;;GAGG;AACU,QAAA,iBAAiB,GAA4B;IACxD,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,CAAC;IACnG,UAAU,EAAE;QACV,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,WAAW,EACT,wFAAwF;gBACxF,gEAAgE;SACnE;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,WAAW,EACT,0FAA0F;SAC7F;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EACT,mGAAmG;SACtG;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,+CAA+C;SAC7D;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC;YAC/B,WAAW,EAAE,0CAA0C;SACxD;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,0DAA0D;SACxE;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qEAAqE;SACnF;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,uDAAuD;SACrE;QACD,cAAc,EAAE;YACd,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,2DAA2D;SACzE;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Restricted Bash Tool for QA Verification
|
|
3
|
+
*
|
|
4
|
+
* Provides controlled shell access for the qa_verifier agent role.
|
|
5
|
+
* Enforces security constraints: command validation, timeout, working
|
|
6
|
+
* directory isolation, and output size limits.
|
|
7
|
+
*/
|
|
8
|
+
interface BashToolInput {
|
|
9
|
+
command: string;
|
|
10
|
+
}
|
|
11
|
+
interface BashToolResult {
|
|
12
|
+
stdout: string;
|
|
13
|
+
stderr: string;
|
|
14
|
+
exitCode: number;
|
|
15
|
+
}
|
|
16
|
+
export declare function createBashToolHandler(workDir: string, timeoutMs?: number): (input: BashToolInput) => Promise<BashToolResult>;
|
|
17
|
+
export declare const BASH_TOOL_DEFINITION: {
|
|
18
|
+
name: string;
|
|
19
|
+
description: string;
|
|
20
|
+
inputSchema: {
|
|
21
|
+
type: "object";
|
|
22
|
+
properties: {
|
|
23
|
+
command: {
|
|
24
|
+
type: "string";
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
required: readonly ["command"];
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=bash_tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bash_tool.d.ts","sourceRoot":"","sources":["../../../src/tools/bash_tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsBH,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAiBD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,MAAgB,IAGlE,OAAO,aAAa,KAAG,OAAO,CAAC,cAAc,CAAC,CAiC7D;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;CAahC,CAAC"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Restricted Bash Tool for QA Verification
|
|
4
|
+
*
|
|
5
|
+
* Provides controlled shell access for the qa_verifier agent role.
|
|
6
|
+
* Enforces security constraints: command validation, timeout, working
|
|
7
|
+
* directory isolation, and output size limits.
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
26
|
+
var ownKeys = function(o) {
|
|
27
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
28
|
+
var ar = [];
|
|
29
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
return ownKeys(o);
|
|
33
|
+
};
|
|
34
|
+
return function (mod) {
|
|
35
|
+
if (mod && mod.__esModule) return mod;
|
|
36
|
+
var result = {};
|
|
37
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
38
|
+
__setModuleDefault(result, mod);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
})();
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
exports.BASH_TOOL_DEFINITION = void 0;
|
|
44
|
+
exports.createBashToolHandler = createBashToolHandler;
|
|
45
|
+
const child_process_1 = require("child_process");
|
|
46
|
+
const path = __importStar(require("path"));
|
|
47
|
+
const DANGEROUS_PATTERNS = [
|
|
48
|
+
/rm\s+-rf\s+\//,
|
|
49
|
+
/mkfs\b/,
|
|
50
|
+
/dd\s+if=/,
|
|
51
|
+
/>\s*\/dev\/sd/,
|
|
52
|
+
/chmod\s+777\s+\//,
|
|
53
|
+
/curl\s.*\|\s*(ba)?sh/,
|
|
54
|
+
/wget\s.*\|\s*(ba)?sh/,
|
|
55
|
+
/eval\s/,
|
|
56
|
+
/\bsudo\b/,
|
|
57
|
+
/\bsu\s/,
|
|
58
|
+
/\/etc\/passwd/,
|
|
59
|
+
/\/etc\/shadow/,
|
|
60
|
+
];
|
|
61
|
+
const MAX_OUTPUT_SIZE = 50_000;
|
|
62
|
+
function validateBashCommand(command) {
|
|
63
|
+
if (!command || typeof command !== 'string') {
|
|
64
|
+
return 'Command must be a non-empty string';
|
|
65
|
+
}
|
|
66
|
+
if (command.length > 10_000) {
|
|
67
|
+
return 'Command exceeds maximum length (10000 chars)';
|
|
68
|
+
}
|
|
69
|
+
for (const pattern of DANGEROUS_PATTERNS) {
|
|
70
|
+
if (pattern.test(command)) {
|
|
71
|
+
return `Command blocked by security policy: matches dangerous pattern`;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
76
|
+
function createBashToolHandler(workDir, timeoutMs = 120_000) {
|
|
77
|
+
const resolvedWorkDir = path.resolve(workDir);
|
|
78
|
+
return async (input) => {
|
|
79
|
+
const validationError = validateBashCommand(input.command);
|
|
80
|
+
if (validationError) {
|
|
81
|
+
return { stdout: '', stderr: validationError, exitCode: 1 };
|
|
82
|
+
}
|
|
83
|
+
try {
|
|
84
|
+
const stdout = (0, child_process_1.execSync)(input.command, {
|
|
85
|
+
cwd: resolvedWorkDir,
|
|
86
|
+
encoding: 'utf-8',
|
|
87
|
+
timeout: timeoutMs,
|
|
88
|
+
maxBuffer: MAX_OUTPUT_SIZE * 2,
|
|
89
|
+
env: {
|
|
90
|
+
...process.env,
|
|
91
|
+
NODE_ENV: 'test',
|
|
92
|
+
CI: 'true',
|
|
93
|
+
},
|
|
94
|
+
});
|
|
95
|
+
return {
|
|
96
|
+
stdout: stdout.slice(-MAX_OUTPUT_SIZE),
|
|
97
|
+
stderr: '',
|
|
98
|
+
exitCode: 0,
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
const err = error;
|
|
103
|
+
return {
|
|
104
|
+
stdout: (err.stdout || '').slice(-MAX_OUTPUT_SIZE),
|
|
105
|
+
stderr: (err.stderr || err.message || 'Command failed').slice(-MAX_OUTPUT_SIZE),
|
|
106
|
+
exitCode: err.status || 1,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
exports.BASH_TOOL_DEFINITION = {
|
|
112
|
+
name: 'Bash',
|
|
113
|
+
description: 'Execute a shell command in the project working directory. Use this to run tests, install dependencies, or inspect the project.',
|
|
114
|
+
inputSchema: {
|
|
115
|
+
type: 'object',
|
|
116
|
+
properties: {
|
|
117
|
+
command: {
|
|
118
|
+
type: 'string',
|
|
119
|
+
description: 'The shell command to execute',
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
required: ['command'],
|
|
123
|
+
},
|
|
124
|
+
};
|
|
125
|
+
//# sourceMappingURL=bash_tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bash_tool.js","sourceRoot":"","sources":["../../../src/tools/bash_tool.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CH,sDAoCC;AAjFD,iDAAyC;AACzC,2CAA6B;AAE7B,MAAM,kBAAkB,GAAG;IACzB,eAAe;IACf,QAAQ;IACR,UAAU;IACV,eAAe;IACf,kBAAkB;IAClB,sBAAsB;IACtB,sBAAsB;IACtB,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,eAAe;IACf,eAAe;CAChB,CAAC;AAEF,MAAM,eAAe,GAAG,MAAM,CAAC;AAY/B,SAAS,mBAAmB,CAAC,OAAe;IAC1C,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,oCAAoC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;QAC5B,OAAO,8CAA8C,CAAC;IACxD,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;QACzC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,OAAO,+DAA+D,CAAC;QACzE,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,qBAAqB,CAAC,OAAe,EAAE,YAAoB,OAAO;IAChF,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9C,OAAO,KAAK,EAAE,KAAoB,EAA2B,EAAE;QAC7D,MAAM,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAA,wBAAQ,EAAC,KAAK,CAAC,OAAO,EAAE;gBACrC,GAAG,EAAE,eAAe;gBACpB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,SAAS;gBAClB,SAAS,EAAE,eAAe,GAAG,CAAC;gBAC9B,GAAG,EAAE;oBACH,GAAG,OAAO,CAAC,GAAG;oBACd,QAAQ,EAAE,MAAM;oBAChB,EAAE,EAAE,MAAM;iBACX;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC;gBACtC,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,KAAgF,CAAC;YAC7F,OAAO;gBACL,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC;gBAClD,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC;gBAC/E,QAAQ,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC;aAC1B,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAEY,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,gIAAgI;IAC7I,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,QAAiB;gBACvB,WAAW,EAAE,8BAA8B;aAC5C;SACF;QACD,QAAQ,EAAE,CAAC,SAAS,CAAU;KAC/B;CACF,CAAC"}
|