ghagga-core 3.1.0 → 3.3.0

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 (113) hide show
  1. package/dist/agents/issue-triage.d.ts +143 -0
  2. package/dist/agents/issue-triage.d.ts.map +1 -0
  3. package/dist/agents/issue-triage.js +230 -0
  4. package/dist/agents/issue-triage.js.map +1 -0
  5. package/dist/agents/prompts.d.ts +41 -1
  6. package/dist/agents/prompts.d.ts.map +1 -1
  7. package/dist/agents/prompts.js +123 -2
  8. package/dist/agents/prompts.js.map +1 -1
  9. package/dist/embed.d.ts +140 -0
  10. package/dist/embed.d.ts.map +1 -1
  11. package/dist/embed.js +288 -0
  12. package/dist/embed.js.map +1 -1
  13. package/dist/enhance/prompt.d.ts +1 -1
  14. package/dist/enhance/prompt.d.ts.map +1 -1
  15. package/dist/graph/builder.d.ts +13 -1
  16. package/dist/graph/builder.d.ts.map +1 -1
  17. package/dist/graph/builder.js +305 -6
  18. package/dist/graph/builder.js.map +1 -1
  19. package/dist/graph/call-chain.d.ts +27 -0
  20. package/dist/graph/call-chain.d.ts.map +1 -1
  21. package/dist/graph/call-chain.js +113 -18
  22. package/dist/graph/call-chain.js.map +1 -1
  23. package/dist/graph/changed-symbols.d.ts +57 -0
  24. package/dist/graph/changed-symbols.d.ts.map +1 -0
  25. package/dist/graph/changed-symbols.js +123 -0
  26. package/dist/graph/changed-symbols.js.map +1 -0
  27. package/dist/graph/extractors/index.d.ts +3 -3
  28. package/dist/graph/extractors/index.d.ts.map +1 -1
  29. package/dist/graph/extractors/index.js +2 -2
  30. package/dist/graph/extractors/index.js.map +1 -1
  31. package/dist/graph/extractors/javascript.d.ts.map +1 -1
  32. package/dist/graph/extractors/javascript.js +89 -3
  33. package/dist/graph/extractors/javascript.js.map +1 -1
  34. package/dist/graph/extractors/rust.d.ts.map +1 -1
  35. package/dist/graph/extractors/rust.js +7 -2
  36. package/dist/graph/extractors/rust.js.map +1 -1
  37. package/dist/graph/extractors/types.d.ts +7 -1
  38. package/dist/graph/extractors/types.d.ts.map +1 -1
  39. package/dist/graph/extractors/typescript.d.ts.map +1 -1
  40. package/dist/graph/extractors/typescript.js +95 -4
  41. package/dist/graph/extractors/typescript.js.map +1 -1
  42. package/dist/graph/index.d.ts +8 -3
  43. package/dist/graph/index.d.ts.map +1 -1
  44. package/dist/graph/index.js +4 -2
  45. package/dist/graph/index.js.map +1 -1
  46. package/dist/graph/loader.d.ts +29 -0
  47. package/dist/graph/loader.d.ts.map +1 -1
  48. package/dist/graph/loader.js +70 -1
  49. package/dist/graph/loader.js.map +1 -1
  50. package/dist/graph/narrow-symbols.d.ts +73 -0
  51. package/dist/graph/narrow-symbols.d.ts.map +1 -0
  52. package/dist/graph/narrow-symbols.js +195 -0
  53. package/dist/graph/narrow-symbols.js.map +1 -0
  54. package/dist/graph/schema.d.ts +117 -4
  55. package/dist/graph/schema.d.ts.map +1 -1
  56. package/dist/graph/schema.js +67 -3
  57. package/dist/graph/schema.js.map +1 -1
  58. package/dist/graph/scip/builder.d.ts +64 -0
  59. package/dist/graph/scip/builder.d.ts.map +1 -0
  60. package/dist/graph/scip/builder.js +268 -0
  61. package/dist/graph/scip/builder.js.map +1 -0
  62. package/dist/graph/scip/merge.d.ts +66 -0
  63. package/dist/graph/scip/merge.d.ts.map +1 -0
  64. package/dist/graph/scip/merge.js +98 -0
  65. package/dist/graph/scip/merge.js.map +1 -0
  66. package/dist/index.d.ts +9 -4
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +5 -2
  69. package/dist/index.js.map +1 -1
  70. package/dist/memory/backfill.d.ts +58 -0
  71. package/dist/memory/backfill.d.ts.map +1 -0
  72. package/dist/memory/backfill.js +85 -0
  73. package/dist/memory/backfill.js.map +1 -0
  74. package/dist/memory/sqlite.d.ts +78 -12
  75. package/dist/memory/sqlite.d.ts.map +1 -1
  76. package/dist/memory/sqlite.js +265 -85
  77. package/dist/memory/sqlite.js.map +1 -1
  78. package/dist/pipeline/gather-context.d.ts.map +1 -1
  79. package/dist/pipeline/gather-context.js +4 -2
  80. package/dist/pipeline/gather-context.js.map +1 -1
  81. package/dist/pipeline/gather-safe.d.ts +24 -4
  82. package/dist/pipeline/gather-safe.d.ts.map +1 -1
  83. package/dist/pipeline/gather-safe.js +42 -6
  84. package/dist/pipeline/gather-safe.js.map +1 -1
  85. package/dist/pipeline/prepare-graph.d.ts +23 -1
  86. package/dist/pipeline/prepare-graph.d.ts.map +1 -1
  87. package/dist/pipeline/prepare-graph.js +119 -3
  88. package/dist/pipeline/prepare-graph.js.map +1 -1
  89. package/dist/pipeline/prepare.d.ts.map +1 -1
  90. package/dist/pipeline/prepare.js +28 -0
  91. package/dist/pipeline/prepare.js.map +1 -1
  92. package/dist/pipeline/state.d.ts +3 -1
  93. package/dist/pipeline/state.d.ts.map +1 -1
  94. package/dist/providers/cli-bridge.d.ts.map +1 -1
  95. package/dist/providers/cli-bridge.js +1 -0
  96. package/dist/providers/cli-bridge.js.map +1 -1
  97. package/dist/providers/gateway-discovery.d.ts +5 -5
  98. package/dist/providers/gateway-discovery.d.ts.map +1 -1
  99. package/dist/providers/gateway-discovery.js +11 -9
  100. package/dist/providers/gateway-discovery.js.map +1 -1
  101. package/dist/providers/gateway.d.ts +87 -0
  102. package/dist/providers/gateway.d.ts.map +1 -1
  103. package/dist/providers/gateway.js +386 -8
  104. package/dist/providers/gateway.js.map +1 -1
  105. package/dist/types.d.ts +61 -2
  106. package/dist/types.d.ts.map +1 -1
  107. package/dist/types.js.map +1 -1
  108. package/dist/utils/concurrency.d.ts.map +1 -1
  109. package/dist/utils/concurrency.js +37 -1
  110. package/dist/utils/concurrency.js.map +1 -1
  111. package/dist/utils/llm-timeout.d.ts +1 -1
  112. package/dist/utils/llm-timeout.d.ts.map +1 -1
  113. package/package.json +10 -8
