appsec-agent 2.5.0 → 2.6.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.
Files changed (35) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +1 -1
  3. package/dist/bin/agent-run.js +16 -2
  4. package/dist/bin/agent-run.js.map +1 -1
  5. package/dist/src/agent_actions.d.ts +5 -3
  6. package/dist/src/agent_actions.d.ts.map +1 -1
  7. package/dist/src/agent_actions.js.map +1 -1
  8. package/dist/src/index.d.ts +1 -0
  9. package/dist/src/index.d.ts.map +1 -1
  10. package/dist/src/index.js +4 -1
  11. package/dist/src/index.js.map +1 -1
  12. package/dist/src/main.d.ts.map +1 -1
  13. package/dist/src/main.js +79 -7
  14. package/dist/src/main.js.map +1 -1
  15. package/dist/src/resolveAgentRunMcpEnv.d.ts +1 -1
  16. package/dist/src/resolveAgentRunMcpEnv.js +1 -1
  17. package/dist/src/schemas/codebase_graph.d.ts +135 -0
  18. package/dist/src/schemas/codebase_graph.d.ts.map +1 -0
  19. package/dist/src/schemas/codebase_graph.js +169 -0
  20. package/dist/src/schemas/codebase_graph.js.map +1 -0
  21. package/dist/src/schemas/context_extraction.d.ts +1 -1
  22. package/dist/src/schemas/context_extraction.js +1 -1
  23. package/dist/src/schemas/finding_validator.d.ts +32 -1
  24. package/dist/src/schemas/finding_validator.d.ts.map +1 -1
  25. package/dist/src/schemas/finding_validator.js +58 -8
  26. package/dist/src/schemas/finding_validator.js.map +1 -1
  27. package/dist/src/schemas/import_graph.d.ts +1 -1
  28. package/dist/src/schemas/import_graph.js +1 -1
  29. package/dist/src/schemas/qa_context.d.ts +1 -1
  30. package/dist/src/schemas/qa_context.js +1 -1
  31. package/dist/src/schemas/runtime_enrichment.d.ts +4 -4
  32. package/dist/src/schemas/runtime_enrichment.js +4 -4
  33. package/dist/src/schemas/security_fix.d.ts +1 -1
  34. package/dist/src/schemas/security_fix.js +1 -1
  35. package/package.json +3 -3
package/dist/src/main.js CHANGED
@@ -52,6 +52,7 @@ const context_extraction_1 = require("./schemas/context_extraction");
52
52
  const adversarial_pass_1 = require("./schemas/adversarial_pass");
53
53
  const import_graph_1 = require("./schemas/import_graph");
54
54
  const runtime_enrichment_1 = require("./schemas/runtime_enrichment");
55
+ const codebase_graph_1 = require("./schemas/codebase_graph");
55
56
  const learned_guidance_1 = require("./schemas/learned_guidance");
