@vibe-validate/extractors 0.17.4 → 0.17.5

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 (134) hide show
  1. package/dist/extractor-registry.d.ts.map +1 -1
  2. package/dist/extractor-registry.js +8 -8
  3. package/dist/extractor-registry.js.map +1 -1
  4. package/dist/extractors/ava/index.d.ts.map +1 -1
  5. package/dist/extractors/ava/index.js +15 -14
  6. package/dist/extractors/ava/index.js.map +1 -1
  7. package/dist/extractors/ava/index.test.js +30 -20
  8. package/dist/extractors/ava/index.test.js.map +1 -1
  9. package/dist/extractors/eslint/index.d.ts.map +1 -1
  10. package/dist/extractors/eslint/index.js +1 -1
  11. package/dist/extractors/eslint/index.js.map +1 -1
  12. package/dist/extractors/eslint/index.test.js.map +1 -1
  13. package/dist/extractors/generic/index.test.js.map +1 -1
  14. package/dist/extractors/jasmine/index.test.js.map +1 -1
  15. package/dist/extractors/jest/index.d.ts.map +1 -1
  16. package/dist/extractors/jest/index.js.map +1 -1
  17. package/dist/extractors/jest/index.test.js.map +1 -1
  18. package/dist/extractors/junit/index.d.ts.map +1 -1
  19. package/dist/extractors/junit/index.js +5 -5
  20. package/dist/extractors/junit/index.js.map +1 -1
  21. package/dist/extractors/junit/index.test.js.map +1 -1
  22. package/dist/extractors/maven-checkstyle/index.d.ts.map +1 -1
  23. package/dist/extractors/maven-checkstyle/index.js +1 -1
  24. package/dist/extractors/maven-checkstyle/index.js.map +1 -1
  25. package/dist/extractors/maven-checkstyle/index.test.js +2 -2
  26. package/dist/extractors/maven-checkstyle/index.test.js.map +1 -1
  27. package/dist/extractors/maven-compiler/index.d.ts.map +1 -1
  28. package/dist/extractors/maven-compiler/index.js +1 -1
  29. package/dist/extractors/maven-compiler/index.js.map +1 -1
  30. package/dist/extractors/maven-compiler/index.test.js +1 -1
  31. package/dist/extractors/maven-compiler/index.test.js.map +1 -1
  32. package/dist/extractors/maven-surefire/index.d.ts.map +1 -1
  33. package/dist/extractors/maven-surefire/index.js.map +1 -1
  34. package/dist/extractors/maven-surefire/index.test.js.map +1 -1
  35. package/dist/extractors/mocha/index.test.js.map +1 -1
  36. package/dist/extractors/playwright/index.test.js.map +1 -1
  37. package/dist/extractors/tap/index.test.js +2 -2
  38. package/dist/extractors/tap/index.test.js.map +1 -1
  39. package/dist/extractors/typescript/index.d.ts.map +1 -1
  40. package/dist/extractors/typescript/index.js +16 -19
  41. package/dist/extractors/typescript/index.js.map +1 -1
  42. package/dist/extractors/typescript/index.test.js.map +1 -1
  43. package/dist/extractors/vitest/index.d.ts.map +1 -1
  44. package/dist/extractors/vitest/index.js +16 -7
  45. package/dist/extractors/vitest/index.js.map +1 -1
  46. package/dist/extractors/vitest/index.test.js +38 -0
  47. package/dist/extractors/vitest/index.test.js.map +1 -1
  48. package/dist/plugin-loader.d.ts.map +1 -1
  49. package/dist/plugin-loader.js +1 -1
  50. package/dist/plugin-loader.js.map +1 -1
  51. package/dist/result-schema-export.d.ts.map +1 -1
  52. package/dist/result-schema-export.js.map +1 -1
  53. package/dist/result-schema.d.ts.map +1 -1
  54. package/dist/result-schema.js +1 -1
  55. package/dist/result-schema.js.map +1 -1
  56. package/dist/sandboxed-extractor.d.ts +1 -1
  57. package/dist/sandboxed-extractor.d.ts.map +1 -1
  58. package/dist/sandboxed-extractor.js.map +1 -1
  59. package/dist/scripts/generate-result-schema.js +1 -1
  60. package/dist/scripts/generate-result-schema.js.map +1 -1
  61. package/dist/smart-extractor.d.ts.map +1 -1
  62. package/dist/smart-extractor.js.map +1 -1
  63. package/dist/utils/guidance-generator.d.ts.map +1 -1
  64. package/dist/utils/guidance-generator.js +4 -7
  65. package/dist/utils/guidance-generator.js.map +1 -1
  66. package/dist/utils/test-framework-utils.d.ts.map +1 -1
  67. package/dist/utils/test-framework-utils.js.map +1 -1
  68. package/dist/utils.js +1 -1
  69. package/dist/utils.js.map +1 -1
  70. package/package.json +8 -8
  71. package/dist/ava-extractor.d.ts +0 -24
  72. package/dist/ava-extractor.d.ts.map +0 -1
  73. package/dist/ava-extractor.js +0 -343
  74. package/dist/ava-extractor.js.map +0 -1
  75. package/dist/eslint-extractor.d.ts +0 -25
  76. package/dist/eslint-extractor.d.ts.map +0 -1
  77. package/dist/eslint-extractor.js +0 -145
  78. package/dist/eslint-extractor.js.map +0 -1
  79. package/dist/generic-extractor.d.ts +0 -35
  80. package/dist/generic-extractor.d.ts.map +0 -1
  81. package/dist/generic-extractor.js +0 -128
  82. package/dist/generic-extractor.js.map +0 -1
  83. package/dist/jasmine-extractor.d.ts +0 -23
  84. package/dist/jasmine-extractor.d.ts.map +0 -1
  85. package/dist/jasmine-extractor.js +0 -151
  86. package/dist/jasmine-extractor.js.map +0 -1
  87. package/dist/jest-extractor.d.ts +0 -29
  88. package/dist/jest-extractor.d.ts.map +0 -1
  89. package/dist/jest-extractor.js +0 -174
  90. package/dist/jest-extractor.js.map +0 -1
  91. package/dist/junit-extractor.d.ts +0 -24
  92. package/dist/junit-extractor.d.ts.map +0 -1
  93. package/dist/junit-extractor.js +0 -193
  94. package/dist/junit-extractor.js.map +0 -1
  95. package/dist/maven-checkstyle-extractor.d.ts +0 -20
  96. package/dist/maven-checkstyle-extractor.d.ts.map +0 -1
  97. package/dist/maven-checkstyle-extractor.js +0 -208
  98. package/dist/maven-checkstyle-extractor.js.map +0 -1
  99. package/dist/maven-compiler-extractor.d.ts +0 -20
  100. package/dist/maven-compiler-extractor.d.ts.map +0 -1
  101. package/dist/maven-compiler-extractor.js +0 -218
  102. package/dist/maven-compiler-extractor.js.map +0 -1
  103. package/dist/maven-surefire-extractor.d.ts +0 -20
  104. package/dist/maven-surefire-extractor.d.ts.map +0 -1
  105. package/dist/maven-surefire-extractor.js +0 -228
  106. package/dist/maven-surefire-extractor.js.map +0 -1
  107. package/dist/mocha-extractor.d.ts +0 -23
  108. package/dist/mocha-extractor.d.ts.map +0 -1
  109. package/dist/mocha-extractor.js +0 -160
  110. package/dist/mocha-extractor.js.map +0 -1
  111. package/dist/playwright-extractor.d.ts +0 -38
  112. package/dist/playwright-extractor.d.ts.map +0 -1
  113. package/dist/playwright-extractor.js +0 -239
  114. package/dist/playwright-extractor.js.map +0 -1
  115. package/dist/sandbox.test.d.ts +0 -8
  116. package/dist/sandbox.test.d.ts.map +0 -1
  117. package/dist/sandbox.test.js +0 -395
  118. package/dist/sandbox.test.js.map +0 -1
  119. package/dist/sandboxed-extractor.test.d.ts +0 -5
  120. package/dist/sandboxed-extractor.test.d.ts.map +0 -1
  121. package/dist/sandboxed-extractor.test.js +0 -346
  122. package/dist/sandboxed-extractor.test.js.map +0 -1
  123. package/dist/tap-extractor.d.ts +0 -24
  124. package/dist/tap-extractor.d.ts.map +0 -1
  125. package/dist/tap-extractor.js +0 -217
  126. package/dist/tap-extractor.js.map +0 -1
  127. package/dist/typescript-extractor.d.ts +0 -25
  128. package/dist/typescript-extractor.d.ts.map +0 -1
  129. package/dist/typescript-extractor.js +0 -96
  130. package/dist/typescript-extractor.js.map +0 -1
  131. package/dist/vitest-extractor.d.ts +0 -38
  132. package/dist/vitest-extractor.d.ts.map +0 -1
  133. package/dist/vitest-extractor.js +0 -540
  134. package/dist/vitest-extractor.js.map +0 -1
