@vfarcic/dot-ai 1.13.0 → 1.14.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.
@@ -1 +1 @@
1
- {"version":3,"file":"ai-provider-factory.d.ts","sourceRoot":"","sources":["../../src/core/ai-provider-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,UAAU,EACV,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AA8BjC;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAiB;IAC5B;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU;IA2BnD;;;;;;;;;;OAUG;IACH,MAAM,CAAC,aAAa,IAAI,UAAU;IAoFlC;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAWrD;;;;OAIG;IACH,MAAM,CAAC,qBAAqB,IAAI,MAAM,EAAE;IAMxC;;;;;OAKG;IACH,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAGxD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,UAAU,CAE7C"}
1
+ {"version":3,"file":"ai-provider-factory.d.ts","sourceRoot":"","sources":["../../src/core/ai-provider-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,UAAU,EACV,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AA8BjC;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAiB;IAC5B;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU;IA2BnD;;;;;;;;;;OAUG;IACH,MAAM,CAAC,aAAa,IAAI,UAAU;IAqGlC;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAWrD;;;;OAIG;IACH,MAAM,CAAC,qBAAqB,IAAI,MAAM,EAAE;IAMxC;;;;;OAKG;IACH,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAGxD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,UAAU,CAE7C"}
@@ -137,6 +137,17 @@ class AIProviderFactory {
137
137
  // PRD #194: Get custom endpoint URL for OpenAI-compatible LLM APIs
138
138
  // Use CUSTOM_LLM_BASE_URL for LLM endpoints (separate from OPENAI_BASE_URL used for embeddings)
139
139
  const baseURL = process.env.CUSTOM_LLM_BASE_URL;
140
+ // PRD #443: Parse custom headers from environment variable
141
+ let customHeaders;
142
+ const customHeadersEnv = process.env.CUSTOM_LLM_HEADERS;
143
+ if (customHeadersEnv) {
144
+ try {
145
+ customHeaders = JSON.parse(customHeadersEnv);
146
+ }
147
+ catch {
148
+ process.stderr.write(`WARNING: CUSTOM_LLM_HEADERS is not valid JSON: ${customHeadersEnv}. Custom headers will be ignored.\n`);
149
+ }
150
+ }
140
151
  // Determine effective provider type based on endpoint configuration
141
152
  let effectiveProviderType = providerType;
142
153
  // PRD #194: Detect OpenRouter and override provider type
@@ -144,8 +155,11 @@ class AIProviderFactory {
144
155
  if (baseURL && baseURL.includes('openrouter.ai')) {
145
156
  effectiveProviderType = 'openrouter';
146
157
  }
147
- else if (baseURL) {
148
- // Generic custom endpoint (Ollama, vLLM, LiteLLM, etc.)
158
+ else if (baseURL && !process.env.AI_PROVIDER) {
159
+ // PRD #443: Only force 'custom' provider when AI_PROVIDER is NOT explicitly set.
160
+ // If AI_PROVIDER is explicitly set (e.g., 'anthropic'), preserve it so that
161
+ // native provider features (cache control, tool calling format) are retained
162
+ // when using a custom base URL (e.g., corporate Anthropic proxy).
149
163
  effectiveProviderType = 'custom';
150
164
  }
151
165
  return this.create({
@@ -153,7 +167,8 @@ class AIProviderFactory {
153
167
  apiKey,
154
168
  model,
155
169
  debugMode,
156
- baseURL
170
+ baseURL,
171
+ customHeaders,
157
172
  });
158
173
  }
159
174
  /**
@@ -50,6 +50,15 @@ export interface AIProviderConfig {
50
50
  * maxOutputTokens=8192 in API requests.
51
51
  */
52
52
  baseURL?: string;
53
+ /** Custom HTTP headers to pass to the AI provider SDK (PRD #443)
54
+ *
55
+ * Parsed from CUSTOM_LLM_HEADERS environment variable (JSON string).
56
+ * Merged with provider-specific default headers (e.g., Anthropic beta header),
57
+ * with custom headers taking precedence.
58
+ *
59
+ * Example: { "version": "2026-02-20", "x-custom-auth": "token123" }
60
+ */
61
+ customHeaders?: Record<string, string>;
53
62
  }
54
63
  /**
55
64
  * Tool definition for AI providers
@@ -1 +1 @@
1
- {"version":3,"file":"ai-provider.interface.d.ts","sourceRoot":"","sources":["../../src/core/ai-provider.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-provider.interface.d.ts","sourceRoot":"","sources":["../../src/core/ai-provider.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,2BAA2B,CAAC,EAAE,MAAM,CAAC;QACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;KAClC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IAEf,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAC;IAEjB,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,oDAAoD;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IAEb,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;IAEpB,4CAA4C;IAC5C,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,wDAAwD;IACxD,YAAY,EAAE,MAAM,CAAC;IAErB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IAEpB,mEAAmE;IACnE,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,qCAAqC;IACrC,YAAY,EAAE,YAAY,CAAC;IAE3B,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,qDAAqD;IACrD,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IAEvE,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF,8DAA8D;IAC9D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,YAAY,EAAE,MAAM,CAAC;IAErB,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;IAEnB,8CAA8C;IAC9C,iBAAiB,EAAE,cAAc,EAAE,CAAC;IAEpC,qDAAqD;IACrD,WAAW,EAAE;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAEF,6CAA6C;IAC7C,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,aAAa,CAAC;IAE1D,uDAAuD;IACvD,gBAAgB,CAAC,EAAE,wBAAwB,GAAG,gBAAgB,GAAG,eAAe,GAAG,eAAe,GAAG,OAAO,CAAC;IAE7G,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,+DAA+D;IAC/D,UAAU,CAAC,EAAE;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;;;;;OAWG;IACH,WAAW,CACT,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB;;;;;;OAMG;IACH,aAAa,IAAI,OAAO,CAAC;IAEzB;;;;;;;OAOG;IACH,eAAe,IAAI,MAAM,CAAC;IAE1B;;;;;;OAMG;IACH,eAAe,IAAI,MAAM,CAAC;IAE1B;;;;OAIG;IACH,YAAY,IAAI,MAAM,CAAC;IAEvB;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CAE1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"git-utils.d.ts","sourceRoot":"","sources":["../../src/core/git-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AASD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAIxD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK1E;AA2ED,wBAAsB,YAAY,CAAC,UAAU,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAc7E;AAED,wBAAgB,uBAAuB,IAAI,aAAa,CAyBvD;AAeD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CASjE;AAID,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,YAAY,GAClB,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA6BhD;AAID,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA8B5E;AAID,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1C;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,EAC/C,aAAa,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,CAAC,CAyErB"}
1
+ {"version":3,"file":"git-utils.d.ts","sourceRoot":"","sources":["../../src/core/git-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AASD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAIxD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK1E;AA2ED,wBAAsB,YAAY,CAAC,UAAU,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAc7E;AAED,wBAAgB,uBAAuB,IAAI,aAAa,CAyBvD;AAeD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CASjE;AAID,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,YAAY,GAClB,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA6BhD;AAID,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA8B5E;AAID,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1C;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,EAC/C,aAAa,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,CAAC,CA4ErB"}
@@ -260,7 +260,10 @@ async function pushRepo(repoPath, files, commitMessage, opts) {
260
260
  'dot-ai@users.noreply.github.com';
261
261
  await git.addConfig('user.name', gitUserName);
262
262
  await git.addConfig('user.email', gitUserEmail);
263
- const commitResult = await git.commit(commitMessage);
263
+ const finalMessage = process.env.CI === 'true'
264
+ ? `${commitMessage} [skip ci]`
265
+ : commitMessage;
266
+ const commitResult = await git.commit(finalMessage);
264
267
  if (!commitResult.commit) {
265
268
  return {
266
269
  commitSha: undefined,
@@ -11,6 +11,7 @@ export declare class VercelProvider implements AIProvider {
11
11
  private apiKey;
12
12
  private debugMode;
13
13
  private baseURL?;
14
+ private customHeaders?;
14
15
  private modelInstance;
15
16
  constructor(config: AIProviderConfig);
16
17
  private validateConfiguration;
@@ -1 +1 @@
1
- {"version":3,"file":"vercel-provider.d.ts","sourceRoot":"","sources":["../../../src/core/providers/vercel-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,OAAO,EACL,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,aAAa,EACd,MAAM,0BAA0B,CAAC;AA4DlC,qBAAa,cAAe,YAAW,UAAU;IAC/C,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,aAAa,CAAiB;gBAE1B,MAAM,EAAE,gBAAgB;IAWpC,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,eAAe;IA4FvB,eAAe,IAAI,MAAM;IAIzB,eAAe,IAAI,MAAM;IAIzB,YAAY,IAAI,MAAM;IAItB,aAAa,IAAI,OAAO;IAIxB,OAAO,CAAC,iBAAiB;IAyBnB,WAAW,CACf,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,MAAkB,EAC7B,iBAAiB,CAAC,EAAE;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,UAAU,CAAC;IAsJtB;;;;;;;;;;;;OAYG;IACG,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;CA6b/D"}
1
+ {"version":3,"file":"vercel-provider.d.ts","sourceRoot":"","sources":["../../../src/core/providers/vercel-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,OAAO,EACL,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,aAAa,EACd,MAAM,0BAA0B,CAAC;AA4DlC,qBAAa,cAAe,YAAW,UAAU;IAC/C,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,aAAa,CAAC,CAAyB;IAC/C,OAAO,CAAC,aAAa,CAAiB;gBAE1B,MAAM,EAAE,gBAAgB;IAYpC,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,eAAe;IAgIvB,eAAe,IAAI,MAAM;IAIzB,eAAe,IAAI,MAAM;IAIzB,YAAY,IAAI,MAAM;IAItB,aAAa,IAAI,OAAO;IAIxB,OAAO,CAAC,iBAAiB;IAyBnB,WAAW,CACf,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,MAAkB,EAC7B,iBAAiB,CAAC,EAAE;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,UAAU,CAAC;IAsJtB;;;;;;;;;;;;OAYG;IACG,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;CA6b/D"}
@@ -29,6 +29,7 @@ class VercelProvider {
29
29
  apiKey;
30
30
  debugMode;
31
31
  baseURL; // PRD #194: Custom endpoint URL for OpenAI-compatible APIs
32
+ customHeaders; // PRD #443: Custom HTTP headers
32
33
  modelInstance; // Vercel AI SDK model instance - initialized by initializeModel()
33
34
  constructor(config) {
34
35
  this.apiKey = config.apiKey;
@@ -36,6 +37,7 @@ class VercelProvider {
36
37
  this.model = config.model || this.getDefaultModel();
37
38
  this.debugMode = config.debugMode ?? process.env.DEBUG_DOT_AI === 'true';
38
39
  this.baseURL = config.baseURL; // PRD #194: Store custom endpoint URL
40
+ this.customHeaders = config.customHeaders; // PRD #443: Store custom headers
39
41
  this.validateConfiguration();
40
42
  this.initializeModel();
41
43
  }
@@ -51,34 +53,62 @@ class VercelProvider {
51
53
  try {
52
54
  // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Vercel AI SDK provider types vary
53
55
  let provider;
56
+ // PRD #443: Helper to build merged headers (provider defaults + custom headers)
57
+ // Custom headers take precedence over provider defaults via spread order
58
+ const mergeHeaders = (providerDefaults) => {
59
+ if (!providerDefaults && !this.customHeaders)
60
+ return undefined;
61
+ return {
62
+ ...providerDefaults,
63
+ ...this.customHeaders,
64
+ };
65
+ };
66
+ // PRD #443: Helper for optional baseURL spread
67
+ const baseURLOpt = this.baseURL ? { baseURL: this.baseURL } : {};
54
68
  switch (this.providerType) {
55
69
  case 'openai':
56
70
  provider = (0, openai_1.createOpenAI)({
57
71
  apiKey: this.apiKey,
72
+ ...baseURLOpt,
73
+ ...(mergeHeaders() && { headers: mergeHeaders() }),
58
74
  });
59
75
  break;
60
76
  case 'google':
61
77
  case 'google_flash': // PRD #294: Gemini 3 Flash variant
62
- provider = (0, google_1.createGoogleGenerativeAI)({ apiKey: this.apiKey });
78
+ provider = (0, google_1.createGoogleGenerativeAI)({
79
+ apiKey: this.apiKey,
80
+ ...baseURLOpt,
81
+ ...(mergeHeaders() && { headers: mergeHeaders() }),
82
+ });
63
83
  break;
64
84
  case 'anthropic':
65
85
  case 'anthropic_opus':
66
86
  case 'anthropic_haiku':
67
87
  provider = (0, anthropic_1.createAnthropic)({
68
88
  apiKey: this.apiKey,
89
+ ...baseURLOpt,
69
90
  // Enable 1M token context window for Claude Sonnet 4 (5x increase from 200K)
70
91
  // Required for models like claude-sonnet-4-5-20250929
71
- headers: {
92
+ // PRD #443: Custom headers merge with (and can override) the anthropic-beta default
93
+ headers: mergeHeaders({
72
94
  'anthropic-beta': 'context-1m-2025-08-07',
73
- },
95
+ }),
74
96
  });
75
97
  break;
76
98
  case 'xai':
77
- provider = (0, xai_1.createXai)({ apiKey: this.apiKey });
99
+ provider = (0, xai_1.createXai)({
100
+ apiKey: this.apiKey,
101
+ ...baseURLOpt,
102
+ ...(mergeHeaders() && { headers: mergeHeaders() }),
103
+ });
78
104
  break;
79
105
  case 'alibaba':
80
106
  // PRD #382: Alibaba Qwen 3.5 Plus - uses @ai-sdk/alibaba dedicated SDK
81
- provider = (0, alibaba_1.createAlibaba)({ apiKey: this.apiKey });
107
+ // Note: @ai-sdk/alibaba does not accept baseURL (PRD #443 only covers Anthropic/OpenAI/Google/xAI)
108
+ provider = (0, alibaba_1.createAlibaba)({
109
+ apiKey: this.apiKey,
110
+ ...(mergeHeaders() && { headers: mergeHeaders() }),
111
+ });
82
112
  break;
83
113
  case 'kimi':
84
114
  // PRD #353: Moonshot AI Kimi K2.5 - uses @ai-sdk/openai-compatible for proper
@@ -88,6 +118,7 @@ class VercelProvider {
88
118
  name: 'kimi',
89
119
  apiKey: this.apiKey,
90
120
  baseURL: 'https://api.moonshot.ai/v1',
121
+ ...(mergeHeaders() && { headers: mergeHeaders() }),
91
122
  });
92
123
  this.modelInstance = provider.chatModel(this.model);
93
124
  return; // Early return - model instance already set
@@ -97,6 +128,7 @@ class VercelProvider {
97
128
  // 1. Environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION)
98
129
  // 2. ~/.aws/credentials file
99
130
  // 3. IAM roles (EC2 instance profiles, ECS roles, EKS service accounts)
131
+ // Note: Custom headers not supported - AWS SDK handles auth via credential chain
100
132
  provider = (0, amazon_bedrock_1.createAmazonBedrock)({
101
133
  region: process.env.AWS_REGION || 'us-east-1',
102
134
  });
@@ -106,6 +138,8 @@ class VercelProvider {
106
138
  // Use dedicated OpenRouter provider for proper format conversion
107
139
  provider = (0, ai_sdk_provider_1.createOpenRouter)({
108
140
  apiKey: this.apiKey,
141
+ ...baseURLOpt,
142
+ ...(mergeHeaders() && { headers: mergeHeaders() }),
109
143
  });
110
144
  break;
111
145
  case 'custom':
@@ -117,6 +151,7 @@ class VercelProvider {
117
151
  provider = (0, openai_1.createOpenAI)({
118
152
  apiKey: this.apiKey,
119
153
  baseURL: this.baseURL,
154
+ ...(mergeHeaders() && { headers: mergeHeaders() }),
120
155
  });
121
156
  // Use .chat() explicitly for custom endpoints to use /chat/completions instead of /responses
122
157
  this.modelInstance = provider.chat(this.model);
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Session Event Bus - Real-time event infrastructure for session lifecycle changes
3
+ *
4
+ * Interface-based event bus that broadcasts session state changes for any tool.
5
+ * Default implementation uses in-memory Node.js EventEmitter.
6
+ * Can be swapped to NATS or another external bus via setSessionEventBus().
7
+ *
8
+ * PRD #425: Session List API and SSE Streaming for Remediation Events
9
+ */
10
+ /**
11
+ * Event payload for session state changes
12
+ */
13
+ export interface SessionEvent {
14
+ sessionId: string;
15
+ toolName: string;
16
+ status: string;
17
+ issue: string;
18
+ timestamp: string;
19
+ }
20
+ /**
21
+ * Supported event types
22
+ */
23
+ export type SessionEventType = 'session-created' | 'session-updated';
24
+ /**
25
+ * Event handler function signature
26
+ */
27
+ export type SessionEventHandler = (event: SessionEvent) => void;
28
+ /**
29
+ * Event name constants
30
+ */
31
+ export declare const SESSION_EVENTS: {
32
+ readonly SESSION_CREATED: SessionEventType;
33
+ readonly SESSION_UPDATED: SessionEventType;
34
+ };
35
+ /**
36
+ * Abstract event bus interface. Swap implementations by calling setSessionEventBus().
37
+ */
38
+ export interface SessionEventBus {
39
+ publish(eventType: SessionEventType, event: SessionEvent): void;
40
+ subscribe(eventType: SessionEventType, handler: SessionEventHandler): void;
41
+ unsubscribe(eventType: SessionEventType, handler: SessionEventHandler): void;
42
+ }
43
+ /**
44
+ * Get the active session event bus singleton
45
+ */
46
+ export declare function getSessionEventBus(): SessionEventBus;
47
+ /**
48
+ * Replace the session event bus implementation (for testing or switching to external bus)
49
+ */
50
+ export declare function setSessionEventBus(bus: SessionEventBus): void;
51
+ //# sourceMappingURL=session-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-events.d.ts","sourceRoot":"","sources":["../../src/core/session-events.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,cAAc;8BACa,gBAAgB;8BAChB,gBAAgB;CAC9C,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAChE,SAAS,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC3E,WAAW,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;CAC9E;AAwBD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,eAAe,CAEpD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI,CAE7D"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /**
3
+ * Session Event Bus - Real-time event infrastructure for session lifecycle changes
4
+ *
5
+ * Interface-based event bus that broadcasts session state changes for any tool.
6
+ * Default implementation uses in-memory Node.js EventEmitter.
7
+ * Can be swapped to NATS or another external bus via setSessionEventBus().
8
+ *
9
+ * PRD #425: Session List API and SSE Streaming for Remediation Events
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SESSION_EVENTS = void 0;
13
+ exports.getSessionEventBus = getSessionEventBus;
14
+ exports.setSessionEventBus = setSessionEventBus;
15
+ const events_1 = require("events");
16
+ /**
17
+ * Event name constants
18
+ */
19
+ exports.SESSION_EVENTS = {
20
+ SESSION_CREATED: 'session-created',
21
+ SESSION_UPDATED: 'session-updated',
22
+ };
23
+ /**
24
+ * In-memory implementation using Node.js EventEmitter.
25
+ * Suitable for single-process deployments.
26
+ */
27
+ class InMemorySessionEventBus {
28
+ emitter = new events_1.EventEmitter();
29
+ publish(eventType, event) {
30
+ this.emitter.emit(eventType, event);
31
+ }
32
+ subscribe(eventType, handler) {
33
+ this.emitter.on(eventType, handler);
34
+ }
35
+ unsubscribe(eventType, handler) {
36
+ this.emitter.off(eventType, handler);
37
+ }
38
+ }
39
+ let instance = new InMemorySessionEventBus();
40
+ /**
41
+ * Get the active session event bus singleton
42
+ */
43
+ function getSessionEventBus() {
44
+ return instance;
45
+ }
46
+ /**
47
+ * Replace the session event bus implementation (for testing or switching to external bus)
48
+ */
49
+ function setSessionEventBus(bus) {
50
+ instance = bus;
51
+ }
@@ -230,6 +230,17 @@ export declare class RestApiRouter {
230
230
  * PRD #320: Supports ?reload=true to regenerate visualization from current session data
231
231
  */
232
232
  private handleVisualize;
233
+ /**
234
+ * Handle GET /api/v1/sessions (PRD #425)
235
+ * Lists sessions with optional status filtering and pagination.
236
+ * Returns summary-only data (excludes finalAnalysis).
237
+ */
238
+ private handleListSessions;
239
+ /**
240
+ * Handle SSE streaming for remediation session events
241
+ * PRD #425: Real-time event stream filtered to toolName='remediate'
242
+ */
243
+ private handleRemediationSSE;
233
244
  /**
234
245
  * Handle generic session retrieval requests
235
246
  * Returns raw session data for any tool type (remediate, query, recommend, etc.)
@@ -1 +1 @@
1
- {"version":3,"file":"rest-api.d.ts","sourceRoot":"","sources":["../../src/interfaces/rest-api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE5D,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,iBAAiB,EAAc,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAoCtC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAevD;;GAEG;AACH,oBAAY,UAAU;IACpB,EAAE,MAAM;IACR,WAAW,MAAM;IACjB,SAAS,MAAM;IACf,kBAAkB,MAAM;IACxB,qBAAqB,MAAM;IAC3B,WAAW,MAAM;IACjB,mBAAmB,MAAM;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;IACF,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,IAAI,CAAC,EAAE;QACL,MAAM,EAAE,OAAO,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,IAAI,CAAC,EAAE;QACL,KAAK,EAAE,QAAQ,EAAE,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;CACH;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,WAAW,CAAC;AAEhB;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EACH,MAAM,GACN;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAClC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAA;KAAE,GACvC,KAAK,CAAC;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC,GACF,wBAAwB,GACxB,4BAA4B,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,aAAa,CAAC,CAAgB;gBAGpC,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,aAAa,CAAC,EAAE,aAAa,EAC7B,MAAM,GAAE,OAAO,CAAC,aAAa,CAAM;IAkCrC;;;;OAIG;IACG,aAAa,CACjB,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,EACnB,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC;IAmGhB;;;OAGG;YACW,aAAa;IAqG3B;;OAEG;YACW,mBAAmB;IAuEjC;;OAEG;YACW,mBAAmB;IAuJjC;;OAEG;YACW,iBAAiB;IAqC/B;;OAEG;YACW,yBAAyB;IA2EvC;;;;OAIG;YACW,sBAAsB;IAyDpC;;;OAGG;YACW,qBAAqB;IAmKnC;;;;OAIG;YACW,mBAAmB;IAoLjC;;;OAGG;YACW,mBAAmB;IAmDjC;;;OAGG;YACW,iBAAiB;IAuL/B;;;OAGG;YACW,eAAe;IA0J7B;;;OAGG;YACW,aAAa;IAuK3B;;OAEG;YACW,wBAAwB;IA6CtC;;OAEG;YACW,uBAAuB;IAmErC;;OAEG;YACW,yBAAyB;IAqDvC;;;;OAIG;YACW,eAAe;IAmW7B;;;;OAIG;YACW,sBAAsB;IAuEpC;;;;OAIG;YACW,2BAA2B;IAyQzC;;;;OAIG;YACW,kBAAkB;IA6PhC;;OAEG;YACW,+BAA+B;IA8D7C;;OAEG;YACW,gBAAgB;IAwG9B;;OAEG;YACW,eAAe;IAkD7B;;OAEG;YACW,gBAAgB;IA6E9B;;OAEG;IACH,OAAO,CAAC,cAAc;IAUtB;;OAEG;YACW,gBAAgB;IAS9B;;OAEG;YACW,iBAAiB;IAyB/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAMvC;;OAEG;IACH,SAAS,IAAI,aAAa;IAI1B;;;OAGG;IACH,gBAAgB,IAAI,iBAAiB;CAGtC"}
1
+ {"version":3,"file":"rest-api.d.ts","sourceRoot":"","sources":["../../src/interfaces/rest-api.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,7 @@ const resource_sync_handler_1 = require("./resource-sync-handler");
48
48
  const embedding_migration_handler_1 = require("./embedding-migration-handler");
49
49
  const prompts_1 = require("../tools/prompts");
50
50
  const generic_session_manager_1 = require("../core/generic-session-manager");
51
+ const session_events_1 = require("../core/session-events");
51
52
  const shared_prompt_loader_1 = require("../core/shared-prompt-loader");
52
53
  const visualization_1 = require("../core/visualization");
53
54
  const ai_provider_factory_1 = require("../core/ai-provider-factory");
@@ -195,6 +196,8 @@ class RestApiRouter {
195
196
  'POST:/api/v1/prompts/refresh': () => this.handlePromptsCacheRefresh(req, res, requestId),
196
197
  'POST:/api/v1/prompts/:promptName': () => this.handlePromptsGetRequest(req, res, requestId, params.promptName, body),
197
198
  'GET:/api/v1/visualize/:sessionId': () => this.handleVisualize(req, res, requestId, params.sessionId, searchParams),
199
+ 'GET:/api/v1/events/remediations': () => this.handleRemediationSSE(req, res, requestId),
200
+ 'GET:/api/v1/sessions': () => this.handleListSessions(req, res, requestId, searchParams),
198
201
  'GET:/api/v1/sessions/:sessionId': () => this.handleSessionRetrieval(req, res, requestId, params.sessionId),
199
202
  'DELETE:/api/v1/knowledge/source/:sourceIdentifier': () => this.handleDeleteKnowledgeSource(req, res, requestId, params.sourceIdentifier),
200
203
  'POST:/api/v1/knowledge/ask': () => this.handleKnowledgeAsk(req, res, requestId, body),
@@ -1317,6 +1320,9 @@ class RestApiRouter {
1317
1320
  let visualizationResponse;
1318
1321
  let isFallbackResponse = false;
1319
1322
  try {
1323
+ if (result.status && result.status !== 'success') {
1324
+ throw new Error(`AI visualization generation ${result.status}: ${result.finalMessage}`);
1325
+ }
1320
1326
  const toolsUsed = [
1321
1327
  ...new Set(result.toolCallsExecuted.map(tc => tc.tool)),
1322
1328
  ];
@@ -1403,6 +1409,107 @@ class RestApiRouter {
1403
1409
  await this.sendErrorResponse(res, requestId, HttpStatus.INTERNAL_SERVER_ERROR, 'VISUALIZATION_ERROR', 'Failed to generate visualization', { error: errorMessage });
1404
1410
  }
1405
1411
  }
1412
+ /**
1413
+ * Handle GET /api/v1/sessions (PRD #425)
1414
+ * Lists sessions with optional status filtering and pagination.
1415
+ * Returns summary-only data (excludes finalAnalysis).
1416
+ */
1417
+ async handleListSessions(_req, res, requestId, searchParams) {
1418
+ try {
1419
+ const status = searchParams.get('status') || undefined;
1420
+ const limit = Math.min(Math.max(parseInt(searchParams.get('limit') || '50', 10) || 50, 1), 200);
1421
+ const offset = Math.max(parseInt(searchParams.get('offset') || '0', 10) || 0, 0);
1422
+ this.logger.info('Listing sessions', { requestId, status, limit, offset });
1423
+ const sessionManager = new generic_session_manager_1.GenericSessionManager('rem');
1424
+ const sessionIds = sessionManager.listSessions();
1425
+ // Load all sessions and build summaries
1426
+ const allSessions = [];
1427
+ for (const id of sessionIds) {
1428
+ const session = sessionManager.getSession(id);
1429
+ if (!session)
1430
+ continue;
1431
+ const data = session.data || {};
1432
+ const sessionStatus = typeof data.status === 'string' ? data.status : undefined;
1433
+ // Filter by status if provided
1434
+ if (status && sessionStatus !== status)
1435
+ continue;
1436
+ allSessions.push({
1437
+ sessionId: session.sessionId,
1438
+ status: sessionStatus,
1439
+ issue: typeof data.issue === 'string' ? data.issue : undefined,
1440
+ mode: typeof data.mode === 'string' ? data.mode : undefined,
1441
+ toolName: typeof data.toolName === 'string' ? data.toolName : undefined,
1442
+ createdAt: session.createdAt,
1443
+ updatedAt: session.updatedAt,
1444
+ });
1445
+ }
1446
+ // Sort by updatedAt descending (newest first)
1447
+ allSessions.sort((a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime());
1448
+ const total = allSessions.length;
1449
+ const paginatedSessions = allSessions.slice(offset, offset + limit);
1450
+ const response = {
1451
+ success: true,
1452
+ data: {
1453
+ sessions: paginatedSessions,
1454
+ total,
1455
+ limit,
1456
+ offset,
1457
+ },
1458
+ meta: {
1459
+ timestamp: new Date().toISOString(),
1460
+ requestId,
1461
+ version: this.config.version,
1462
+ },
1463
+ };
1464
+ await this.sendJsonResponse(res, HttpStatus.OK, response);
1465
+ this.logger.info('Sessions listed successfully', {
1466
+ requestId,
1467
+ total,
1468
+ returned: paginatedSessions.length,
1469
+ });
1470
+ }
1471
+ catch (error) {
1472
+ const errorMessage = error instanceof Error ? error.message : String(error);
1473
+ this.logger.error('Session list failed', error instanceof Error ? error : new Error(String(error)), { requestId });
1474
+ await this.sendErrorResponse(res, requestId, HttpStatus.INTERNAL_SERVER_ERROR, 'SESSION_LIST_ERROR', 'Failed to list sessions', { error: errorMessage });
1475
+ }
1476
+ }
1477
+ /**
1478
+ * Handle SSE streaming for remediation session events
1479
+ * PRD #425: Real-time event stream filtered to toolName='remediate'
1480
+ */
1481
+ async handleRemediationSSE(req, res, requestId) {
1482
+ const headers = {
1483
+ 'Content-Type': 'text/event-stream',
1484
+ 'Cache-Control': 'no-cache',
1485
+ 'Connection': 'keep-alive',
1486
+ };
1487
+ if (this.config.enableCors) {
1488
+ headers['Access-Control-Allow-Origin'] = '*';
1489
+ headers['Access-Control-Allow-Headers'] = 'Content-Type, Authorization';
1490
+ }
1491
+ res.writeHead(HttpStatus.OK, headers);
1492
+ this.logger.info('SSE connection established', { requestId });
1493
+ const eventBus = (0, session_events_1.getSessionEventBus)();
1494
+ const createHandler = (eventType) => (event) => {
1495
+ if (event.toolName !== 'remediate')
1496
+ return;
1497
+ res.write(`event: ${eventType}\ndata: ${JSON.stringify(event)}\n\n`);
1498
+ };
1499
+ const onCreated = createHandler('session-created');
1500
+ const onUpdated = createHandler('session-updated');
1501
+ eventBus.subscribe('session-created', onCreated);
1502
+ eventBus.subscribe('session-updated', onUpdated);
1503
+ const heartbeat = setInterval(() => {
1504
+ res.write(': heartbeat\n\n');
1505
+ }, 30000);
1506
+ req.on('close', () => {
1507
+ clearInterval(heartbeat);
1508
+ eventBus.unsubscribe('session-created', onCreated);
1509
+ eventBus.unsubscribe('session-updated', onUpdated);
1510
+ this.logger.info('SSE connection closed', { requestId });
1511
+ });
1512
+ }
1406
1513
  /**
1407
1514
  * Handle generic session retrieval requests
1408
1515
  * Returns raw session data for any tool type (remediate, query, recommend, etc.)
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interfaces/routes/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAmM5E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAC5C,OAAO,EACP,OAAO,EACP,OAAO,EACP,OAAO,CACR,EA8TA,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAInE;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interfaces/routes/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAuM5E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAC5C,OAAO,EACP,OAAO,EACP,OAAO,EACP,OAAO,CACR,EAyVA,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAInE;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
@@ -332,8 +332,19 @@ exports.routeDefinitions = [
332
332
  },
333
333
  },
334
334
  // ============================================
335
- // Sessions Endpoint
335
+ // Sessions Endpoints
336
336
  // ============================================
337
+ {
338
+ path: '/api/v1/sessions',
339
+ method: 'GET',
340
+ description: 'List sessions with optional status filtering and pagination',
341
+ tags: ['Sessions'],
342
+ query: schemas_1.SessionListQuerySchema,
343
+ response: schemas_1.SessionListResponseSchema,
344
+ errorResponses: {
345
+ 500: schemas_1.SessionListErrorSchema,
346
+ },
347
+ },
337
348
  {
338
349
  path: '/api/v1/sessions/:sessionId',
339
350
  method: 'GET',
@@ -347,6 +358,19 @@ exports.routeDefinitions = [
347
358
  },
348
359
  },
349
360
  // ============================================
361
+ // SSE Streaming Endpoints (PRD #425)
362
+ // ============================================
363
+ {
364
+ path: '/api/v1/events/remediations',
365
+ method: 'GET',
366
+ description: 'SSE stream for real-time remediation session events. Returns text/event-stream.',
367
+ tags: ['Sessions'],
368
+ response: schemas_1.RemediationSSEEventSchema,
369
+ errorResponses: {
370
+ 500: schemas_1.InternalServerErrorSchema,
371
+ },
372
+ },
373
+ // ============================================
350
374
  // Knowledge Base Endpoints (PRD #356)
351
375
  // ============================================
352
376
  {
@@ -15,7 +15,7 @@ export { VisualizationTypeSchema, CodeContentSchema, TableContentSchema, CardIte
15
15
  export { ResourceKindSchema, ResourceKindsDataSchema, ResourceKindsResponseSchema, ResourceSummarySchema, ResourceSearchDataSchema, ResourceSearchResponseSchema, ResourceListDataSchema, ResourceListResponseSchema, SingleResourceDataSchema, SingleResourceResponseSchema, NamespacesDataSchema, NamespacesResponseSchema, ResourceSyncRequestSchema, ResourceSyncDataSchema, ResourceSyncResponseSchema, ResourceNotFoundErrorSchema, ResourceBadRequestErrorSchema, ResourcePluginUnavailableErrorSchema, ResourceKindsErrorSchema, ResourceSearchErrorSchema, ResourceListErrorSchema, SingleResourceErrorSchema, NamespacesErrorSchema, ResourceSyncErrorSchema, type ResourceKind, type ResourceKindsData, type ResourceKindsResponse, type ResourceSummary, type ResourceSearchData, type ResourceSearchResponse, type ResourceListData, type ResourceListResponse, type SingleResourceData, type SingleResourceResponse, type NamespacesData, type NamespacesResponse, type ResourceSyncRequest, type ResourceSyncData, type ResourceSyncResponse, } from './resources';
16
16
  export { EventInvolvedObjectSchema, KubernetesEventSchema, EventsDataSchema, EventsResponseSchema, EventsBadRequestErrorSchema, EventsPluginUnavailableErrorSchema, EventsErrorSchema, type EventInvolvedObject, type KubernetesEvent, type EventsData, type EventsResponse, } from './events';
17
17
  export { LogsDataSchema, LogsResponseSchema, LogsBadRequestErrorSchema, LogsPluginUnavailableErrorSchema, LogsErrorSchema, type LogsData, type LogsResponse, } from './logs';
18
- export { SessionMetadataSchema, SessionDataSchema, SessionResponseDataSchema, SessionResponseSchema, SessionNotFoundErrorSchema, SessionRetrievalErrorSchema, type SessionMetadata, type SessionData, type SessionResponseData, type SessionResponse, } from './sessions';
18
+ export { SessionMetadataSchema, SessionDataSchema, SessionResponseDataSchema, SessionResponseSchema, SessionNotFoundErrorSchema, SessionRetrievalErrorSchema, SessionListQuerySchema, SessionSummarySchema, SessionListDataSchema, SessionListResponseSchema, SessionListErrorSchema, RemediationSSEEventSchema, type SessionMetadata, type SessionData, type SessionResponseData, type SessionResponse, type SessionListQuery, type SessionSummary, type SessionListData, type SessionListResponse, type RemediationSSEEvent, } from './sessions';
19
19
  export { PromptArgumentSchema, PromptInfoSchema, PromptsListDataSchema, PromptsListResponseSchema, PromptMessageSchema, PromptFileSchema, PromptGetDataSchema, PromptGetResponseSchema, PromptGetRequestSchema, PromptNotFoundErrorSchema, PromptValidationErrorSchema, PromptsListErrorSchema, PromptGetErrorSchema, PromptsCacheRefreshDataSchema, PromptsCacheRefreshResponseSchema, PromptsCacheRefreshErrorSchema, type PromptArgument, type PromptInfo, type PromptsListData, type PromptsListResponse, type PromptMessage, type PromptFileData, type PromptGetData, type PromptGetResponse, type PromptGetRequest, type PromptsCacheRefreshData, type PromptsCacheRefreshResponse, } from './prompts';
20
20
  export { DeleteBySourceDataSchema, DeleteBySourceResponseSchema, DeleteBySourceBadRequestErrorSchema, DeleteBySourcePluginUnavailableErrorSchema, DeleteBySourceErrorSchema, KnowledgeAskRequestSchema, KnowledgeAskSourceSchema, KnowledgeAskChunkSchema, KnowledgeAskDataSchema, KnowledgeAskResponseSchema, KnowledgeAskBadRequestErrorSchema, KnowledgeAskAIUnavailableErrorSchema, KnowledgeAskPluginUnavailableErrorSchema, KnowledgeAskErrorSchema, type DeleteBySourceData, type DeleteBySourceResponse, type KnowledgeAskRequest, type KnowledgeAskSource, type KnowledgeAskChunk, type KnowledgeAskData, type KnowledgeAskResponse, } from './knowledge';
21
21
  export { EmbeddingMigrationRequestSchema, CollectionMigrationResultSchema, EmbeddingMigrationDataSchema, EmbeddingMigrationResponseSchema, EmbeddingMigrationBadRequestErrorSchema, EmbeddingMigrationServiceUnavailableErrorSchema, EmbeddingMigrationErrorSchema, type EmbeddingMigrationRequest, type CollectionMigrationResult, type EmbeddingMigrationData, type EmbeddingMigrationResponse, } from './embeddings';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interfaces/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,6BAA6B,EAC7B,yBAAyB,EACzB,2BAA2B,EAC3B,KAAK,IAAI,EACT,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,aAAa,GACnB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,uBAAuB,EACvB,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,uBAAuB,EACvB,6BAA6B,EAC7B,wBAAwB,EACxB,wBAAwB,EACxB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,mBAAmB,EACnB,+BAA+B,EAC/B,2BAA2B,EAC3B,gCAAgC,EAChC,0CAA0C,EAC1C,gCAAgC,EAChC,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,2BAA2B,EAC3B,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,oCAAoC,EACpC,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,EAC3B,kCAAkC,EAClC,iBAAiB,EACjB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,yBAAyB,EACzB,gCAAgC,EAChC,eAAe,EACf,KAAK,QAAQ,EACb,KAAK,YAAY,GAClB,MAAM,QAAQ,CAAC;AAGhB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,EACzB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,6BAA6B,EAC7B,iCAAiC,EACjC,8BAA8B,EAC9B,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,GACjC,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,mCAAmC,EACnC,0CAA0C,EAC1C,yBAAyB,EAEzB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,0BAA0B,EAC1B,iCAAiC,EACjC,oCAAoC,EACpC,wCAAwC,EACxC,uBAAuB,EACvB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAC/B,4BAA4B,EAC5B,gCAAgC,EAChC,uCAAuC,EACvC,+CAA+C,EAC/C,6BAA6B,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,GAChC,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACxB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interfaces/schemas/index.ts"],"names":[],"mappings":"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"}
@@ -12,8 +12,8 @@
12
12
  */
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.ResourceSyncResponseSchema = exports.ResourceSyncDataSchema = exports.ResourceSyncRequestSchema = exports.NamespacesResponseSchema = exports.NamespacesDataSchema = exports.SingleResourceResponseSchema = exports.SingleResourceDataSchema = exports.ResourceListResponseSchema = exports.ResourceListDataSchema = exports.ResourceSearchResponseSchema = exports.ResourceSearchDataSchema = exports.ResourceSummarySchema = exports.ResourceKindsResponseSchema = exports.ResourceKindsDataSchema = exports.ResourceKindSchema = exports.VisualizationInternalErrorSchema = exports.VisualizationServiceUnavailableErrorSchema = exports.VisualizationNotFoundErrorSchema = exports.VisualizationResponseSchema = exports.VisualizationResponseDataSchema = exports.VisualizationSchema = exports.VisualizationContentSchema = exports.BarChartContentSchema = exports.BarChartDataItemSchema = exports.DiffContentSchema = exports.CardsContentSchema = exports.CardItemSchema = exports.TableContentSchema = exports.CodeContentSchema = exports.VisualizationTypeSchema = exports.ToolDiscoveryErrorSchema = exports.ToolExecutionErrorSchema = exports.InvalidToolRequestErrorSchema = exports.ToolNotFoundErrorSchema = exports.ToolExecutionResponseSchema = exports.ToolExecutionDataSchema = exports.ToolDiscoveryResponseSchema = exports.ToolDiscoveryDataSchema = exports.ToolInfoSchema = exports.ToolParameterSchema = exports.createSuccessResponseSchema = exports.InternalServerErrorSchema = exports.ServiceUnavailableErrorSchema = exports.MethodNotAllowedErrorSchema = exports.BadRequestErrorSchema = exports.NotFoundErrorSchema = exports.ErrorResponseSchema = exports.RestApiResponseSchema = exports.ErrorDetailsSchema = exports.MetaSchema = void 0;
15
- exports.KnowledgeAskSourceSchema = exports.KnowledgeAskRequestSchema = exports.DeleteBySourceErrorSchema = exports.DeleteBySourcePluginUnavailableErrorSchema = exports.DeleteBySourceBadRequestErrorSchema = exports.DeleteBySourceResponseSchema = exports.DeleteBySourceDataSchema = exports.PromptsCacheRefreshErrorSchema = exports.PromptsCacheRefreshResponseSchema = exports.PromptsCacheRefreshDataSchema = exports.PromptGetErrorSchema = exports.PromptsListErrorSchema = exports.PromptValidationErrorSchema = exports.PromptNotFoundErrorSchema = exports.PromptGetRequestSchema = exports.PromptGetResponseSchema = exports.PromptGetDataSchema = exports.PromptFileSchema = exports.PromptMessageSchema = exports.PromptsListResponseSchema = exports.PromptsListDataSchema = exports.PromptInfoSchema = exports.PromptArgumentSchema = exports.SessionRetrievalErrorSchema = exports.SessionNotFoundErrorSchema = exports.SessionResponseSchema = exports.SessionResponseDataSchema = exports.SessionDataSchema = exports.SessionMetadataSchema = exports.LogsErrorSchema = exports.LogsPluginUnavailableErrorSchema = exports.LogsBadRequestErrorSchema = exports.LogsResponseSchema = exports.LogsDataSchema = exports.EventsErrorSchema = exports.EventsPluginUnavailableErrorSchema = exports.EventsBadRequestErrorSchema = exports.EventsResponseSchema = exports.EventsDataSchema = exports.KubernetesEventSchema = exports.EventInvolvedObjectSchema = exports.ResourceSyncErrorSchema = exports.NamespacesErrorSchema = exports.SingleResourceErrorSchema = exports.ResourceListErrorSchema = exports.ResourceSearchErrorSchema = exports.ResourceKindsErrorSchema = exports.ResourcePluginUnavailableErrorSchema = exports.ResourceBadRequestErrorSchema = exports.ResourceNotFoundErrorSchema = void 0;
16
- exports.UserManagementErrorSchema = exports.UserBadRequestErrorSchema = exports.UserNotFoundErrorSchema = exports.UserConflictErrorSchema = exports.UserEmailParamsSchema = exports.UserEntrySchema = exports.UserDeleteResponseSchema = exports.UserDeleteDataSchema = exports.UserListResponseSchema = exports.UserListDataSchema = exports.UserCreateResponseSchema = exports.UserCreateDataSchema = exports.UserCreateRequestSchema = exports.EmbeddingMigrationErrorSchema = exports.EmbeddingMigrationServiceUnavailableErrorSchema = exports.EmbeddingMigrationBadRequestErrorSchema = exports.EmbeddingMigrationResponseSchema = exports.EmbeddingMigrationDataSchema = exports.CollectionMigrationResultSchema = exports.EmbeddingMigrationRequestSchema = exports.KnowledgeAskErrorSchema = exports.KnowledgeAskPluginUnavailableErrorSchema = exports.KnowledgeAskAIUnavailableErrorSchema = exports.KnowledgeAskBadRequestErrorSchema = exports.KnowledgeAskResponseSchema = exports.KnowledgeAskDataSchema = exports.KnowledgeAskChunkSchema = void 0;
15
+ exports.DeleteBySourceDataSchema = exports.PromptsCacheRefreshErrorSchema = exports.PromptsCacheRefreshResponseSchema = exports.PromptsCacheRefreshDataSchema = exports.PromptGetErrorSchema = exports.PromptsListErrorSchema = exports.PromptValidationErrorSchema = exports.PromptNotFoundErrorSchema = exports.PromptGetRequestSchema = exports.PromptGetResponseSchema = exports.PromptGetDataSchema = exports.PromptFileSchema = exports.PromptMessageSchema = exports.PromptsListResponseSchema = exports.PromptsListDataSchema = exports.PromptInfoSchema = exports.PromptArgumentSchema = exports.RemediationSSEEventSchema = exports.SessionListErrorSchema = exports.SessionListResponseSchema = exports.SessionListDataSchema = exports.SessionSummarySchema = exports.SessionListQuerySchema = exports.SessionRetrievalErrorSchema = exports.SessionNotFoundErrorSchema = exports.SessionResponseSchema = exports.SessionResponseDataSchema = exports.SessionDataSchema = exports.SessionMetadataSchema = exports.LogsErrorSchema = exports.LogsPluginUnavailableErrorSchema = exports.LogsBadRequestErrorSchema = exports.LogsResponseSchema = exports.LogsDataSchema = exports.EventsErrorSchema = exports.EventsPluginUnavailableErrorSchema = exports.EventsBadRequestErrorSchema = exports.EventsResponseSchema = exports.EventsDataSchema = exports.KubernetesEventSchema = exports.EventInvolvedObjectSchema = exports.ResourceSyncErrorSchema = exports.NamespacesErrorSchema = exports.SingleResourceErrorSchema = exports.ResourceListErrorSchema = exports.ResourceSearchErrorSchema = exports.ResourceKindsErrorSchema = exports.ResourcePluginUnavailableErrorSchema = exports.ResourceBadRequestErrorSchema = exports.ResourceNotFoundErrorSchema = void 0;
16
+ exports.UserManagementErrorSchema = exports.UserBadRequestErrorSchema = exports.UserNotFoundErrorSchema = exports.UserConflictErrorSchema = exports.UserEmailParamsSchema = exports.UserEntrySchema = exports.UserDeleteResponseSchema = exports.UserDeleteDataSchema = exports.UserListResponseSchema = exports.UserListDataSchema = exports.UserCreateResponseSchema = exports.UserCreateDataSchema = exports.UserCreateRequestSchema = exports.EmbeddingMigrationErrorSchema = exports.EmbeddingMigrationServiceUnavailableErrorSchema = exports.EmbeddingMigrationBadRequestErrorSchema = exports.EmbeddingMigrationResponseSchema = exports.EmbeddingMigrationDataSchema = exports.CollectionMigrationResultSchema = exports.EmbeddingMigrationRequestSchema = exports.KnowledgeAskErrorSchema = exports.KnowledgeAskPluginUnavailableErrorSchema = exports.KnowledgeAskAIUnavailableErrorSchema = exports.KnowledgeAskBadRequestErrorSchema = exports.KnowledgeAskResponseSchema = exports.KnowledgeAskDataSchema = exports.KnowledgeAskChunkSchema = exports.KnowledgeAskSourceSchema = exports.KnowledgeAskRequestSchema = exports.DeleteBySourceErrorSchema = exports.DeleteBySourcePluginUnavailableErrorSchema = exports.DeleteBySourceBadRequestErrorSchema = exports.DeleteBySourceResponseSchema = void 0;
17
17
  // Common schemas
18
18
  var common_1 = require("./common");
19
19
  Object.defineProperty(exports, "MetaSchema", { enumerable: true, get: function () { return common_1.MetaSchema; } });
@@ -105,6 +105,12 @@ Object.defineProperty(exports, "SessionResponseDataSchema", { enumerable: true,
105
105
  Object.defineProperty(exports, "SessionResponseSchema", { enumerable: true, get: function () { return sessions_1.SessionResponseSchema; } });
106
106
  Object.defineProperty(exports, "SessionNotFoundErrorSchema", { enumerable: true, get: function () { return sessions_1.SessionNotFoundErrorSchema; } });
107
107
  Object.defineProperty(exports, "SessionRetrievalErrorSchema", { enumerable: true, get: function () { return sessions_1.SessionRetrievalErrorSchema; } });
108
+ Object.defineProperty(exports, "SessionListQuerySchema", { enumerable: true, get: function () { return sessions_1.SessionListQuerySchema; } });
109
+ Object.defineProperty(exports, "SessionSummarySchema", { enumerable: true, get: function () { return sessions_1.SessionSummarySchema; } });
110
+ Object.defineProperty(exports, "SessionListDataSchema", { enumerable: true, get: function () { return sessions_1.SessionListDataSchema; } });
111
+ Object.defineProperty(exports, "SessionListResponseSchema", { enumerable: true, get: function () { return sessions_1.SessionListResponseSchema; } });
112
+ Object.defineProperty(exports, "SessionListErrorSchema", { enumerable: true, get: function () { return sessions_1.SessionListErrorSchema; } });
113
+ Object.defineProperty(exports, "RemediationSSEEventSchema", { enumerable: true, get: function () { return sessions_1.RemediationSSEEventSchema; } });
108
114
  // Prompts schemas
109
115
  var prompts_1 = require("./prompts");
110
116
  Object.defineProperty(exports, "PromptArgumentSchema", { enumerable: true, get: function () { return prompts_1.PromptArgumentSchema; } });
@@ -84,4 +84,104 @@ export declare const SessionRetrievalErrorSchema: z.ZodObject<{
84
84
  details: z.ZodOptional<z.ZodAny>;
85
85
  }, z.core.$strip>;
86
86
  }, z.core.$strip>;
87
+ /**
88
+ * Session List Endpoint Schemas
89
+ * GET /api/v1/sessions
90
+ * PRD #425: Session List API and SSE Streaming
91
+ */
92
+ /**
93
+ * Query parameters for listing sessions
94
+ */
95
+ export declare const SessionListQuerySchema: z.ZodObject<{
96
+ status: z.ZodOptional<z.ZodString>;
97
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
98
+ offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
99
+ }, z.core.$strip>;
100
+ export type SessionListQuery = z.infer<typeof SessionListQuerySchema>;
101
+ /**
102
+ * Session summary (no finalAnalysis to keep responses lean)
103
+ */
104
+ export declare const SessionSummarySchema: z.ZodObject<{
105
+ sessionId: z.ZodString;
106
+ status: z.ZodOptional<z.ZodString>;
107
+ issue: z.ZodOptional<z.ZodString>;
108
+ mode: z.ZodOptional<z.ZodString>;
109
+ toolName: z.ZodOptional<z.ZodString>;
110
+ createdAt: z.ZodString;
111
+ updatedAt: z.ZodString;
112
+ }, z.core.$strip>;
113
+ export type SessionSummary = z.infer<typeof SessionSummarySchema>;
114
+ /**
115
+ * Session list response data
116
+ */
117
+ export declare const SessionListDataSchema: z.ZodObject<{
118
+ sessions: z.ZodArray<z.ZodObject<{
119
+ sessionId: z.ZodString;
120
+ status: z.ZodOptional<z.ZodString>;
121
+ issue: z.ZodOptional<z.ZodString>;
122
+ mode: z.ZodOptional<z.ZodString>;
123
+ toolName: z.ZodOptional<z.ZodString>;
124
+ createdAt: z.ZodString;
125
+ updatedAt: z.ZodString;
126
+ }, z.core.$strip>>;
127
+ total: z.ZodNumber;
128
+ limit: z.ZodNumber;
129
+ offset: z.ZodNumber;
130
+ }, z.core.$strip>;
131
+ export type SessionListData = z.infer<typeof SessionListDataSchema>;
132
+ export declare const SessionListResponseSchema: z.ZodObject<{
133
+ success: z.ZodLiteral<true>;
134
+ data: z.ZodObject<{
135
+ sessions: z.ZodArray<z.ZodObject<{
136
+ sessionId: z.ZodString;
137
+ status: z.ZodOptional<z.ZodString>;
138
+ issue: z.ZodOptional<z.ZodString>;
139
+ mode: z.ZodOptional<z.ZodString>;
140
+ toolName: z.ZodOptional<z.ZodString>;
141
+ createdAt: z.ZodString;
142
+ updatedAt: z.ZodString;
143
+ }, z.core.$strip>>;
144
+ total: z.ZodNumber;
145
+ limit: z.ZodNumber;
146
+ offset: z.ZodNumber;
147
+ }, z.core.$strip>;
148
+ meta: z.ZodOptional<z.ZodObject<{
149
+ timestamp: z.ZodString;
150
+ requestId: z.ZodOptional<z.ZodString>;
151
+ version: z.ZodString;
152
+ }, z.core.$strip>>;
153
+ }, z.core.$strip>;
154
+ export type SessionListResponse = z.infer<typeof SessionListResponseSchema>;
155
+ export declare const SessionListErrorSchema: z.ZodObject<{
156
+ success: z.ZodLiteral<false>;
157
+ meta: z.ZodOptional<z.ZodObject<{
158
+ timestamp: z.ZodString;
159
+ requestId: z.ZodOptional<z.ZodString>;
160
+ version: z.ZodString;
161
+ }, z.core.$strip>>;
162
+ error: z.ZodObject<{
163
+ code: z.ZodLiteral<"SESSION_LIST_ERROR">;
164
+ message: z.ZodString;
165
+ details: z.ZodOptional<z.ZodAny>;
166
+ }, z.core.$strip>;
167
+ }, z.core.$strip>;
168
+ /**
169
+ * SSE Streaming Endpoint Schema
170
+ * GET /api/v1/events/remediations
171
+ * PRD #425: Real-time remediation session events via Server-Sent Events
172
+ */
173
+ export declare const RemediationSSEEventSchema: z.ZodObject<{
174
+ event: z.ZodEnum<{
175
+ "session-created": "session-created";
176
+ "session-updated": "session-updated";
177
+ }>;
178
+ data: z.ZodObject<{
179
+ sessionId: z.ZodString;
180
+ toolName: z.ZodString;
181
+ status: z.ZodString;
182
+ issue: z.ZodString;
183
+ timestamp: z.ZodString;
184
+ }, z.core.$strip>;
185
+ }, z.core.$strip>;
186
+ export type RemediationSSEEvent = z.infer<typeof RemediationSSEEventSchema>;
87
187
  //# sourceMappingURL=sessions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/interfaces/schemas/sessions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;iBAIhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;iBAId,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;iBAKpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;iBAAyD,CAAC;AAE5F,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;iBAMrC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;iBAMtC,CAAC"}
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/interfaces/schemas/sessions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;iBAIhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;iBAId,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;iBAKpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;iBAAyD,CAAC;AAE5F,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;iBAMrC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;iBAMtC,CAAC;AAEH;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;iBAIjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;iBAQ/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;iBAKhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;iBAAqD,CAAC;AAE5F,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;iBAMjC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;iBASoD,CAAC;AAE3F,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -6,7 +6,7 @@
6
6
  * PRD #354: REST API Route Registry with Auto-Generated OpenAPI and Test Fixtures
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.SessionRetrievalErrorSchema = exports.SessionNotFoundErrorSchema = exports.SessionResponseSchema = exports.SessionResponseDataSchema = exports.SessionDataSchema = exports.SessionMetadataSchema = void 0;
9
+ exports.RemediationSSEEventSchema = exports.SessionListErrorSchema = exports.SessionListResponseSchema = exports.SessionListDataSchema = exports.SessionSummarySchema = exports.SessionListQuerySchema = exports.SessionRetrievalErrorSchema = exports.SessionNotFoundErrorSchema = exports.SessionResponseSchema = exports.SessionResponseDataSchema = exports.SessionDataSchema = exports.SessionMetadataSchema = void 0;
10
10
  const zod_1 = require("zod");
11
11
  const common_1 = require("./common");
12
12
  /**
@@ -54,3 +54,60 @@ exports.SessionRetrievalErrorSchema = common_1.InternalServerErrorSchema.extend(
54
54
  details: zod_1.z.any().optional(),
55
55
  }),
56
56
  });
57
+ /**
58
+ * Session List Endpoint Schemas
59
+ * GET /api/v1/sessions
60
+ * PRD #425: Session List API and SSE Streaming
61
+ */
62
+ /**
63
+ * Query parameters for listing sessions
64
+ */
65
+ exports.SessionListQuerySchema = zod_1.z.object({
66
+ status: zod_1.z.string().optional().describe('Filter by session status (e.g., analysis_complete, failed, investigating)'),
67
+ limit: zod_1.z.coerce.number().int().min(1).max(200).default(50).describe('Max results per page'),
68
+ offset: zod_1.z.coerce.number().int().min(0).default(0).describe('Pagination offset'),
69
+ });
70
+ /**
71
+ * Session summary (no finalAnalysis to keep responses lean)
72
+ */
73
+ exports.SessionSummarySchema = zod_1.z.object({
74
+ sessionId: zod_1.z.string().describe('Session ID'),
75
+ status: zod_1.z.string().optional().describe('Session status'),
76
+ issue: zod_1.z.string().optional().describe('Issue being investigated'),
77
+ mode: zod_1.z.string().optional().describe('Remediation mode (manual/automatic)'),
78
+ toolName: zod_1.z.string().optional().describe('Tool that created this session'),
79
+ createdAt: zod_1.z.string().describe('Session creation timestamp'),
80
+ updatedAt: zod_1.z.string().describe('Session last update timestamp'),
81
+ });
82
+ /**
83
+ * Session list response data
84
+ */
85
+ exports.SessionListDataSchema = zod_1.z.object({
86
+ sessions: zod_1.z.array(exports.SessionSummarySchema).describe('List of session summaries'),
87
+ total: zod_1.z.number().describe('Total number of sessions matching the filter'),
88
+ limit: zod_1.z.number().describe('Max results per page'),
89
+ offset: zod_1.z.number().describe('Pagination offset'),
90
+ });
91
+ exports.SessionListResponseSchema = (0, common_1.createSuccessResponseSchema)(exports.SessionListDataSchema);
92
+ exports.SessionListErrorSchema = common_1.InternalServerErrorSchema.extend({
93
+ error: zod_1.z.object({
94
+ code: zod_1.z.literal('SESSION_LIST_ERROR'),
95
+ message: zod_1.z.string(),
96
+ details: zod_1.z.any().optional(),
97
+ }),
98
+ });
99
+ /**
100
+ * SSE Streaming Endpoint Schema
101
+ * GET /api/v1/events/remediations
102
+ * PRD #425: Real-time remediation session events via Server-Sent Events
103
+ */
104
+ exports.RemediationSSEEventSchema = zod_1.z.object({
105
+ event: zod_1.z.enum(['session-created', 'session-updated']).describe('SSE event type'),
106
+ data: zod_1.z.object({
107
+ sessionId: zod_1.z.string().describe('Session ID'),
108
+ toolName: zod_1.z.string().describe('Tool that owns the session'),
109
+ status: zod_1.z.string().describe('Current session status'),
110
+ issue: zod_1.z.string().describe('Issue being investigated'),
111
+ timestamp: zod_1.z.string().describe('Event timestamp'),
112
+ }),
113
+ }).describe('SSE event for remediation session changes (Content-Type: text/event-stream)');
@@ -1 +1 @@
1
- {"version":3,"file":"impact-analysis.d.ts","sourceRoot":"","sources":["../../src/tools/impact-analysis.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAMvD,eAAO,MAAM,yBAAyB,oBAAoB,CAAC;AAC3D,eAAO,MAAM,gCAAgC,qXAAiX,CAAC;AAG/Z,eAAO,MAAM,iCAAiC;;;CAO7C,CAAC;AAGF,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD;AA2ED;;GAEG;AACH,UAAU,sBAAsB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,sBAAsB,EAC5B,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAoJ7D"}
1
+ {"version":3,"file":"impact-analysis.d.ts","sourceRoot":"","sources":["../../src/tools/impact-analysis.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAMvD,eAAO,MAAM,yBAAyB,oBAAoB,CAAC;AAC3D,eAAO,MAAM,gCAAgC,qXAAiX,CAAC;AAG/Z,eAAO,MAAM,iCAAiC;;;CAO7C,CAAC;AAGF,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD;AA2ED;;GAEG;AACH,UAAU,sBAAsB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,sBAAsB,EAC5B,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAyJ7D"}
@@ -150,6 +150,10 @@ async function handleImpactAnalysisTool(args, pluginManager) {
150
150
  },
151
151
  interaction_id: args.interaction_id
152
152
  });
153
+ // Guard: if the AI call did not succeed, surface the real error instead of trying to parse
154
+ if (result.status && result.status !== 'success') {
155
+ throw new Error(`Impact analysis ${result.status}: ${result.finalMessage}`);
156
+ }
153
157
  // Parse AI response
154
158
  const { safe, summary } = parseImpactAnalysis(result.finalMessage);
155
159
  // Extract tools used from execution record
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/tools/query.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,OAAO,EAIL,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAK/B,eAAO,MAAM,eAAe,UAAU,CAAC;AACvC,eAAO,MAAM,sBAAsB,iWAAuV,CAAC;AAG3X,eAAO,MAAM,uBAAuB;;;CAGnC,CAAC;AAGF,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,KAAK,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC,CAAC;IAEH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAGD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD;AAgED;;;;;GAKG;AACH,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,aAAa,EACnB,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,WAAW,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAwN3E"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/tools/query.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,OAAO,EAIL,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAK/B,eAAO,MAAM,eAAe,UAAU,CAAC;AACvC,eAAO,MAAM,sBAAsB,iWAAuV,CAAC;AAG3X,eAAO,MAAM,uBAAuB;;;CAGnC,CAAC;AAGF,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,KAAK,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC,CAAC;IAEH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAGD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD;AAgED;;;;;GAKG;AACH,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,aAAa,EACnB,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,WAAW,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAkO3E"}
@@ -175,6 +175,10 @@ async function handleQueryTool(args, pluginManager) {
175
175
  toolsUsed,
176
176
  visualizationMode
177
177
  });
178
+ // Guard: if the AI call did not succeed, surface the real error instead of trying to parse
179
+ if (result.status && result.status !== 'success') {
180
+ throw error_handling_1.ErrorHandler.createError(error_handling_1.ErrorCategory.AI_SERVICE, error_handling_1.ErrorSeverity.HIGH, `Query ${result.status}: ${result.finalMessage}`, { operation: 'query_tool_execution', component: 'QueryTool', isRetryable: true, requestId, input: { intent } });
181
+ }
178
182
  // Handle visualization mode - return visualization response with sessionId for caching
179
183
  if (visualizationMode) {
180
184
  const visualizationResponse = (0, visualization_1.parseVisualizationResponse)(result.finalMessage, toolsUsed);
@@ -1 +1 @@
1
- {"version":3,"file":"remediate.d.ts","sourceRoot":"","sources":["../../src/tools/remediate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remediate.d.ts","sourceRoot":"","sources":["../../src/tools/remediate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,OAAO,EAEL,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AA8B/B,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,0BAA0B,yfACgd,CAAC;AAGxf,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;CAsDvC,CAAC;AAGF,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAID,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,MAAM,EACF,eAAe,GACf,mBAAmB,GACnB,QAAQ,GACR,uBAAuB,GACvB,sBAAsB,GACtB,WAAW,CAAC;IAChB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;CACtC;AAGD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,oBAAoB,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,KAAK,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC,CAAC;KACJ,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,wBAAwB,GAAG,oBAAoB,CAAC;IAC/E,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;IACF,QAAQ,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;IACF,WAAW,EAAE;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAC7B,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;KACjC,CAAC;IAEF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC9B,WAAW,CAAC,EAAE;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;CACH;AAID;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChD;AAgQD;;GAEG;AACH,UAAU,uBAAuB;IAC/B,WAAW,EAAE,QAAQ,GAAG,UAAU,GAAG,cAAc,CAAC;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAC7B,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;KACjC,CAAC;IACF,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,GACjB,uBAAuB,CAyHzB;AAimBD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,qBAAqB,CAAC,CAqRhC"}
@@ -51,6 +51,7 @@ const fs = __importStar(require("fs"));
51
51
  const path = __importStar(require("path"));
52
52
  const request_context_1 = require("../interfaces/request-context");
53
53
  const rbac_1 = require("../core/rbac");
54
+ const session_events_1 = require("../core/session-events");
54
55
  const internal_tools_1 = require("../core/internal-tools");
55
56
  // PRD #143 Milestone 1: Hybrid approach - AI can use kubectl_api_resources tool OR continue with JSON dataRequests
56
57
  // Tool metadata for direct MCP registration
@@ -194,6 +195,10 @@ async function conductInvestigation(session, sessionManager, aiProvider, logger,
194
195
  toolCallsExecuted: result.toolCallsExecuted.length,
195
196
  responseLength: result.finalMessage.length,
196
197
  });
198
+ // Guard: if the AI call did not succeed, surface the real error instead of trying to parse
199
+ if (result.status && result.status !== 'success') {
200
+ throw new Error(`Remediation investigation ${result.status}: ${result.finalMessage}`);
201
+ }
197
202
  // Parse final response as JSON (AI returns final analysis in JSON format)
198
203
  const finalAnalysis = parseAIFinalAnalysis(result.finalMessage);
199
204
  // Build RemediateOutput from parsed analysis
@@ -256,6 +261,13 @@ async function conductInvestigation(session, sessionManager, aiProvider, logger,
256
261
  finalAnalysis: output,
257
262
  status: 'analysis_complete',
258
263
  });
264
+ (0, session_events_1.getSessionEventBus)().publish(session_events_1.SESSION_EVENTS.SESSION_UPDATED, {
265
+ sessionId: session.sessionId,
266
+ toolName: 'remediate',
267
+ status: 'analysis_complete',
268
+ issue: session.data.issue,
269
+ timestamp: new Date().toISOString(),
270
+ });
259
271
  logger.info('Investigation and analysis completed', {
260
272
  requestId,
261
273
  sessionId: session.sessionId,
@@ -271,6 +283,13 @@ async function conductInvestigation(session, sessionManager, aiProvider, logger,
271
283
  });
272
284
  // Mark session as failed
273
285
  sessionManager.updateSession(session.sessionId, { status: 'failed' });
286
+ (0, session_events_1.getSessionEventBus)().publish(session_events_1.SESSION_EVENTS.SESSION_UPDATED, {
287
+ sessionId: session.sessionId,
288
+ toolName: 'remediate',
289
+ status: 'failed',
290
+ issue: session.data.issue,
291
+ timestamp: new Date().toISOString(),
292
+ });
274
293
  throw error_handling_1.ErrorHandler.createError(error_handling_1.ErrorCategory.AI_SERVICE, error_handling_1.ErrorSeverity.HIGH, `Investigation failed: ${error instanceof Error ? error.message : 'Unknown error'}`, {
275
294
  operation: 'investigation_loop',
276
295
  component: 'RemediateTool',
@@ -766,6 +785,13 @@ IMPORTANT: You MUST respond with the final JSON analysis format as specified in
766
785
  status: overallSuccess ? 'executed_successfully' : 'executed_with_errors',
767
786
  executionResults: results,
768
787
  });
788
+ (0, session_events_1.getSessionEventBus)().publish(session_events_1.SESSION_EVENTS.SESSION_UPDATED, {
789
+ sessionId: session.sessionId,
790
+ toolName: 'remediate',
791
+ status: overallSuccess ? 'executed_successfully' : 'executed_with_errors',
792
+ issue: session.data.issue,
793
+ timestamp: new Date().toISOString(),
794
+ });
769
795
  const hasOnlyGitOps = executedCommandCount === 0 && pullRequestInfo !== undefined;
770
796
  const prInfo = pullRequestInfo;
771
797
  let nextSteps;
@@ -921,6 +947,13 @@ async function handleRemediateTool(args) {
921
947
  interaction_id: validatedInput.interaction_id,
922
948
  status: 'investigating',
923
949
  });
950
+ (0, session_events_1.getSessionEventBus)().publish(session_events_1.SESSION_EVENTS.SESSION_CREATED, {
951
+ sessionId: session.sessionId,
952
+ toolName: 'remediate',
953
+ status: 'investigating',
954
+ issue: validatedInput.issue,
955
+ timestamp: session.createdAt,
956
+ });
924
957
  logger.info('Investigation session created', {
925
958
  requestId,
926
959
  sessionId: session.sessionId,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vfarcic/dot-ai",
3
- "version": "1.13.0",
3
+ "version": "1.14.1",
4
4
  "description": "AI-powered development productivity platform that enhances software development workflows through intelligent automation and AI-driven assistance",
5
5
  "mcpName": "io.github.vfarcic/dot-ai",
6
6
  "main": "dist/index.js",