@vybestack/llxprt-code-core 0.6.2 → 0.7.0-nightly.251207.a6190e71e

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 (92) hide show
  1. package/dist/src/auth/precedence.js +9 -10
  2. package/dist/src/auth/precedence.js.map +1 -1
  3. package/dist/src/auth/types.d.ts +6 -6
  4. package/dist/src/core/geminiChat.d.ts +8 -0
  5. package/dist/src/core/geminiChat.js +63 -5
  6. package/dist/src/core/geminiChat.js.map +1 -1
  7. package/dist/src/core/turn.js +12 -8
  8. package/dist/src/core/turn.js.map +1 -1
  9. package/dist/src/ide/ide-client.js +4 -2
  10. package/dist/src/ide/ide-client.js.map +1 -1
  11. package/dist/src/index.d.ts +1 -0
  12. package/dist/src/index.js +1 -0
  13. package/dist/src/index.js.map +1 -1
  14. package/dist/src/parsers/TextToolCallParser.d.ts +0 -15
  15. package/dist/src/parsers/TextToolCallParser.js +21 -5
  16. package/dist/src/parsers/TextToolCallParser.js.map +1 -1
  17. package/dist/src/providers/BaseProvider.d.ts +3 -0
  18. package/dist/src/providers/BaseProvider.js +11 -0
  19. package/dist/src/providers/BaseProvider.js.map +1 -1
  20. package/dist/src/providers/IProvider.d.ts +3 -0
  21. package/dist/src/providers/ProviderManager.js +6 -0
  22. package/dist/src/providers/ProviderManager.js.map +1 -1
  23. package/dist/src/providers/anthropic/AnthropicProvider.d.ts +0 -1
  24. package/dist/src/providers/anthropic/AnthropicProvider.js +233 -22
  25. package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
  26. package/dist/src/providers/anthropic/schemaConverter.d.ts +63 -0
  27. package/dist/src/providers/anthropic/schemaConverter.js +189 -0
  28. package/dist/src/providers/anthropic/schemaConverter.js.map +1 -0
  29. package/dist/src/providers/gemini/GeminiProvider.js +108 -11
  30. package/dist/src/providers/gemini/GeminiProvider.js.map +1 -1
  31. package/dist/src/providers/gemini/thoughtSignatures.d.ts +51 -0
  32. package/dist/src/providers/gemini/thoughtSignatures.js +189 -0
  33. package/dist/src/providers/gemini/thoughtSignatures.js.map +1 -0
  34. package/dist/src/providers/openai/OpenAIProvider.d.ts +78 -1
  35. package/dist/src/providers/openai/OpenAIProvider.js +1159 -190
  36. package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
  37. package/dist/src/providers/openai/ToolCallNormalizer.d.ts +6 -0
  38. package/dist/src/providers/openai/ToolCallNormalizer.js +16 -2
  39. package/dist/src/providers/openai/ToolCallNormalizer.js.map +1 -1
  40. package/dist/src/providers/openai/schemaConverter.d.ts +67 -0
  41. package/dist/src/providers/openai/schemaConverter.js +191 -0
  42. package/dist/src/providers/openai/schemaConverter.js.map +1 -0
  43. package/dist/src/providers/openai-responses/OpenAIResponsesProvider.d.ts +0 -4
  44. package/dist/src/providers/openai-responses/OpenAIResponsesProvider.js +3 -75
  45. package/dist/src/providers/openai-responses/OpenAIResponsesProvider.js.map +1 -1
  46. package/dist/src/providers/openai-responses/schemaConverter.d.ts +65 -0
  47. package/dist/src/providers/openai-responses/schemaConverter.js +195 -0
  48. package/dist/src/providers/openai-responses/schemaConverter.js.map +1 -0
  49. package/dist/src/providers/openai-vercel/OpenAIVercelProvider.d.ts +146 -0
  50. package/dist/src/providers/openai-vercel/OpenAIVercelProvider.js +1177 -0
  51. package/dist/src/providers/openai-vercel/OpenAIVercelProvider.js.map +1 -0
  52. package/dist/src/providers/openai-vercel/errors.d.ts +46 -0
  53. package/dist/src/providers/openai-vercel/errors.js +137 -0
  54. package/dist/src/providers/openai-vercel/errors.js.map +1 -0
  55. package/dist/src/providers/openai-vercel/index.d.ts +22 -0
  56. package/dist/src/providers/openai-vercel/index.js +23 -0
  57. package/dist/src/providers/openai-vercel/index.js.map +1 -0
  58. package/dist/src/providers/openai-vercel/messageConversion.d.ts +36 -0
  59. package/dist/src/providers/openai-vercel/messageConversion.js +410 -0
  60. package/dist/src/providers/openai-vercel/messageConversion.js.map +1 -0
  61. package/dist/src/providers/openai-vercel/schemaConverter.d.ts +66 -0
  62. package/dist/src/providers/openai-vercel/schemaConverter.js +191 -0
  63. package/dist/src/providers/openai-vercel/schemaConverter.js.map +1 -0
  64. package/dist/src/providers/openai-vercel/toolIdUtils.d.ts +33 -0
  65. package/dist/src/providers/openai-vercel/toolIdUtils.js +117 -0
  66. package/dist/src/providers/openai-vercel/toolIdUtils.js.map +1 -0
  67. package/dist/src/providers/reasoning/reasoningUtils.d.ts +43 -0
  68. package/dist/src/providers/reasoning/reasoningUtils.js +92 -0
  69. package/dist/src/providers/reasoning/reasoningUtils.js.map +1 -0
  70. package/dist/src/providers/utils/localEndpoint.js +6 -2
  71. package/dist/src/providers/utils/localEndpoint.js.map +1 -1
  72. package/dist/src/runtime/AgentRuntimeContext.d.ts +27 -0
  73. package/dist/src/runtime/AgentRuntimeContext.js.map +1 -1
  74. package/dist/src/runtime/createAgentRuntimeContext.js +27 -1
  75. package/dist/src/runtime/createAgentRuntimeContext.js.map +1 -1
  76. package/dist/src/services/history/IContent.d.ts +6 -0
  77. package/dist/src/services/history/IContent.js.map +1 -1
  78. package/dist/src/settings/types.d.ts +1 -1
  79. package/dist/src/tools/IToolFormatter.d.ts +1 -1
  80. package/dist/src/tools/ToolFormatter.js +14 -2
  81. package/dist/src/tools/ToolFormatter.js.map +1 -1
  82. package/dist/src/tools/ToolIdStrategy.d.ts +72 -0
  83. package/dist/src/tools/ToolIdStrategy.js +107 -0
  84. package/dist/src/tools/ToolIdStrategy.js.map +1 -0
  85. package/dist/src/tools/todo-schemas.d.ts +4 -4
  86. package/dist/src/utils/filesearch/ignore.js +3 -2
  87. package/dist/src/utils/filesearch/ignore.js.map +1 -1
  88. package/dist/src/utils/gitIgnoreParser.js +2 -1
  89. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  90. package/dist/src/utils/schemaValidator.js +41 -6
  91. package/dist/src/utils/schemaValidator.js.map +1 -1
  92. package/package.json +3 -1