56
57
  /**
57
58
  * Validate and copy source directory, exiting on validation failure
@@ -171,7 +172,7 @@ function loadImportGraphContextFile(importGraphContextPath, cwd) {
171
172
  }
172
173
  /**
173
174
  * Load and validate a runtime-enrichment context JSON file (v2.3.0 /
174
- * sast-ai-app plan §4 + §8.14). On any parse/IO error we log and return
175
+ * parent-app plan §4 + §8.14). On any parse/IO error we log and return
175
176
  * `null` (fail-open): the downstream scan should not be blocked by a bad
176
177
  * runtime-enrichment payload; the authoritative gate override lives in the
177
178
  * parent app's `prScanProcessor` and only depends on `matchedFiles`, not
@@ -207,6 +208,44 @@ function loadRuntimeEnrichmentContextFile(runtimeEnrichmentContextPath, cwd) {
207
208
  return null;
208
209
  }
209
210
  }
211
+ /**
212
+ * Load and validate a codebase-graph context JSON file (v2.6.0 / parent-app
213
+ * plan §8.18 Phase 2). On any parse/IO error we log and return `null`
214
+ * (fail-open): the downstream scan should not be blocked by a bad
215
+ * codebase-graph payload; the parent app's `composeCodebaseGraphContextPayload`
216
+ * is the authoritative producer and Phase 2 is purely advisory until Phase 4
217
+ * decides whether the structural-graph signal feeds a hard gate.
218
+ */
219
+ function loadCodebaseGraphContextFile(codebaseGraphContextPath, cwd) {
220
+ const resolvedPath = (0, utils_1.validateInputFilePath)(codebaseGraphContextPath, cwd);
221
+ if (!resolvedPath) {
222
+ const safePath = (0, utils_1.sanitizePathForError)(codebaseGraphContextPath);
223
+ console.warn(`⚠️ Invalid codebase-graph context path (ignored): ${safePath}`);
224
+ return null;
225
+ }
226
+ const safePath = (0, utils_1.sanitizePathForError)(resolvedPath);
227
+ if (!fs.existsSync(resolvedPath)) {
228
+ console.warn(`⚠️ Codebase-graph context file not found (ignored): ${safePath}`);
229
+ return null;
230
+ }
231
+ let data;
232
+ try {
233
+ const content = fs.readFileSync(resolvedPath, 'utf-8');
234
+ data = JSON.parse(content);
235
+ }
236
+ catch (error) {
237
+ const errorMessage = error?.message || 'Unknown error';
238
+ console.warn(`⚠️ Failed to read codebase-graph context ${safePath} (ignored): ${errorMessage}`);
239
+ return null;
240
+ }
241
+ try {
242
+ return (0, codebase_graph_1.parseCodebaseGraphContext)(data);
243
+ }
244
+ catch (e) {
245
+ console.warn(`⚠️ Invalid codebase-graph context ${safePath} (ignored): ${e?.message || e}`);
246
+ return null;
247
+ }
248
+ }
210
249
  /**
211
250
  * Load and validate learned-guidance synthesizer inputs (v2.5.0 / parent-app
212
251
  * plan §3.8). On any path / parse / validation error we log and exit non-zero
@@ -535,7 +574,7 @@ function buildContextExtractorPrompt(ctx) {
535
574
  parts.push('2. **security_context**: List specific security defenses found in dependencies and config: auth frameworks (passport, next-auth), encryption (bcrypt, argon2), validation (zod, joi), CSRF/XSS protection (helmet, csurf), rate limiting, ORM usage (Prisma, SQLAlchemy — note these use parameterized queries), CI security scanning (CodeQL, Snyk, Trivy). Be concrete with library names.');
536
575
  parts.push('3. **deployment_context**: How the project is built and deployed: CI/CD system (GitHub Actions, Codefresh, Jenkins), container runtime (Docker, ECS, Kubernetes), cloud provider, environments, infrastructure (Terraform, Helm). Extract from CI configs, Dockerfiles, and infra files.');
537
576
  parts.push('4. **developer_context**: Extract ONLY security-relevant rules from developer guidance files (CLAUDE.md, AGENTS.md, .cursor/rules/). Include: PHI/PII handling rules, SQL injection prevention, auth patterns, input validation requirements, compliance mandates (HIPAA, SOX, GDPR). EXCLUDE: generic coding style, formatting, naming conventions, component patterns, UI guidelines.');
538
- parts.push('5. **suggested_exclusions**: Based on the repository tree structure, suggest glob patterns for directories/files that should be EXCLUDED from security scanning. Only suggest project-specific patterns not already in the standard preset (which covers: node_modules, vendor, .git, __pycache__, dist, build, coverage, tests, __tests__, e2e, spec, helm, terraform, .codefresh, .next, test files like *.test.ts, *.spec.ts, *.stories.ts). Study the tree structure carefully at ALL nesting depths. Look for: generated/compiled output dirs, vendored third-party copies, large asset directories (images, fonts, resources), documentation-only dirs, migration/seed scripts, example/sample code, log/temp/runtime dirs (logs, uploads, work-dir, data), IDE/editor config (.cursor, .vscode, .idea), CI/utility scripts that are not application code. Use specific paths from the tree (e.g., "backend/scripts/**", "packages/vscode-sast-ai/resources/**", "sre/**"). Return as comma-separated glob patterns. Return empty string if no project-specific exclusions are needed.');
577
+ parts.push('5. **suggested_exclusions**: Based on the repository tree structure, suggest glob patterns for directories/files that should be EXCLUDED from security scanning. Only suggest project-specific patterns not already in the standard preset (which covers: node_modules, vendor, .git, __pycache__, dist, build, coverage, tests, __tests__, e2e, spec, helm, terraform, .codefresh, .next, test files like *.test.ts, *.spec.ts, *.stories.ts). Study the tree structure carefully at ALL nesting depths. Look for: generated/compiled output dirs, vendored third-party copies, large asset directories (images, fonts, resources), documentation-only dirs, migration/seed scripts, example/sample code, log/temp/runtime dirs (logs, uploads, work-dir, data), IDE/editor config (.cursor, .vscode, .idea), CI/utility scripts that are not application code. Use specific paths from the tree (e.g., "backend/scripts/**", "packages/desktop-app/resources/**", "sre/**"). Return as comma-separated glob patterns. Return empty string if no project-specific exclusions are needed.');
539
578
  parts.push('\nReturn empty strings for fields where no relevant information is found. Be concise but specific.');
540
579
  return parts.join('\n');
541
580
  }
@@ -564,7 +603,7 @@ function getChunkingOptions(confDict, environment, args) {
564
603
  /**
565
604
  * Build user prompt for PR diff-focused code review
566
605
  */