@@ -1 +1 @@
1
- {"version":3,"file":"gather-context.js","sourceRoot":"","sources":["../../src/pipeline/gather-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gather-context.js","sourceRoot":"","sources":["../../src/pipeline/gather-context.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,12 @@
5
5
  * `export` was added and relative import paths adjusted. They are
6
6
  * private to the gather-context phase.
7
7
  *
8
- * ⚠️ queryCodeIntelSafe's catch is UNREACHABLE via provider failures
8
+ * ⚠️ queryCodeIntelSafe's OUTER catch is UNREACHABLE via provider failures
9
9
  * (Promise.allSettled swallows per-file rejections); it only fires when
10
10
  * the emit callback throws on the success message. Pinned by the golden
11
- * suite — preserve the catch literally.
11
+ * suite — preserve the catch literally. Per-file rejections ARE now counted
12
+ * in the success path (CORE-INTEL-003): they feed `filesFailed` and, when
13
+ * every query fails, record their own `failedStep`.
12
14
  */
13
15
  import type { CodeIntelResult } from '../code-intel/types.js';
14
16
  import type { ReviewInput } from '../types.js';
@@ -28,12 +30,30 @@ export declare function searchMemorySafe(input: ReviewInput, fileList: string[],
28
30
  step: string;
29
31
  error: string;
30
32
  }[]): Promise<string | null>;
33
+ /**
34
+ * Outcome of a code-intelligence query, carrying enough telemetry for the
35
+ * caller to build accurate metadata (CORE-INTEL-003). `filesFailed` counts
36
+ * per-file queries that rejected (previously discarded by allSettled), and
37
+ * `durationMs` is the real wall-clock duration of the step.
38
+ */
39
+ export interface CodeIntelQueryOutcome {
40
+ results: CodeIntelResult[];
41
+ /** Number of per-file queries that rejected. */
42
+ filesFailed: number;
43
+ /** Real wall-clock duration of the code-intel step in ms. */
44
+ durationMs: number;
45
+ }
31
46
  /**
32
47
  * Query the code intelligence provider for structural context.
33
- * Returns an empty array when disabled, unavailable, or on error.
48
+ *
49
+ * Returns an empty outcome when disabled or unavailable. Per-file rejections
50
+ * are no longer silently discarded: they are counted (`filesFailed`) and, when
51
+ * EVERY query fails, a `failedStep` is recorded so `coverageComplete` flips and
52
+ * the degradation is visible to the user and observability. Partial failures
53
+ * surface via `filesFailed` and a warning emit without downgrading the review.
34
54
  */
35
55
  export declare function queryCodeIntelSafe(input: ReviewInput, fileList: string[], emit: (event: import('../types.js').ProgressEvent) => void, failedSteps: {
36
56
  step: string;
37
57
  error: string;
38
- }[]): Promise<CodeIntelResult[]>;
58
+ }[]): Promise<CodeIntelQueryOutcome>;
39
59
  //# sourceMappingURL=gather-safe.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gather-safe.d.ts","sourceRoot":"","sources":["../../src/pipeline/gather-safe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAAE,EAClB,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,uDAwC/C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAC7C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAkBxB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,MAAM,EAAE,EAClB,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,aAAa,EAAE,aAAa,KAAK,IAAI,EAC1D,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAC7C,OAAO,CAAC,eAAe,EAAE,CAAC,CAkE5B"}