@@ -0,0 +1,72 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * @plan PLAN-20251205-ISSUE712
8
+ * @description Tool ID strategy module for Kimi K2 and standard ID handling
9
+ *
10
+ * This module provides different strategies for resolving tool call IDs
11
+ * based on the tool format being used. Kimi K2 requires a specific ID format
12
+ * (functions.{name}:{index}) while most other providers use OpenAI-style
13
+ * call_xxx format.
14
+ */
15
+ import type { IContent, ToolCallBlock, ToolResponseBlock } from '../services/history/IContent.js';
16
+ import type { ToolFormat } from './IToolFormatter.js';
17
+ /**
18
+ * Interface for mapping tool IDs to provider-specific formats
19
+ */
20
+ export interface ToolIdMapper {
21
+ /**
22
+ * Resolves a tool call's internal ID to the provider-specific format
23
+ */
24
+ resolveToolCallId(tc: ToolCallBlock): string;
25
+ /**
26
+ * Resolves a tool response's callId to the provider-specific format
27
+ * that matches its corresponding tool call
28
+ */
29
+ resolveToolResponseId(tr: ToolResponseBlock): string;
30
+ }
31
+ /**
32
+ * Interface for creating tool ID mappers based on conversation contents
33
+ */
34
+ export interface ToolIdStrategy {
35
+ /**
36
+ * Creates a mapper that can resolve tool IDs for the given conversation
37
+ */
38
+ createMapper(contents: IContent[]): ToolIdMapper;
39
+ }
40
+ /**
41
+ * Checks if a model name indicates a Kimi K2 model that requires
42
+ * the special functions.{name}:{index} ID format.
43
+ *
44
+ * Uses specific pattern matching to avoid false positives from models
45
+ * that happen to contain 'k2' as part of their name (e.g., "gptk2-turbo").
46
+ *
47
+ * @param model - The model name to check
48
+ * @returns true if this is a K2 model requiring special ID handling
49
+ */
50
+ export declare function isKimiModel(model: string): boolean;
51
+ /**
52
+ * Kimi K2 strategy: Generates IDs in the format functions.{toolName}:{globalIndex}
53
+ *
54
+ * K2 uses a specific ID format where each tool call gets a sequential index
55
+ * based on its position in the conversation. This strategy scans all tool calls
56
+ * and assigns indices, then uses those indices when resolving IDs.
57
+ */
58
+ export declare const kimiStrategy: ToolIdStrategy;
59
+ /**
60
+ * Standard strategy: Converts internal hist_tool_xxx format to OpenAI call_xxx format
61
+ *
62
+ * This is the default strategy used for most providers (OpenAI, Qwen, DeepSeek, etc.)
63
+ * It simply normalizes the internal ID format to the OpenAI format.
64
+ */
65
+ export declare const standardStrategy: ToolIdStrategy;
66
+ /**
67
+ * Gets the appropriate tool ID strategy for a given tool format
68
+ *
69
+ * @param format - The tool format being used
70
+ * @returns The strategy to use for ID resolution
71
+ */
72
+ export declare function getToolIdStrategy(format: ToolFormat): ToolIdStrategy;
@@ -0,0 +1,107 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { normalizeToOpenAIToolId } from '../providers/openai-vercel/toolIdUtils.js';
7
+ /**
8
+ * Checks if a model name indicates a Kimi K2 model that requires
9
+ * the special functions.{name}:{index} ID format.
10
+ *
11
+ * Uses specific pattern matching to avoid false positives from models
12
+ * that happen to contain 'k2' as part of their name (e.g., "gptk2-turbo").
13
+ *
14
+ * @param model - The model name to check
15
+ * @returns true if this is a K2 model requiring special ID handling
16
+ */
17
+ export function isKimiModel(model) {
18
+ const lowerModel = model.toLowerCase();
19
+ // Explicit kimi branding
20
+ if (lowerModel.includes('kimi')) {
21
+ return true;
22
+ }
23
+ // Check for k2 at word boundaries:
24
+ // - starts with k2 (e.g., "k2-0527-preview")
25
+ // - ends with k2 or -k2 (e.g., "model-k2")
26
+ // - has k2 surrounded by non-alphanumeric (e.g., "kimi-k2-chat")
27
+ const k2Pattern = /(?:^|[^a-z0-9])k2(?:[^a-z0-9]|$)/;
28
+ return k2Pattern.test(lowerModel);
29
+ }
30
+ /**
31
+ * Kimi K2 strategy: Generates IDs in the format functions.{toolName}:{globalIndex}
32
+ *
33
+ * K2 uses a specific ID format where each tool call gets a sequential index
34
+ * based on its position in the conversation. This strategy scans all tool calls
35
+ * and assigns indices, then uses those indices when resolving IDs.
36
+ */
37
+ export const kimiStrategy = {
38
+ createMapper(contents) {
39
+ // Build a map of internal ID -> K2 format ID
40
+ const idToK2Id = new Map();
41
+ let globalIndex = 0;
42
+ // Scan all tool calls in the conversation
43
+ for (const content of contents) {
44
+ if (content.speaker !== 'ai')
45
+ continue;
46
+ for (const block of content.blocks) {
47
+ if (isToolCallBlock(block)) {
48
+ const k2Id = `functions.${block.name}:${globalIndex}`;
49
+ idToK2Id.set(block.id, k2Id);
50
+ globalIndex++;
51
+ }
52
+ }
53
+ }
54
+ return {
55
+ resolveToolCallId(tc) {
56
+ return idToK2Id.get(tc.id) ?? `functions.${tc.name}:${globalIndex++}`;
57
+ },
58
+ resolveToolResponseId(tr) {
59
+ // Look up the corresponding tool call's K2 ID
60
+ const k2Id = idToK2Id.get(tr.callId);
61
+ if (k2Id) {
62
+ return k2Id;
63
+ }
64
+ // Fallback: generate a new ID based on the tool name
65
+ // This handles orphan responses or responses to calls not yet seen
66
+ return `functions.${tr.toolName}:${globalIndex++}`;
67
+ },
68
+ };
69
+ },
70
+ };
71
+ /**
72
+ * Standard strategy: Converts internal hist_tool_xxx format to OpenAI call_xxx format
73
+ *
74
+ * This is the default strategy used for most providers (OpenAI, Qwen, DeepSeek, etc.)
75
+ * It simply normalizes the internal ID format to the OpenAI format.
76
+ */
77
+ export const standardStrategy = {
78
+ createMapper(_contents) {
79
+ return {
80
+ resolveToolCallId(tc) {
81
+ return normalizeToOpenAIToolId(tc.id);
82
+ },
83
+ resolveToolResponseId(tr) {
84
+ return normalizeToOpenAIToolId(tr.callId);
85
+ },
86
+ };
87
+ },
88
+ };
89
+ /**
90
+ * Gets the appropriate tool ID strategy for a given tool format
91
+ *
92
+ * @param format - The tool format being used
93
+ * @returns The strategy to use for ID resolution
94
+ */
95
+ export function getToolIdStrategy(format) {
96
+ if (format === 'kimi') {
97
+ return kimiStrategy;
98
+ }
99
+ return standardStrategy;
100
+ }
101
+ /**
102
+ * Type guard for ToolCallBlock
103
+ */
104
+ function isToolCallBlock(block) {
105
+ return block.type === 'tool_call';
106
+ }
107
+ //# sourceMappingURL=ToolIdStrategy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolIdStrategy.js","sourceRoot":"","sources":["../../../src/tools/ToolIdStrategy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmBH,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AA4BpF;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEvC,yBAAyB;IACzB,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mCAAmC;IACnC,6CAA6C;IAC7C,2CAA2C;IAC3C,iEAAiE;IACjE,MAAM,SAAS,GAAG,kCAAkC,CAAC;IACrD,OAAO,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAmB;IAC1C,YAAY,CAAC,QAAoB;QAC/B,6CAA6C;QAC7C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC3C,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,0CAA0C;QAC1C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI;gBAAE,SAAS;YAEvC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnC,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,GAAG,aAAa,KAAK,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;oBACtD,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;oBAC7B,WAAW,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,iBAAiB,CAAC,EAAiB;gBACjC,OAAO,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,aAAa,EAAE,CAAC,IAAI,IAAI,WAAW,EAAE,EAAE,CAAC;YACxE,CAAC;YAED,qBAAqB,CAAC,EAAqB;gBACzC,8CAA8C;gBAC9C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;gBACrC,IAAI,IAAI,EAAE,CAAC;oBACT,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,qDAAqD;gBACrD,mEAAmE;gBACnE,OAAO,aAAa,EAAE,CAAC,QAAQ,IAAI,WAAW,EAAE,EAAE,CAAC;YACrD,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAmB;IAC9C,YAAY,CAAC,SAAqB;QAChC,OAAO;YACL,iBAAiB,CAAC,EAAiB;gBACjC,OAAO,uBAAuB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;YAED,qBAAqB,CAAC,EAAqB;gBACzC,OAAO,uBAAuB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAkB;IAClD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,KAAmB;IAC1C,OAAO,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;AACpC,CAAC"}
@@ -123,7 +123,7 @@ export declare const TodoSchema: z.ZodObject<{
123
123
  id: string;
124
124
  status: "in_progress" | "completed" | "pending";
125
125
  content: string;
126
- priority: "high" | "low" | "medium";
126
+ priority: "low" | "medium" | "high";
127
127
  toolCalls?: {
128
128
  id: string;
129
129
  timestamp: Date;
@@ -144,7 +144,7 @@ export declare const TodoSchema: z.ZodObject<{
144
144
  id: string | number;
145
145
  status: "in_progress" | "completed" | "pending";
146
146
  content: string;
147
- priority: "high" | "low" | "medium";
147
+ priority: "low" | "medium" | "high";
148
148
  toolCalls?: {
149
149
  id: string | number;
150
150
  timestamp: Date;
@@ -225,7 +225,7 @@ export declare const TodoArraySchema: z.ZodArray<z.ZodObject<{
225
225
  id: string;
226
226
  status: "in_progress" | "completed" | "pending";
227
227
  content: string;
228
- priority: "high" | "low" | "medium";
228
+ priority: "low" | "medium" | "high";
229
229
  toolCalls?: {
230
230
  id: string;
231
231
  timestamp: Date;
@@ -246,7 +246,7 @@ export declare const TodoArraySchema: z.ZodArray<z.ZodObject<{
246
246
  id: string | number;
247
247
  status: "in_progress" | "completed" | "pending";
248
248
  content: string;
249
- priority: "high" | "low" | "medium";
249
+ priority: "low" | "medium" | "high";
250
250
  toolCalls?: {
251
251
  id: string | number;
252
252
  timestamp: Date;
@@ -8,6 +8,7 @@ import path from 'node:path';
8
8
  import ignore from 'ignore';
9
9
  import picomatch from 'picomatch';
10
10
  const hasFileExtension = picomatch('**/*[*.]*');
11
+ const createIgnore = ignore;
11
12
  export function loadIgnoreRules(options) {
12
13
  const ignorer = new Ignore();
13
14
  if (options.useGitignore) {
@@ -33,8 +34,8 @@ export function loadIgnoreRules(options) {
33
34
  }
34
35
  export class Ignore {
35
36
  allPatterns = [];
36
- dirIgnorer = ignore();
37
- fileIgnorer = ignore();
37
+ dirIgnorer = createIgnore();
38
+ fileIgnorer = createIgnore();
38
39
  /**
39
40
  * Adds one or more ignore patterns.
40
41
  * @param patterns A single pattern string or an array of pattern strings.
@@ -1 +1 @@
1
- {"version":3,"file":"ignore.js","sourceRoot":"","sources":["../../../../src/utils/filesearch/ignore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ignore.js","sourceRoot":"","sources":["../../../../src/utils/filesearch/ignore.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,10 @@ import * as fs from 'fs';
7
7
  import * as path from 'path';
8
8
  import ignore from 'ignore';
9
9
  import { isGitRepository } from './gitUtils.js';
10
+ const createIgnore = ignore;
10
11
  export class GitIgnoreParser {
11
12
  projectRoot;
12
- ig = ignore();
13
+ ig = createIgnore();
13
14
  patterns = [];
14
15
  constructor(projectRoot) {
15
16
  this.projectRoot = path.resolve(projectRoot);
@@ -1 +1 @@
1
- {"version":3,"file":"gitIgnoreParser.js","sourceRoot":"","sources":["../../../src/utils/gitIgnoreParser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,MAAuB,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAOhD,MAAM,OAAO,eAAe;IAClB,WAAW,CAAS;IACpB,EAAE,GAAW,MAAM,EAAE,CAAC;IACtB,QAAQ,GAAa,EAAE,CAAC;IAEhC,YAAY,WAAmB;QAC7B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC;YAAE,OAAO;QAE/C,gEAAgE;QAChE,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAE3B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QACxD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;QACvC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACjE,CAAC;IAEO,yBAAyB,CAC/B,GAAW,EACX,YAAyB;QAEzB,IAAI,WAAmB,CAAC;QACxB,IAAI,CAAC;YACH,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,IAAI,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAE9B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAEzD,oEAAoE;QACpE,iEAAiE;QACjE,IAAI,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,yDAAyD;QACzD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QACnD,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;QACpE,CAAC;QAED,8BAA8B;QAC9B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC1B,SAAS;gBACX,CAAC;gBACD,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;oBACxB,IAAI,CAAC,yBAAyB,CAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,EAC1B,YAAY,CACb,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,wBAAwB;QAC1B,CAAC;IACH,CAAC;IAED,YAAY,CAAC,gBAAwB;QACnC,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QACvE,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,wBAAwB;YACxB,OAAO;QACT,CAAC;QAED,sFAAsF;QACtF,MAAM,aAAa,GACjB,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,mBAAmB,CAAC;QAC/D,MAAM,eAAe,GAAG,aAAa;YACnC,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAEnC,MAAM,QAAQ,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;aAC7B,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,UAAU,EAAE,CAAC;gBACf,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC;YAED,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,gBAAgB,EAAE,CAAC;gBACrB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC;YAED,+DAA+D;YAC/D,uBAAuB;YACvB,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,eAAe,IAAI,eAAe,KAAK,GAAG,EAAE,CAAC;gBAC/C,kFAAkF;gBAClF,6EAA6E;gBAC7E,+EAA+E;gBAC/E,gFAAgF;gBAEhF,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1C,gEAAgE;oBAChE,gBAAgB;oBAChB,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAClC,CAAC;gBAED,2CAA2C;gBAC3C,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;gBAEpD,sDAAsD;gBACtD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChC,UAAU,GAAG,GAAG,GAAG,UAAU,CAAC;gBAChC,CAAC;YACH,CAAC;YAED,4CAA4C;YAC5C,IAAI,gBAAgB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpD,UAAU,GAAG,GAAG,GAAG,UAAU,CAAC;YAChC,CAAC;YAED,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,GAAG,GAAG,GAAG,UAAU,CAAC;YAChC,CAAC;YAED,mDAAmD;YACnD,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAE5C,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAEO,WAAW,CAAC,QAAkB;QACpC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,QAAgB;QACxB,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC9C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IACE,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;YACzB,QAAQ,KAAK,GAAG;YAChB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EACvB,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAE/D,IAAI,YAAY,KAAK,EAAE,IAAI,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzD,OAAO,KAAK,CAAC;YACf,CAAC;YAED,mDAAmD;YACnD,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAExD,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,cAAc,KAAK,EAAE,EAAE,CAAC;gBAC5D,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF"}
1
+ {"version":3,"file":"gitIgnoreParser.js","sourceRoot":"","sources":["../../../src/utils/gitIgnoreParser.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import AjvPkg from 'ajv';
7
- import * as addFormats from 'ajv-formats';
8
7
  // Ajv's ESM/CJS interop: use 'any' for compatibility as recommended by Ajv docs
9
8
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
9
  const AjvClass = AjvPkg.default || AjvPkg;
@@ -19,9 +18,21 @@ const ajValidator = new AjvClass(
19
18
  // will be logged but the schema will still be considered valid).
20
19
  strictSchema: false,
21
20
  });
22
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
23
- const addFormatsFunc = addFormats.default || addFormats;
24
- addFormatsFunc(ajValidator);
21
+ // Register custom formats used by upstream schemas
22
+ ajValidator.addFormat('google-duration', {
23
+ type: 'string',
24
+ validate: () => true,
25
+ });
26
+ ajValidator.addFormat('google-fieldmask', {
27
+ type: 'string',
28
+ validate: () => true,
29
+ });
30
+ ajValidator.addFormat('something-totally-custom', {
31
+ type: 'string',
32
+ validate: () => true,
33
+ });
34
+ // Ensure date format is available when ajv-formats is not installed
35
+ ajValidator.addFormat('date', /^\d{4}-\d{2}-\d{2}$/);
25
36
  /**
26
37
  * Simple utility to validate objects against JSON Schemas
27
38
  */
@@ -55,9 +66,33 @@ export class SchemaValidator {
55
66
  const validate = ajValidator.compile(ajvSchema);
56
67
  const valid = validate(data);
57
68
  if (!valid && validate.errors) {
58
- const errorText = ajValidator.errorsText(validate.errors, {
59
- dataVar: 'params',
69
+ const formatPath = (path) => {
70
+ if (!path) {
71
+ return 'params';
72
+ }
73
+ const normalized = path
74
+ .replace(/\[(\d+)\]/g, '/$1')
75
+ .replace(/\.+/g, '/')
76
+ .replace(/\/+/g, '/')
77
+ .replace(/^\/+/, '');
78
+ return `params/${normalized}`;
79
+ };
80
+ const formattedErrors = validate.errors.map((err) => {
81
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
82
+ const path = err.instancePath || err.dataPath || '';
83
+ const basePath = formatPath(path);
84
+ const message = err.message ?? 'is invalid';
85
+ return `${basePath} ${message}`;
60
86
  });
87
+ const errorTextRaw = formattedErrors.join('; ');
88
+ let errorText = errorTextRaw?.replace(/\bshould\b/gi, 'must') ?? errorTextRaw;
89
+ if (errorText) {
90
+ errorText = errorText.replace(/must NOT be shorter than (\d+) characters/gi, 'must NOT have fewer than $1 characters');
91
+ if (/anyOf/i.test(errorText) &&
92
+ !/must match a schema in anyOf/i.test(errorText)) {
93
+ errorText = `${errorText}; must match a schema in anyOf`;
94
+ }
95
+ }
61
96
  return errorText;
62
97
  }
63
98
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"schemaValidator.js","sourceRoot":"","sources":["../../../src/utils/schemaValidator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,MAAM,MAAM,KAAK,CAAC;AACzB,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC;AAC1C,gFAAgF;AAChF,8DAA8D;AAC9D,MAAM,QAAQ,GAAI,MAAc,CAAC,OAAO,IAAI,MAAM,CAAC;AACnD,MAAM,WAAW,GAAG,IAAI,QAAQ;AAC9B,2DAA2D;AAC3D;IACE,sEAAsE;IACtE,0EAA0E;IAC1E,uEAAuE;IACvE,oEAAoE;IACpE,yEAAyE;IACzE,iEAAiE;IACjE,YAAY,EAAE,KAAK;CACpB,CACF,CAAC;AACF,8DAA8D;AAC9D,MAAM,cAAc,GAAI,UAAkB,CAAC,OAAO,IAAI,UAAU,CAAC;AACjE,cAAc,CAAC,WAAW,CAAC,CAAC;AAa5B;;GAEG;AACH,MAAM,OAAO,eAAe;IAC1B;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,MAA2B,EAAE,IAAa;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC9C,OAAO,mCAAmC,CAAC;QAC7C,CAAC;QAED,gDAAgD;QAChD,MAAM,SAAS,GAAG,MAAwB,CAAC;QAC3C,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YACzB,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;gBAC9C,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAC5B,CAAC,IAAI,EAAE,EAAE,CACN,IAAgC,CAAC,IAAI,CAAC,KAAK,SAAS;oBACpD,IAAgC,CAAC,IAAI,CAAC,KAAK,IAAI;oBAC/C,IAAgC,CAAC,IAAI,CAAC,KAAK,EAAE,CACjD,CAAC;gBACF,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,yDAAyD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1F,CAAC;YACH,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,MAAM,SAAS,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;QACnC,OAAO,SAAS,CAAC,UAAU,CAAC;QAE5B,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE7B,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE;gBACxD,OAAO,EAAE,QAAQ;aAClB,CAAC,CAAC;YACH,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"schemaValidator.js","sourceRoot":"","sources":["../../../src/utils/schemaValidator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vybestack/llxprt-code-core",
3
- "version": "0.6.2",
3
+ "version": "0.7.0-nightly.251207.a6190e71e",
4
4
  "description": "LLxprt Code Core",
5
5
  "repository": {
6
6
  "type": "git",
@@ -21,6 +21,8 @@
21
21
  "dist"
22
22
  ],
23
23
  "dependencies": {
24
+ "@ai-sdk/openai": "^2.0.74",
25
+ "ai": "^5.0.104",
24
26
  "@anthropic-ai/sdk": "^0.55.1",
25
27
  "@dqbd/tiktoken": "^1.0.21",
26
28
  "@google/genai": "1.16.0",