567
- function buildDiffReviewPrompt(diffContext, outputFile, outputFormat, additionalContext, importGraphSummary, runtimeEnrichmentSummary) {
606
+ function buildDiffReviewPrompt(diffContext, outputFile, outputFormat, additionalContext, importGraphSummary, runtimeEnrichmentSummary, codebaseGraphSummary) {
568
607
  const formattedDiff = (0, diff_context_1.formatDiffContextForPrompt)(diffContext);
569
608
  let prompt = `You are reviewing a Pull Request for security vulnerabilities.
570
609
 
@@ -602,6 +641,10 @@ Developer context reflects the team's stated practices. If you find evidence in
602
641
  }
603
642
  if (runtimeEnrichmentSummary && runtimeEnrichmentSummary.trim()) {
604
643
  prompt += `${runtimeEnrichmentSummary}
644
+ `;
645
+ }
646
+ if (codebaseGraphSummary && codebaseGraphSummary.trim()) {
647
+ prompt += `${codebaseGraphSummary}
605
648
  `;
606
649
  }
607
650
  if (outputFormat?.toLowerCase() === 'json') {
@@ -664,7 +707,7 @@ async function main(confDict, args) {
664
707
  if (importGraphCtx) {
665
708
  console.log(`Using import-graph context: ${importGraphCtx.files.length} file(s), coverage=${importGraphCtx.coverage ?? 'full'}, sha=${importGraphCtx.default_branch_sha?.slice(0, 12) ?? 'n/a'}`);
666
709
  }
667
- // v2.3.0 / sast-ai-app plan §4 + §8.14: optional per-file
710
+ // v2.3.0 / parent-app plan §4 + §8.14: optional per-file
668
711
  // production-incident summary from the parent app's
669
712
  // runtimeEnrichmentService. Fail-open on any parse/IO error — the
670
713
  // authoritative gate override lives in the parent app's
@@ -679,12 +722,27 @@ async function main(confDict, args) {
679
722
  if (runtimeEnrichmentCtx) {
680
723
  console.log(`Using runtime-enrichment context: ${runtimeEnrichmentCtx.files.length} hot file(s)${runtimeEnrichmentCtx.default_branch_sha ? `, sha=${runtimeEnrichmentCtx.default_branch_sha.slice(0, 12)}` : ''}`);
681
724
  }
725
+ // v2.6.0 / parent-app plan §8.18 Phase 2: optional per-changed-file
726
+ // structural-graph summary (callers/callees/blast-radius) from the
727
+ // parent app's composeCodebaseGraphContextPayload. Fail-open on any
728
+ // parse/IO error — Phase 2 is purely advisory; the cbm artifact
729
+ // itself is shadow-only on the parent side until Phase 4 decides
730
+ // whether the structural-graph signal feeds a hard gate.
731
+ const codebaseGraphCtx = args.codebase_graph_context
732
+ ? loadCodebaseGraphContextFile(args.codebase_graph_context, currentWorkingDir)
733
+ : null;
734
+ const codebaseGraphSummary = codebaseGraphCtx
735
+ ? (0, codebase_graph_1.formatCodebaseGraphContextForPrompt)(codebaseGraphCtx)
736
+ : '';
737
+ if (codebaseGraphCtx) {
738
+ console.log(`Using codebase-graph context: ${codebaseGraphCtx.files.length} file(s), coverage=${codebaseGraphCtx.coverage ?? 'full'}${codebaseGraphCtx.default_branch_sha ? `, sha=${codebaseGraphCtx.default_branch_sha.slice(0, 12)}` : ''}`);
739
+ }
682
740
  const tmpSrcDir = args.src_dir ? validateAndCopySrcDir(args.src_dir, currentWorkingDir) : null;
683
741
  const chunkingOpts = getChunkingOptions(confDict, args.environment, args);
684
742
  const { batches, skippedFiles, skippedDueToBatches } = (0, diff_chunking_1.splitIntoBatches)(diffContext, chunkingOpts);
685
743
  const singleBatchNoSkipped = batches.length === 1 && skippedFiles.length === 0 && !skippedDueToBatches;
686
744
  if (singleBatchNoSkipped) {
687
- const userPrompt = buildDiffReviewPrompt(batches[0], outputFile, args.output_format || 'json', args.context, importGraphSummary, runtimeEnrichmentSummary);
745
+ const userPrompt = buildDiffReviewPrompt(batches[0], outputFile, args.output_format || 'json', args.context, importGraphSummary, runtimeEnrichmentSummary, codebaseGraphSummary);
688
746
  const structuredResult = await agentActions.diffReviewerWithOptions(userPrompt, tmpSrcDir, undefined, args.no_tools);
689
747
  if (structuredResult) {
690
748
  fs.writeFileSync(outputFile, structuredResult, 'utf-8');
@@ -701,7 +759,7 @@ async function main(confDict, args) {
701
759
  try {
702
760
  for (let i = 0; i < batches.length; i++) {
703
761
  const batchOutputPath = path.join(tempDir, `code_review_batch_${i + 1}.${extension}`);
704
- const userPrompt = buildDiffReviewPrompt(batches[i], batchOutputPath, args.output_format || 'json', args.context, importGraphSummary, runtimeEnrichmentSummary);
762
+ const userPrompt = buildDiffReviewPrompt(batches[i], batchOutputPath, args.output_format || 'json', args.context, importGraphSummary, runtimeEnrichmentSummary, codebaseGraphSummary);
705
763
  const batchResult = await agentActions.diffReviewerWithOptions(userPrompt, tmpSrcDir, (result) => {
706
764
  if (result.total_cost_usd !== undefined && result.total_cost_usd > 0) {
707
765
  batchCosts.push(result.total_cost_usd);
@@ -880,7 +938,21 @@ Use sequential IDs: node-001/flow-001/tb-001 for DFD elements, THREAT-001 for th
880
938
  console.error('Error: --retest-context is required for the finding_validator role.');
881
939
  process.exit(1);
882
940
  }
883
- const retestContext = (0, finding_validator_1.loadRetestContext)(args.retest_context, currentWorkingDir);
941
+ // Route caller-input validation failures to exit code 2 + a structured
942
+ // stderr signal (already printed inside loadRetestContext via fail()).
943
+ // Without this catch, validation errors would propagate through the
944
+ // default unhandled-exception path and exit code 1, which parent apps
945
+ // can't tell apart from a real agent crash.
946
+ let retestContext;
947
+ try {
948
+ retestContext = (0, finding_validator_1.loadRetestContext)(args.retest_context, currentWorkingDir);
949
+ }
950
+ catch (e) {
951
+ if (e instanceof finding_validator_1.RetestContextValidationError) {
952
+ process.exit(2);
953
+ }
954
+ throw e;
955
+ }
884
956
  const outputFile = validateOutputFile(args.output_file || 'retest_verdict.json', currentWorkingDir);
885
957
  const tmpSrcDir = args.src_dir
886
958
  ? validateAndCopySrcDir(args.src_dir, currentWorkingDir)
@@ -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":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * MCP URL / Bearer resolution for `bin/agent-run.ts` (v2.4.5+).
3
3
  *
4
- * Parent apps (e.g. sast-ai-app v6.1.x) pass `SAST_INTERNAL_TOOLS_MCP_URL` and
4
+ * Parent apps (v6.1.x+) pass `SAST_INTERNAL_TOOLS_MCP_URL` and
5
5
  * `SAST_INTERNAL_TOOLS_MCP_BEARER` so the listener URL is not on argv. CLI
6
6
  * `--mcp-server-url` remains for ad-hoc use; env wins for the URL when both are set.
7
7
  */
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * MCP URL / Bearer resolution for `bin/agent-run.ts` (v2.4.5+).
4
4
  *
5
- * Parent apps (e.g. sast-ai-app v6.1.x) pass `SAST_INTERNAL_TOOLS_MCP_URL` and
5
+ * Parent apps (v6.1.x+) pass `SAST_INTERNAL_TOOLS_MCP_URL` and
6
6
  * `SAST_INTERNAL_TOOLS_MCP_BEARER` so the listener URL is not on argv. CLI
7
7
  * `--mcp-server-url` remains for ad-hoc use; env wins for the URL when both are set.
8
8
  */
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Codebase-graph context input (v2.6.0 / parent-app plan §8.18 Phase 2) —
3
+ * per-changed-file structural-graph summary passed to `pr_reviewer` so the LLM
4
+ * can factor symbol-level callers/callees and downstream blast-radius into its
5
+ * severity + confidence calls.
6
+ *
7
+ * Distinct from `--import-graph-context` (file-level inbound import counts via
8
+ * SCIP). This context is *symbol-level* (cbm tree-sitter graph; 155 languages):
9
+ * - `callers` — qualified symbol names whose body invokes a symbol
10
+ * defined in the changed file.
11
+ * - `callees` — qualified symbol names invoked from a symbol defined
12
+ * in the changed file.
13
+ * - `blast_radius_files_count` — number of unique files reachable via
14
+ * outbound CALLS edges within the configured depth.
15
+ *
16
+ * The parent app's `composeCodebaseGraphContextPayload`
17
+ * (`<parent-app>/backend/src/services/codebaseGraph/`) does the cbm MCP queries
18
+ * (`search_graph` to find symbols defined in each changed file →
19
+ * `trace_path(direction=both, mode=calls, depth=2)` per symbol) and writes the
20
+ * JSON file. The agent here only parses + formats it for the prompt — no MCP
21
+ * query at agent runtime (Phase 3 is the live-MCP variant).
22
+ *
23
+ * Shape mirrors the v5.4.0 import-graph and v2.3.0 runtime-enrichment patterns
24
+ * exactly so that `prScanProcessor` can reuse the same fail-open + size-cap +
25
+ * coverage tagging conventions across all three structural-context families.
26
+ *
27
+ * **§8.5 PHI gate**: cbm sees only source-code text from CapsuleHealth-owned
28
+ * repos (no PHI). The schema accepts only structural-edge fields; any extras
29
+ * on per-file entries are silently dropped (mirrors runtime-enrichment's PHI
30
+ * minimization invariant defensively, even though cbm's input surface
31
+ * cannot contain PHI by construction).
32
+ */
33
+ export interface CodebaseGraphFileEntry {
34
+ /** Repository-relative file path. Must be non-empty after trimming. */
35
+ file: string;
36
+ /**
37
+ * Optional list of qualified symbol names defined in this file that the PR
38
+ * actually changes. When present, the parent app scoped the
39
+ * callers/callees query to these symbols only (instead of every symbol
40
+ * defined in the file). Truncated at 20 to bound the prompt budget.
41
+ */
42
+ symbols_changed?: string[];
43
+ /**
44
+ * Inbound callers — qualified symbol names whose body invokes a symbol
45
+ * defined in this file. Truncated at 20 (most-popular first per the
46
+ * parent app's ranking) so the most structurally-important callers
47
+ * survive the prompt-budget cap.
48
+ */
49
+ callers?: string[];
50
+ /**
51
+ * Outbound callees — qualified symbol names invoked from any symbol
52
+ * defined in this file. Same truncation contract as `callers`.
53
+ */
54
+ callees?: string[];
55
+ /**
56
+ * Number of unique files reachable from this file via outbound CALLS
57
+ * edges within the parent app's configured `trace_path` depth (default
58
+ * 2). The LLM uses this as a "blast radius" signal — high counts
59
+ * indicate the changed file sits structurally upstream of much of the
60
+ * codebase, so a regression here propagates broadly.
61
+ *
62
+ * Coerced to a non-negative integer (fractional values floored,
63
+ * negatives clamped to 0).
64
+ */
65
+ blast_radius_files_count: number;
66
+ /**
67
+ * Per-file resolution outcome:
68
+ * - `ok` — symbols found in cbm graph; callers/callees populated
69
+ * from `trace_path` results.
70
+ * - `no_symbols` — file is in the changed set but cbm's `search_graph`
71
+ * returned no Function/Method nodes for it (data file,
72
+ * config, generated code, language not in cbm's 155).
73
+ * - `missing` — cbm artifact for the project's current head SHA was
74
+ * not found on the PVC; the parent app's load step
75
+ * short-circuited with an empty entry per file.
76
+ * - `partial` — at least one `trace_path` query failed (cbm
77
+ * transient error, depth limit, or query timeout); the
78
+ * callers/callees lists may be incomplete.
79
+ */
80
+ graph_status?: 'ok' | 'no_symbols' | 'missing' | 'partial';
81
+ }
82
+ export interface CodebaseGraphContext {
83
+ /** Optional default-branch SHA the cbm artifact was indexed from. */
84
+ default_branch_sha?: string;
85
+ /**
86
+ * Optional ISO-8601 timestamp recorded when the parent app composed
87
+ * this payload. Useful for forensic debugging if the soak shows
88
+ * unexpected behavior; not surfaced in the prompt.
89
+ */
90
+ parsed_at?: string;
91
+ /**
92
+ * Roll-up resolution status across all files in the request:
93
+ * - `full` — every changed file was found in the cbm graph and at
94
+ * least one symbol traced.
95
+ * - `partial` — some files traced cleanly, others were `no_symbols` or
96
+ * `partial`.
97
+ * - `none` — the cbm artifact was loaded but no changed file
98
+ * produced traceable symbols (highly unusual; surface
99
+ * to ops via `coverage` panel).
100
+ * - `empty` — the parent app could not load a cbm artifact for the
101
+ * current head SHA (`codebase_graph_heads` row missing
102
+ * or stale). Fail-open; the LLM ignores this block.
103
+ */
104
+ coverage?: 'full' | 'partial' | 'none' | 'empty';
105
+ /**
106
+ * Per-file rows — already filtered by the parent app to the PR's
107
+ * changed-file set, so the LLM sees a compact "files touched by this
108
+ * PR with their structural-graph context" slice. Empty array means
109
+ * "graph configured but no overlap" — the formatter short-circuits
110
+ * to empty string in that case.
111
+ */
112
+ files: CodebaseGraphFileEntry[];
113
+ /** Optional metadata block for forensic/debug correlation; not surfaced in prompt. */
114
+ metadata?: {
115
+ project_name?: string;
116
+ };
117
+ }
118
+ /**
119
+ * Parse and validate a codebase-graph context JSON payload (throws on
120
+ * structural error). Caps mirror import-graph (500 files, 20 callers per
121
+ * file) so the prompt-budget worst case is symmetric across the two
122
+ * structural contexts.
123
+ */
124
+ export declare function parseCodebaseGraphContext(data: unknown): CodebaseGraphContext;
125
+ /**
126
+ * Format the context for inclusion in a PR-reviewer user prompt. Compact by
127
+ * design — symbol lists are truncated and the table renders only the most
128
+ * structurally-significant signals so the block stays well under the
129
+ * import-graph + runtime-enrichment budget envelope.
130
+ *
131
+ * Files are rendered most-blast-radius first to anchor the LLM's attention
132
+ * on the structurally-upstream files when the prompt is truncated.
133
+ */
134
+ export declare function formatCodebaseGraphContextForPrompt(ctx: CodebaseGraphContext): string;
135
+ //# sourceMappingURL=codebase_graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codebase_graph.d.ts","sourceRoot":"","sources":["../../../src/schemas/codebase_graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,MAAM,WAAW,sBAAsB;IACrC,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;;;;;;;OASG;IACH,wBAAwB,EAAE,MAAM,CAAC;IACjC;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,EAAE,IAAI,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;CAC5D;AAED,MAAM,WAAW,oBAAoB;IACnC,qEAAqE;IACrE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;IACjD;;;;;;OAMG;IACH,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,sFAAsF;IACtF,QAAQ,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACtC;AA+BD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,OAAO,GAAG,oBAAoB,CA8D7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,oBAAoB,GAAG,MAAM,CAkDrF"}