1
+ {"version":3,"file":"gather-safe.d.ts","sourceRoot":"","sources":["../../src/pipeline/gather-safe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAAE,EAClB,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,uDAwC/C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAC7C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAkBxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,MAAM,EAAE,EAClB,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,aAAa,EAAE,aAAa,KAAK,IAAI,EAC1D,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAC7C,OAAO,CAAC,qBAAqB,CAAC,CAuGhC"}
@@ -5,10 +5,12 @@
5
5
  * `export` was added and relative import paths adjusted. They are
6
6
  * private to the gather-context phase.
7
7
  *
8
- * ⚠️ queryCodeIntelSafe's catch is UNREACHABLE via provider failures
8
+ * ⚠️ queryCodeIntelSafe's OUTER catch is UNREACHABLE via provider failures
9
9
  * (Promise.allSettled swallows per-file rejections); it only fires when
10
10
  * the emit callback throws on the success message. Pinned by the golden
11
- * suite — preserve the catch literally.
11
+ * suite — preserve the catch literally. Per-file rejections ARE now counted
12
+ * in the success path (CORE-INTEL-003): they feed `filesFailed` and, when
13
+ * every query fails, record their own `failedStep`.
12
14
  */
13
15
  import { searchMemoryForContext } from '../memory/search.js';
14
16
  import { runStaticAnalysis } from '../tools/runner.js';
@@ -73,11 +75,16 @@ export async function searchMemorySafe(input, fileList, failedSteps) {
73
75
  }
74
76
  /**
75
77
  * Query the code intelligence provider for structural context.
76
- * Returns an empty array when disabled, unavailable, or on error.
78
+ *
79
+ * Returns an empty outcome when disabled or unavailable. Per-file rejections
80
+ * are no longer silently discarded: they are counted (`filesFailed`) and, when
81
+ * EVERY query fails, a `failedStep` is recorded so `coverageComplete` flips and
82
+ * the degradation is visible to the user and observability. Partial failures
83
+ * surface via `filesFailed` and a warning emit without downgrading the review.
77
84
  */
78
85
  export async function queryCodeIntelSafe(input, fileList, emit, failedSteps) {
79
86
  if (!input.settings.enableCodeIntel || !input.codeIntelProvider) {
80
- return [];
87
+ return { results: [], filesFailed: 0, durationMs: 0 };
81
88
  }
82
89
  const startTime = Date.now();
83
90
  emit({
@@ -86,6 +93,7 @@ export async function queryCodeIntelSafe(input, fileList, emit, failedSteps) {
86
93
  });
87
94
  try {
88
95
  const results = [];
96
+ const failureReasons = [];
89
97
  const provider = input.codeIntelProvider;
90
98
  // Query each changed file for structural data (parallel)
91
99
  const queries = fileList.map(async (file) => {
@@ -105,14 +113,42 @@ export async function queryCodeIntelSafe(input, fileList, emit, failedSteps) {
105
113
  if (outcome.status === 'fulfilled') {
106
114
  results.push(outcome.value);
107
115
  }
116
+ else {
117
+ failureReasons.push(outcome.reason instanceof Error ? outcome.reason.message : String(outcome.reason));
118
+ }
108
119
  }
120
+ const filesFailed = failureReasons.length;
109
121
  const durationMs = Date.now() - startTime;
110
122
  const withData = results.filter((r) => r.callers.length > 0 || r.callees.length > 0 || r.imports.length > 0).length;
123
+ // All queries failed → the step produced no structural data. Mark it as a
124
+ // real failure so coverageComplete flips and PASSED downgrades to PARTIAL.
125
+ if (filesFailed > 0 && results.length === 0) {
126
+ const aggregated = failureReasons.slice(0, 3).join('; ');
127
+ console.warn('[ghagga] Code intelligence query failed (all files, degrading gracefully):', aggregated);
128
+ failedSteps.push({
129
+ step: 'code-intel',
130
+ error: `all ${filesFailed} code-intel queries failed: ${aggregated}`,
131
+ });
132
+ emit({
133
+ step: 'code-intel',
134
+ message: `Code intelligence: all ${filesFailed} file query(ies) failed (${durationMs}ms) — continuing without`,
135
+ });
136
+ return { results, filesFailed, durationMs };
137
+ }
138
+ // Partial failure → visible via filesFailed + warning, but not a hard fail.
139
+ if (filesFailed > 0) {
140
+ console.warn(`[ghagga] Code intelligence: ${filesFailed} of ${fileList.length} file query(ies) failed (degrading gracefully)`);
141
+ emit({
142
+ step: 'code-intel',
143
+ message: `Code intelligence: ${withData}/${results.length} files with structural data, ${filesFailed} query(ies) failed (${durationMs}ms)`,
144
+ });
145
+ return { results, filesFailed, durationMs };
146
+ }
111
147
  emit({
112
148
  step: 'code-intel',
113
149
  message: `Code intelligence: ${withData}/${results.length} files with structural data (${durationMs}ms)`,
114
150
  });
115
- return results;
151
+ return { results, filesFailed: 0, durationMs };
116
152
  }
117
153
  catch (error) {
118
154
  console.warn('[ghagga] Code intelligence query failed (degrading gracefully):', error instanceof Error ? error.message : String(error));
@@ -121,7 +157,7 @@ export async function queryCodeIntelSafe(input, fileList, emit, failedSteps) {
121
157
  error: error instanceof Error ? error.message : String(error),
122
158
  });
123
159
  emit({ step: 'code-intel', message: 'Code intelligence: failed — continuing without' });
124
- return [];
160
+ return { results: [], filesFailed: fileList.length, durationMs: Date.now() - startTime };
125
161
  }
126
162
  }
127
163
  //# sourceMappingURL=gather-safe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gather-safe.js","sourceRoot":"","sources":["../../src/pipeline/gather-safe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gather-safe.js","sourceRoot":"","sources":["../../src/pipeline/gather-safe.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@
16
16
  * golden degradation suite). The degradation IS recorded in
17
17
  * `warnOnlyDegradations` so `coverageComplete` reflects it.
18
18
  */
19
- import type { BlastRadiusMetadata } from '../graph/schema.js';
19
+ import type { BlastRadiusMetadata, DependencyGraph } from '../graph/schema.js';
20
20
  import type { ProgressEvent, ReviewInput } from '../types.js';
21
21
  import type { DiffFile } from '../utils/diff.js';
22
22
  import type { FailedStep } from './state.js';
@@ -33,6 +33,19 @@ export interface BlastRadiusOutcome {
33
33
  filteredFiles: DiffFile[];
34
34
  filteredDiff: string;
35
35
  blastRadiusMetadata: BlastRadiusMetadata | undefined;
36
+ /**
37
+ * The dependency graph successfully loaded during this step, if any.
38
+ * Threaded into step 2.6 (`buildCallChainContext`) so the Symbol
39
+ * Impact block can reuse it WITHOUT calling `input.graphLoader.load()`
40
+ * a second time — a second load call would double-invoke the loader
41
+ * (breaking `toHaveBeenCalledOnce()` call-count assertions) and, on a
42
+ * failing loader, produce an EXTRA call-chain warn/failedSteps entry
43
+ * that the golden degradation snapshots don't expect. `undefined` when
44
+ * blast-radius is disabled, no loader is configured, the graph is
45
+ * unavailable, or loading errored (already handled by this step's own
46
+ * bespoke catch).
47
+ */
48
+ graph: DependencyGraph | undefined;
36
49
  }
37
50
  /**
38
51
  * Step 2.5: Blast-radius filter (optional).
@@ -49,6 +62,15 @@ export declare function applyBlastRadius(args: GraphStepArgs & {
49
62
  */
50
63
  export declare function buildCallChainContext(args: GraphStepArgs & {
51
64
  warnOnlyDegradations: string[];
65
+ /**
66
+ * The graph already loaded by step 2.5 (`applyBlastRadius`), if any —
67
+ * reused here for the Symbol Impact block instead of calling
68
+ * `input.graphLoader.load()` a second time (see `BlastRadiusOutcome`
69
+ * for why). `undefined` is a normal, non-error state (blast-radius
70
+ * disabled, no loader, or graph unavailable) — Symbol Impact is
71
+ * simply skipped in that case.
72
+ */
73
+ graph?: DependencyGraph;
52
74
  }): Promise<string>;
53
75
  export {};
54
76
  //# sourceMappingURL=prepare-graph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-graph.d.ts","sourceRoot":"","sources":["../../src/pipeline/prepare-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,UAAU,aAAa;IACrB,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,mEAAmE;IACnE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,qDAAqD;AACrD,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,QAAQ,EAAE,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,mBAAmB,GAAG,SAAS,CAAC;CACtD;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,aAAa,GAAG;IAAE,aAAa,EAAE,QAAQ,EAAE,CAAA;CAAE,GAClD,OAAO,CAAC,kBAAkB,CAAC,CAsF7B;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,aAAa,GAAG;IAAE,oBAAoB,EAAE,MAAM,EAAE,CAAA;CAAE,GACvD,OAAO,CAAC,MAAM,CAAC,CA+DjB"}
1
+ {"version":3,"file":"prepare-graph.d.ts","sourceRoot":"","sources":["../../src/pipeline/prepare-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAOH,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,UAAU,aAAa;IACrB,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,mEAAmE;IACnE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,qDAAqD;AACrD,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,QAAQ,EAAE,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACrD;;;;;;;;;;;OAWG;IACH,KAAK,EAAE,eAAe,GAAG,SAAS,CAAC;CACpC;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,aAAa,GAAG;IAAE,aAAa,EAAE,QAAQ,EAAE,CAAA;CAAE,GAClD,OAAO,CAAC,kBAAkB,CAAC,CAwH7B;AA6FD;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,aAAa,GAAG;IACpB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB,GACA,OAAO,CAAC,MAAM,CAAC,CAgFjB"}
@@ -17,7 +17,9 @@
17
17
  * `warnOnlyDegradations` so `coverageComplete` reflects it.
18
18
  */
19
19
  import { computeBlastRadius } from '../graph/blast-radius.js';
20
- import { buildCallChainFromDiff } from '../graph/call-chain.js';
20
+ import { buildCallChainFromDiff, extractChangedSymbolsFromDiff } from '../graph/call-chain.js';
21
+ import { computeChangedSymbolsComplete } from '../graph/changed-symbols.js';
22
+ import { isExactCommitFresh, narrowBySymbols } from '../graph/narrow-symbols.js';
21
23
  import { buildReverseDependencyMap, findDependents } from '../graph/reverse-deps.js';
22
24
  import { isGraphStale } from '../graph/schema.js';
23
25
  import { runDegradable } from './degrade.js';
@@ -30,10 +32,12 @@ export async function applyBlastRadius(args) {
30
32
  const { input, emit, failedSteps, fileList } = args;
31
33
  let { filteredFiles, filteredDiff } = args;
32
34
  let blastRadiusMetadata;
35
+ let loadedGraph;
33
36
  if (input.settings.enableBlastRadius && input.graphLoader) {
34
37
  try {
35
38
  const graph = await input.graphLoader.load();
36
39
  if (graph) {
40
+ loadedGraph = graph;
37
41
  const metadata = await input.graphLoader.loadMetadata();
38
42
  const stale = metadata ? isGraphStale(metadata) : false;
39
43
  if (stale) {
@@ -61,6 +65,26 @@ export async function applyBlastRadius(args) {
61
65
  };
62
66
  }
63
67
  else {
68
+ // Symbol-precise narrowing (scip-symbol-exclusion) — a PURE
69
+ // SUBTRACTIVE post-filter over `blastResult`, gated on THREE
70
+ // fail-closed pillars: the opt-in flag, a recognized `builtVia`,
71
+ // and Pillar 0 exact-commit freshness (`isExactCommitFresh`). ANY
72
+ // gate failing ⇒ zero narrowing, `blastResult.files` untouched —
73
+ // `computeBlastRadius`/`buildReverseIndex` themselves are NEVER
74
+ // modified (0-diff, D4).
75
+ let narrowedDependents = 0;
76
+ const builtVia = metadata?.builtVia;
77
+ if (input.settings.enableSymbolExclusion &&
78
+ builtVia &&
79
+ isExactCommitFresh(metadata, input.currentHead)) {
80
+ const changedByFile = computeChangedSymbolsComplete(filteredDiff, graph);
81
+ const changedFileSet = new Set(fileList);
82
+ const excludedDependents = narrowBySymbols(blastResult.dependents, changedByFile, graph, builtVia, blastResult.files, changedFileSet);
83
+ for (const excludedPath of excludedDependents) {
84
+ blastResult.files.delete(excludedPath);
85
+ }
86
+ narrowedDependents = excludedDependents.size;
87
+ }
64
88
  // Filter to blast-radius files
65
89
  filteredFiles = filteredFiles.filter((f) => blastResult.files.has(f.path));
66
90
  filteredDiff = filteredFiles.map((f) => f.content).join('\n');
@@ -71,6 +95,7 @@ export async function applyBlastRadius(args) {
71
95
  ` changed: ${blastResult.changedFiles.length}`,
72
96
  ` dependents: ${blastResult.dependents.length}`,
73
97
  ` tests: ${blastResult.testFiles.length}`,
98
+ ...(narrowedDependents > 0 ? [` narrowed: ${narrowedDependents}`] : []),
74
99
  ].join('\n'),
75
100
  });
76
101
  blastRadiusMetadata = {
@@ -79,6 +104,7 @@ export async function applyBlastRadius(args) {
79
104
  totalFiles: fileList.length,
80
105
  blastRadiusFiles: blastResult.files.size,
81
106
  graphStale: stale,
107
+ ...(narrowedDependents > 0 ? { narrowedDependents } : {}),
82
108
  };
83
109
  }
84
110
  }
@@ -109,7 +135,81 @@ export async function applyBlastRadius(args) {
109
135
  };
110
136
  }
111
137
  }
112
- return { filteredFiles, filteredDiff, blastRadiusMetadata };
138
+ return { filteredFiles, filteredDiff, blastRadiusMetadata, graph: loadedGraph };
139
+ }
140
+ /**
141
+ * Build the additive `## Symbol Impact` block (Slice 2 of
142
+ * symbol-precise-context, upgraded by scip-symbol-ranges D5). For each
143
+ * changed file B, walks every node A in the graph whose `imports`
144
+ * includes B — the SAME resolved-path edge `computeBlastRadius`/
145
+ * `buildReverseIndex` already traverse — and reports which symbols A
146
+ * references from B (`A.importSymbols[B]`) against which symbols the
147
+ * diff actually changed in B.
148
+ *
149
+ * Changed-symbol source (D5): when ANY node in the graph carries
150
+ * `symbolRanges` (SCIP-only — see graph/scip/builder.ts), uses the
151
+ * COMPLETE line-range mapping (`computeChangedSymbolsComplete`), which
152
+ * also catches body-only changes to an unchanged signature. Otherwise
153
+ * falls back to the declaration-level `extractChangedSymbolsFromDiff`
154
+ * (D5 fallback) — output is BYTE-IDENTICAL to the pre-scip-symbol-ranges
155
+ * behavior when no graph in play has `symbolRanges`.
156
+ *
157
+ * STRICTLY ADDITIVE: never excludes a file, never claims "unaffected" when
158
+ * the data is insufficient to know (barrel edges, missing symbol data, or
159
+ * `hasUnattributedChanges` on the complete-mapping path). Returns '' when
160
+ * the graph has NO `importSymbols` data anywhere (keeps output
161
+ * byte-identical to pre-change context — no regression when no symbol
162
+ * data exists in the graph, per spec).
163
+ */
164
+ function buildSymbolImpactBlock(graph, fileList, filteredDiff) {
165
+ const anySymbolData = Object.values(graph.nodes).some((n) => n.importSymbols && Object.keys(n.importSymbols).length > 0);
166
+ if (!anySymbolData)
167
+ return '';
168
+ // D5: prefer the complete (range-based) mapping whenever ANY node has
169
+ // symbolRanges; otherwise fall back to the old declaration-level
170
+ // extractor untouched, for byte-identical no-regression output.
171
+ const anyRanges = Object.values(graph.nodes).some((n) => n.symbolRanges && Object.keys(n.symbolRanges).length > 0);
172
+ const completeByFile = anyRanges ? computeChangedSymbolsComplete(filteredDiff, graph) : undefined;
173
+ const changedByFile = anyRanges ? undefined : extractChangedSymbolsFromDiff(filteredDiff);
174
+ const changedFileSet = new Set(fileList);
175
+ const lines = [];
176
+ for (const b of changedFileSet) {
177
+ for (const [aPath, aNode] of Object.entries(graph.nodes)) {
178
+ if (aPath === b || !aNode.imports.includes(b))
179
+ continue;
180
+ const used = aNode.importSymbols?.[b];
181
+ if (!used || used.length === 0) {
182
+ // No symbol data for this edge (non-TS extractor, namespace/side-
183
+ // effect import, or SCIP occurrence gap) — degrade to file-level,
184
+ // never claim the dependent is unaffected.
185
+ lines.push(`- ${aPath} depends on ${b} (no symbol-level data available)`);
186
+ continue;
187
+ }
188
+ const usedList = used.join(', ');
189
+ let changedSet;
190
+ if (completeByFile) {
191
+ const complete = completeByFile.get(b);
192
+ // D5 spec: hasUnattributedChanges (or no entry at all) → MUST fall
193
+ // back to the existing conservative "unknown" reporting, never
194
+ // compute a partial hit from incomplete data.
195
+ changedSet =
196
+ !complete || complete.hasUnattributedChanges ? undefined : complete.changedSymbols;
197
+ }
198
+ else {
199
+ changedSet = changedByFile?.get(b);
200
+ }
201
+ if (!changedSet || changedSet.size === 0) {
202
+ lines.push(`- ${aPath} uses {${usedList}} from ${b}; changed symbols: unknown (diff parsing found no symbol-level change markers for this file)`);
203
+ continue;
204
+ }
205
+ const hit = used.filter((s) => changedSet.has(s));
206
+ const changedText = hit.length > 0 ? hit.join(', ') : 'none of the used symbols (conservatively still listed)';
207
+ lines.push(`- ${aPath} uses {${usedList}} from ${b}; changed: ${changedText}`);
208
+ }
209
+ }
210
+ if (lines.length === 0)
211
+ return '';
212
+ return `\n## Symbol Impact\n${lines.join('\n')}\n`;
113
213
  }
114
214
  /**
115
215
  * Step 2.6: Call-chain + reverse-deps context (optional, runs when
@@ -117,7 +217,7 @@ export async function applyBlastRadius(args) {
117
217
  * disabled, no symbols affected, or degraded).
118
218
  */
119
219
  export async function buildCallChainContext(args) {
120
- const { input, emit, failedSteps, warnOnlyDegradations, fileList, filteredDiff } = args;
220
+ const { input, emit, failedSteps, warnOnlyDegradations, fileList, filteredDiff, graph } = args;
121
221
  let callChainContext = '';
122
222
  if (input.settings.enableBlastRadius) {
123
223
  // reportFailure: false is DELIBERATE — call-chain degrades with a warn only
@@ -167,6 +267,22 @@ export async function buildCallChainContext(args) {
167
267
  }
168
268
  }
169
269
  }
270
+ // Symbol Impact (Slice 2 of symbol-precise-context) — strictly
271
+ // additive, appended onto the SAME callChainContext string. Reuses
272
+ // the graph step 2.5 already loaded (see the `graph` param doc)
273
+ // rather than calling `input.graphLoader.load()` again. Never
274
+ // excludes a file from anything — this block is advisory text
275
+ // only.
276
+ if (graph) {
277
+ const symbolImpactBlock = buildSymbolImpactBlock(graph, fileList, filteredDiff);
278
+ if (symbolImpactBlock) {
279
+ callChainContext += symbolImpactBlock;
280
+ emit({
281
+ step: 'symbol-impact',
282
+ message: 'Symbol Impact: symbol-precise import context added',
283
+ });
284
+ }
285
+ }
170
286
  });