@@ -1,193 +0,0 @@
1
- /**
2
- * JUnit XML Error Extractor
3
- *
4
- * Parses JUnit XML test reports and formats failures for LLM consumption.
5
- * Supports Vitest, Jest, and other test frameworks that output JUnit XML.
6
- *
7
- * @package @vibe-validate/extractors
8
- */
9
- import { formatCleanOutput } from './utils/formatter-utils.js';
10
- import { generateGuidanceFromPatterns } from './utils/guidance-generator.js';
11
- /**
12
- * Extract errors from JUnit XML test output
13
- *
14
- * @param output - JUnit XML string
15
- * @returns Structured error information
16
- *
17
- * @example
18
- * ```typescript
19
- * const junitXml = fs.readFileSync('junit.xml', 'utf-8');
20
- * const result = extractJUnitErrors(junitXml);
21
- * console.log(result.summary); // "5 test(s) failed"
22
- * ```
23
- */
24
- export function extractJUnitErrors(output) {
25
- // Note: ANSI codes are stripped centrally in smart-extractor.ts
26
- // Try to parse XML
27
- let isValidXml = false;
28
- try {
29
- // Simple XML parsing - look for <testsuite> and <testcase> elements
30
- isValidXml = parseSimpleXML(output);
31
- }
32
- catch (error) {
33
- const errorMsg = error instanceof Error ? error.message : String(error);
34
- return {
35
- summary: `Unable to parse JUnit XML - invalid format: ${errorMsg}`,
36
- errors: [],
37
- totalErrors: 0,
38
- errorSummary: output.trim(),
39
- guidance: 'Ensure the input is valid JUnit XML format',
40
- metadata: {
41
- confidence: 0,
42
- completeness: 0,
43
- issues: ['Failed to parse XML']
44
- }
45
- };
46
- }
47
- if (!isValidXml) {
48
- return {
49
- summary: '0 test(s) failed',
50
- errors: [],
51
- totalErrors: 0,
52
- errorSummary: '',
53
- guidance: '',
54
- metadata: {
55
- confidence: 100,
56
- completeness: 100,
57
- issues: []
58
- }
59
- };
60
- }
61
- // Extract all failure elements
62
- const failures = extractFailures(output);
63
- const errors = [];
64
- let completeCount = 0;
65
- for (const failure of failures) {
66
- const file = failure.file ?? 'unknown';
67
- const location = failure.location ?? `${file}:0`;
68
- const message = failure.message ?? 'Test failed';
69
- const context = failure.testName ?? '';
70
- const isComplete = file !== 'unknown' && failure.location && message;
71
- if (isComplete) {
72
- completeCount++;
73
- }
74
- // Parse location to get line/column (only if location exists)
75
- let line;
76
- if (location) {
77
- const locationParts = location.split(':');
78
- line = locationParts[1] ? Number.parseInt(locationParts[1], 10) : undefined;
79
- }
80
- errors.push({
81
- file,
82
- line,
83
- message: decodeHtmlEntities(message),
84
- context: decodeHtmlEntities(context)
85
- });
86
- }
87
- // Generate summary
88
- const failureCount = failures.length;
89
- const summary = `${failureCount} test(s) failed`;
90
- // Generate guidance based on error types
91
- const guidance = generateGuidanceFromPatterns(failures);
92
- // Calculate quality metadata
93
- const completeness = failures.length > 0 ? (completeCount / failures.length) * 100 : 100;
94
- const confidence = failures.length > 0 ? 95 : 100; // High confidence for JUnit XML
95
- const metadata = {
96
- confidence,
97
- completeness,
98
- issues: []
99
- };
100
- return {
101
- summary,
102
- errors,
103
- totalErrors: failures.length,
104
- errorSummary: formatCleanOutput(errors),
105
- guidance,
106
- metadata
107
- };
108
- }
109
- /**
110
- * Simple XML parser for JUnit format
111
- * (We avoid full XML parsers to minimize dependencies)
112
- */
113
- function parseSimpleXML(xml) {
114
- // Check if it contains testsuite elements
115
- if (!xml.includes('<testsuite') && !xml.includes('<testsuites')) {
116
- throw new Error('Not JUnit XML format');
117
- }
118
- // Validate basic XML structure
119
- if (!xml.includes('<?xml') && !xml.includes('<testsuite')) {
120
- throw new Error('Invalid XML structure');
121
- }
122
- // Return that XML is valid
123
- return true;
124
- }
125
- /**
126
- * Extract attribute value from XML tag
127
- */
128
- function extractXmlAttribute(tag, attrName) {
129
- const idx = tag.indexOf(`${attrName}="`);
130
- if (idx === -1)
131
- return undefined;
132
- const start = idx + `${attrName}="`.length;
133
- const end = tag.indexOf('"', start);
134
- return tag.substring(start, end);
135
- }
136
- function extractFailures(xml) {
137
- const failures = [];
138
- const testcasePattern = /<testcase[^>]*>([\s\S]*?)<\/testcase>/g;
139
- let testcaseMatch;
140
- while ((testcaseMatch = testcasePattern.exec(xml)) !== null) {
141
- const testcaseContent = testcaseMatch[0];
142
- const testcaseInner = testcaseMatch[1];
143
- // Skip passing tests
144
- if (!testcaseInner.includes('<failure')) {
145
- continue;
146
- }
147
- // Extract testcase tag attributes
148
- const testcaseTagMatch = /<testcase([^>]*)>/.exec(testcaseContent);
149
- const testcaseTag = testcaseTagMatch ? testcaseTagMatch[1] : '';
150
- const file = extractXmlAttribute(testcaseTag, 'classname');
151
- const testName = extractXmlAttribute(testcaseTag, 'name');
152
- // Extract failure element
153
- const failurePattern = /<failure[^>]*>([\s\S]*?)<\/failure>/;
154
- const failureMatch = failurePattern.exec(testcaseInner);
155
- if (!failureMatch) {
156
- continue;
157
- }
158
- const failureContent = failureMatch[0];
159
- const failureText = failureMatch[1];
160
- // Extract failure attributes
161
- const message = extractXmlAttribute(failureContent, 'message');
162
- const errorType = extractXmlAttribute(failureContent, 'type');
163
- // Extract location from failure text (❯ file:line:column)
164
- const locationPattern = /❯\s+([\w/.-]+):(\d+)(?::\d+)?/;
165
- const locationMatch = locationPattern.exec(failureText);
166
- let location;
167
- let extractedFile;
168
- if (locationMatch) {
169
- extractedFile = locationMatch[1];
170
- location = `${extractedFile}:${locationMatch[2]}`;
171
- }
172
- failures.push({
173
- file: extractedFile ?? file,
174
- location,
175
- message,
176
- testName,
177
- errorType
178
- });
179
- }
180
- return failures;
181
- }
182
- /**
183
- * Decode HTML entities in XML content
184
- */
185
- function decodeHtmlEntities(text) {
186
- return text
187
- .replace(/&gt;/g, '>')
188
- .replace(/&lt;/g, '<')
189
- .replace(/&quot;/g, '"')
190
- .replace(/&apos;/g, "'")
191
- .replace(/&amp;/g, '&'); // Must be last to avoid double-decoding
192
- }
193
- //# sourceMappingURL=junit-extractor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"junit-extractor.js","sourceRoot":"","sources":["../src/junit-extractor.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Maven Checkstyle error extractor
3
- *
4
- * Extracts errors from Maven Checkstyle plugin output.
5
- * Supports both output formats generated by maven-checkstyle-plugin.
6
- */
7
- import type { ErrorExtractorResult } from './types.js';
8
- /**
9
- * Detects if output is from Maven Checkstyle
10
- */
11
- export declare function detectMavenCheckstyle(output: string): {
12
- confidence: number;
13
- patterns: string[];
14
- reason: string;
15
- };
16
- /**
17
- * Extracts Checkstyle violations from Maven output
18
- */
19
- export declare function extractMavenCheckstyle(output: string, command?: string): ErrorExtractorResult;
20
- //# sourceMappingURL=maven-checkstyle-extractor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"maven-checkstyle-extractor.d.ts","sourceRoot":"","sources":["../src/maven-checkstyle-extractor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAkB,MAAM,YAAY,CAAC;AAmCvE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CA+CA;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,GACf,oBAAoB,CAmGtB"}
@@ -1,208 +0,0 @@
1
- /**
2
- * Maven Checkstyle error extractor
3
- *
4
- * Extracts errors from Maven Checkstyle plugin output.
5
- * Supports both output formats generated by maven-checkstyle-plugin.
6
- */
7
- import { MAX_ERRORS_IN_ARRAY } from './result-schema.js';
8
- const CHECKSTYLE_PATTERNS = {
9
- // Format 1: [WARN] /absolute/path:line:col: message [Rule]
10
- // eslint-disable-next-line sonarjs/slow-regex -- Safe: Maven Checkstyle output is structured, limited line length
11
- warnFormat: /^\[WARN\]\s+([^:]+):(\d+):(\d+):\s+(.+?)\s+\[(\w+)\]$/,
12
- // Format 2: [WARNING] relative/path:[line,col] (category) Rule: message
13
- // eslint-disable-next-line sonarjs/slow-regex -- Safe: Maven Checkstyle output is structured, limited line length
14
- warningFormat: /^\[WARNING\]\s+([^:]+):\[(\d+)(?:,(\d+))?\]\s+\((\w+)\)\s+(\w+):\s+(.+)$/,
15
- // Summary line: "You have N Checkstyle violations"
16
- summary: /You have (\d+) Checkstyle violations/,
17
- };
18
- /**
19
- * Detects if output is from Maven Checkstyle
20
- */
21
- export function detectMavenCheckstyle(output) {
22
- const lines = output.split('\n');
23
- let score = 0;
24
- const foundPatterns = [];
25
- // Look for Checkstyle-specific markers
26
- let hasViolationFormat = false;
27
- for (const line of lines) {
28
- if (line.includes('maven-checkstyle-plugin')) {
29
- score += 40;
30
- foundPatterns.push('maven-checkstyle-plugin reference');
31
- }
32
- if (line.includes('Starting audit')) {
33
- score += 20;
34
- foundPatterns.push('Checkstyle audit start marker');
35
- }
36
- if (line.includes('Audit done')) {
37
- score += 20;
38
- foundPatterns.push('Checkstyle audit complete marker');
39
- }
40
- if (CHECKSTYLE_PATTERNS.summary.test(line)) {
41
- score += 30;
42
- foundPatterns.push('Checkstyle violation summary');
43
- }
44
- if (!hasViolationFormat && (CHECKSTYLE_PATTERNS.warnFormat.test(line) || CHECKSTYLE_PATTERNS.warningFormat.test(line))) {
45
- score += 10;
46
- foundPatterns.push('Checkstyle violation format');
47
- hasViolationFormat = true; // Only count once, but don't break - keep looking for other markers
48
- }
49
- }
50
- // Determine reason based on score
51
- let reason;
52
- if (score >= 70) {
53
- reason = 'Maven Checkstyle plugin output detected';
54
- }
55
- else if (score >= 40) {
56
- reason = 'Possible Maven Checkstyle output';
57
- }
58
- else {
59
- reason = 'Not Maven Checkstyle output';
60
- }
61
- return {
62
- confidence: Math.min(score, 100),
63
- patterns: foundPatterns,
64
- reason,
65
- };
66
- }
67
- /**
68
- * Extracts Checkstyle violations from Maven output
69
- */
70
- export function extractMavenCheckstyle(output, command) {
71
- const detection = detectMavenCheckstyle(output);
72
- if (detection.confidence < 40) {
73
- return {
74
- summary: 'Not Maven Checkstyle output',
75
- totalErrors: 0,
76
- errors: [],
77
- metadata: {
78
- detection: {
79
- extractor: 'maven-checkstyle',
80
- confidence: detection.confidence,
81
- patterns: detection.patterns,
82
- reason: detection.reason,
83
- },
84
- confidence: detection.confidence,
85
- completeness: 100,
86
- issues: [],
87
- },
88
- };
89
- }
90
- const violations = [];
91
- const lines = output.split('\n');
92
- for (const line of lines) {
93
- // Try Format 1: [WARN] /path:line:col: message [Rule]
94
- const warnMatch = CHECKSTYLE_PATTERNS.warnFormat.exec(line);
95
- if (warnMatch) {
96
- const [, filePath, lineStr, colStr, message, rule] = warnMatch;
97
- violations.push({
98
- file: extractRelativePath(filePath),
99
- line: Number.parseInt(lineStr, 10),
100
- column: Number.parseInt(colStr, 10),
101
- message: message.trim(),
102
- rule: rule.trim(),
103
- });
104
- continue;
105
- }
106
- // Try Format 2: [WARNING] path:[line,col] (category) Rule: message
107
- const warningMatch = CHECKSTYLE_PATTERNS.warningFormat.exec(line);
108
- if (warningMatch) {
109
- const [, filePath, lineStr, colStr, category, rule, message] = warningMatch;
110
- violations.push({
111
- file: filePath.trim(),
112
- line: Number.parseInt(lineStr, 10),
113
- column: colStr ? Number.parseInt(colStr, 10) : undefined,
114
- message: message.trim(),
115
- rule: rule.trim(),
116
- category: category.trim(),
117
- });
118
- }
119
- }
120
- // Remove duplicates (both formats report same violations)
121
- const uniqueViolations = deduplicateViolations(violations);
122
- // Convert to FormattedError format
123
- const errors = uniqueViolations.slice(0, MAX_ERRORS_IN_ARRAY).map((v) => ({
124
- file: v.file,
125
- line: v.line,
126
- column: v.column,
127
- message: `${v.message} [${v.rule}]`,
128
- }));
129
- // Group by file for summary
130
- const fileGroups = groupByFile(uniqueViolations);
131
- const summary = `${uniqueViolations.length} Checkstyle violation(s) in ${fileGroups.size} file(s)`;
132
- // Generate guidance
133
- const guidance = uniqueViolations.length > 0
134
- ? `Fix Checkstyle violations. Run ${command ?? 'mvn checkstyle:check'} to see all details.`
135
- : undefined;
136
- // Create error summary
137
- const errorSummary = errors.length > 0
138
- ? errors.map((e, i) => `[Error ${i + 1}/${errors.length}] ${e.file}:${e.line}\n${e.message}`).join('\n\n')
139
- : undefined;
140
- return {
141
- summary,
142
- totalErrors: uniqueViolations.length,
143
- errors,
144
- guidance,
145
- errorSummary,
146
- metadata: {
147
- detection: {
148
- extractor: 'maven-checkstyle',
149
- confidence: detection.confidence,
150
- patterns: detection.patterns,
151
- reason: detection.reason,
152
- },
153
- confidence: 100,
154
- completeness: 100,
155
- issues: [],
156
- },
157
- };
158
- }
159
- /**
160
- * Extract relative path from absolute path
161
- * /Users/name/project/src/main/java/Foo.java -> src/main/java/Foo.java
162
- */
163
- function extractRelativePath(absolutePath) {
164
- // Common Java source roots
165
- const sourceRoots = ['src/main/java', 'src/test/java', 'src/main/kotlin', 'src/test/kotlin'];
166
- for (const root of sourceRoots) {
167
- const index = absolutePath.indexOf(root);
168
- if (index !== -1) {
169
- return absolutePath.slice(index);
170
- }
171
- }
172
- // Fallback: return last 3 path segments
173
- const segments = absolutePath.split('/');
174
- return segments.slice(-3).join('/');
175
- }
176
- /**
177
- * Deduplicate violations (both formats report same violations)
178
- */
179
- function deduplicateViolations(violations) {
180
- const seen = new Set();
181
- const unique = [];
182
- for (const v of violations) {
183
- const key = `${v.file}:${v.line}:${v.column}:${v.rule}`;
184
- if (!seen.has(key)) {
185
- seen.add(key);
186
- unique.push(v);
187
- }
188
- }
189
- return unique;
190
- }
191
- /**
192
- * Group violations by file
193
- */
194
- function groupByFile(violations) {
195
- const groups = new Map();
196
- for (const violation of violations) {
197
- const file = violation.file || 'unknown';
198
- if (!groups.has(file)) {
199
- groups.set(file, []);
200
- }
201
- const group = groups.get(file);
202
- if (group) {
203
- group.push(violation);
204
- }
205
- }
206
- return groups;
207
- }
208
- //# sourceMappingURL=maven-checkstyle-extractor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"maven-checkstyle-extractor.js","sourceRoot":"","sources":["../src/maven-checkstyle-extractor.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Maven Compiler error extractor
3
- *
4
- * Extracts Java compilation errors from Maven compiler plugin output.
5
- * Supports output from `mvn compile` and `mvn test` when compilation fails.
6
- */
7
- import type { ErrorExtractorResult } from './types.js';
8
- /**
9
- * Detects if output is from Maven compiler plugin
10
- */
11
- export declare function detectMavenCompiler(output: string): {
12
- confidence: number;
13
- patterns: string[];
14
- reason: string;
15
- };
16
- /**
17
- * Extracts compilation errors from Maven compiler output
18
- */
19
- export declare function extractMavenCompiler(output: string, command?: string): ErrorExtractorResult;
20
- //# sourceMappingURL=maven-compiler-extractor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"maven-compiler-extractor.d.ts","sourceRoot":"","sources":["../src/maven-compiler-extractor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAkB,MAAM,YAAY,CAAC;AA6CvE;;GAEG;AAEH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CA2DA;AAED;;GAEG;AAEH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,GACf,oBAAoB,CAyGtB"}