171
287
  }
172
288
  return callChainContext;
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-graph.js","sourceRoot":"","sources":["../../src/pipeline/prepare-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepare-graph.js","sourceRoot":"","sources":["../../src/pipeline/prepare-graph.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/pipeline/prepare.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAe,WAAW,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;AAOtF,OAAO,KAAK,EAAc,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GACtB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE,GACzD;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAiEpE;;GAEG;AACH,wBAAsB,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CA8KzE"}
1
+ {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/pipeline/prepare.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAe,WAAW,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;AAOtF,OAAO,KAAK,EAAc,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GACtB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE,GACzD;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAiGpE;;GAEG;AACH,wBAAsB,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAgLzE"}
@@ -26,6 +26,27 @@ import { applyBlastRadius, buildCallChainContext } from './prepare-graph.js';
26
26
  import { resolveAiEnabled, resolvePrimaryModel } from './providers.js';
27
27
  import { createSkippedResult } from './results.js';
28
28
  // ─── Validation ─────────────────────────────────────────────────
29
+ /**
30
+ * Validate the numeric concurrency/delay knobs on ReviewSettings.
31
+ *
32
+ * `reviewConcurrency` must be a finite integer >= 1 (it drives the
33
+ * `i += concurrency` batch loop in runWithConcurrency); `reviewDelayMs`
34
+ * must be a finite integer >= 0. Undefined values fall back to defaults
35
+ * downstream and are accepted here. Throws on any invalid value.
36
+ */
37
+ function validateReviewSettings(settings) {
38
+ const { reviewConcurrency, reviewDelayMs } = settings;
39
+ if (reviewConcurrency !== undefined) {
40
+ if (!Number.isInteger(reviewConcurrency) || reviewConcurrency < 1) {
41
+ throw new Error(`reviewConcurrency must be a finite integer >= 1, received: ${reviewConcurrency}`);
42
+ }
43
+ }
44
+ if (reviewDelayMs !== undefined) {
45
+ if (!Number.isFinite(reviewDelayMs) || reviewDelayMs < 0) {
46
+ throw new Error(`reviewDelayMs must be a finite number >= 0, received: ${reviewDelayMs}`);
47
+ }
48
+ }
49
+ }
29
50
  /**
30
51
  * Validate the review input for required fields.
31
52
  * Throws descriptive errors for misconfiguration.
@@ -34,6 +55,11 @@ function validateInput(input) {
34
55
  if (!input.diff || input.diff.trim().length === 0) {
35
56
  throw new Error('Review input must include a non-empty diff');
36
57
  }
58
+ // Central boundary validation for public tuning knobs. These flow from the
59
+ // API straight into runWithConcurrency; an invalid concurrency would make
60
+ // the batch loop stall (0) or run backwards (negatives), and a negative
61
+ // delay is nonsensical for setTimeout. Reject early with a clear message.
62
+ validateReviewSettings(input.settings);
37
63
  // If AI review is explicitly disabled, no provider/model/key needed
38
64
  if (input.aiReviewEnabled === false) {
39
65
  return;
@@ -166,6 +192,8 @@ export async function prepare(input) {
166
192
  warnOnlyDegradations,
167
193
  fileList,
168
194
  filteredDiff,
195
+ // Reuse the graph step 2.5 already loaded — see BlastRadiusOutcome.graph.
196
+ graph: blast.graph,
169
197
  });
170
198
  // ── Step 3: Detect tech stacks ─────────────────────────────
171
199
  const stacks = detectStacks(fileList);
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/pipeline/prepare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/pipeline/prepare.ts"],"names":[],"mappings":"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"}
@@ -58,7 +58,9 @@ export interface PipelineStateBase {
58
58
  staticResult: StaticAnalysisResult;
59
59
  rawMemoryContext: string | null;
60
60
  codeIntelResults: CodeIntelResult[];
61
- codeIntelMetadata?: CodeIntelMetadata;
61
+ codeIntelMetadata?: CodeIntelMetadata & {
62
+ filesFailed?: number;
63
+ };
62
64
  staticContext: string;
63
65
  memoryContext: string | null;
64
66
  codeIntelContext: string;
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/pipeline/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EACZ,oBAAoB,EACrB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAEhC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAG5B,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC9B;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAI5B,aAAa,EAAE,QAAQ,EAAE,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IAMtB,YAAY,EAAE,oBAAoB,CAAC;IACnC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAC;IAC1C,sBAAsB,EAAE,MAAM,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;IAI/B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAGlB,sBAAsB,CAAC,EAAE,aAAa,EAAE,CAAC;IACzC,eAAe,CAAC,EAAE,eAAe,CAAC;IAKlC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,iBAAiB,EAAE,UAAU,CAAC;IAE9B,WAAW,EAAE,UAAU,EAAE,CAAC;IAE1B;;;;;;;;OAQG;IACH,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IAGtD,MAAM,EAAE,YAAY,CAAC;CACtB"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/pipeline/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EACZ,oBAAoB,EACrB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAEhC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAG5B,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC9B;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAI5B,aAAa,EAAE,QAAQ,EAAE,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IAMtB,YAAY,EAAE,oBAAoB,CAAC;IACnC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAIpC,iBAAiB,CAAC,EAAE,iBAAiB,GAAG;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAC;IAC1C,sBAAsB,EAAE,MAAM,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;IAI/B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAGlB,sBAAsB,CAAC,EAAE,aAAa,EAAE,CAAC;IACzC,eAAe,CAAC,EAAE,eAAe,CAAC;IAKlC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,iBAAiB,EAAE,UAAU,CAAC;IAE9B,WAAW,EAAE,UAAU,EAAE,CAAC;IAE1B;;;;;;;;OAQG;IACH,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IAGtD,MAAM,EAAE,YAAY,CAAC;CACtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli-bridge.d.ts","sourceRoot":"","sources":["../../src/providers/cli-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAgCH;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQzD,CAAC;AAyCF,mDAAmD;AACnD,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE5D,oCAAoC;AACpC,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IACtD,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,CACR,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EACrB,QAAQ,CAAC,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,KACpB,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI5B;AA6BD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAepB;AAID;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,iBAAiB,CAAC,EAAE,MAAM,EAC1B,eAAe,CAAC,EAAE,MAAM,GACvB,MAAM,CAAC,UAAU,CAgBnB;AAgBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9C,CAyBA;AAiCD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQ5D;AAID;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAcvD;AA+ID;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAE5F;AAYD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAE3C;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,gBAAgB,GACzB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CA2FjD;AAID;;;GAGG;AACH,wBAAgB,YAAY,IAAI,SAAS,UAAU,EAAE,CAEpD"}
1
+ {"version":3,"file":"cli-bridge.d.ts","sourceRoot":"","sources":["../../src/providers/cli-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAgCH;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CASzD,CAAC;AAyCF,mDAAmD;AACnD,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE5D,oCAAoC;AACpC,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IACtD,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,CACR,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EACrB,QAAQ,CAAC,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,KACpB,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI5B;AA6BD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAepB;AAID;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,iBAAiB,CAAC,EAAE,MAAM,EAC1B,eAAe,CAAC,EAAE,MAAM,GACvB,MAAM,CAAC,UAAU,CAgBnB;AAgBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9C,CAyBA;AAiCD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQ5D;AAID;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAcvD;AA+ID;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAE5F;AAYD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAE3C;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,gBAAgB,GACzB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CA2FjD;AAID;;;GAGG;AACH,wBAAgB,YAAY,IAAI,SAAS,UAAU,EAAE,CAEpD"}
@@ -43,6 +43,7 @@ const OAUTH_CAPABLE_CLIS = new Set(['gemini', 'copilot']);
43
43
  */
44
44
  export const OPENCODE_ENV_BY_PREFIX = {
45
45
  opencode: '', // Free models — no API key needed
46
+ 'opencode-go': '', // opencode-go provider (Chinese-lab family models) — auth via the opencode CLI's own session, no credential env var injected
46
47
  anthropic: 'ANTHROPIC_API_KEY',
47
48
  openai: 'OPENAI_API_KEY',
48
49
  google: 'GEMINI_API_KEY',