driftdetect-lsp 0.9.27 → 0.9.28

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 (112) hide show
  1. package/LICENSE +121 -0
  2. package/package.json +15 -15
  3. package/dist/bin/server.d.ts +0 -12
  4. package/dist/bin/server.js +0 -26
  5. package/dist/bin/server.js.map +0 -1
  6. package/dist/capabilities.d.ts +0 -91
  7. package/dist/capabilities.d.ts.map +0 -1
  8. package/dist/capabilities.js +0 -183
  9. package/dist/capabilities.js.map +0 -1
  10. package/dist/commands/approve-pattern.d.ts +0 -15
  11. package/dist/commands/approve-pattern.js +0 -83
  12. package/dist/commands/approve-pattern.js.map +0 -1
  13. package/dist/commands/create-variant.d.ts +0 -22
  14. package/dist/commands/create-variant.js +0 -109
  15. package/dist/commands/create-variant.js.map +0 -1
  16. package/dist/commands/explain-ai.d.ts +0 -11
  17. package/dist/commands/explain-ai.js +0 -144
  18. package/dist/commands/explain-ai.js.map +0 -1
  19. package/dist/commands/fix-ai.d.ts +0 -11
  20. package/dist/commands/fix-ai.js +0 -146
  21. package/dist/commands/fix-ai.js.map +0 -1
  22. package/dist/commands/ignore-once.d.ts +0 -33
  23. package/dist/commands/ignore-once.js +0 -147
  24. package/dist/commands/ignore-once.js.map +0 -1
  25. package/dist/commands/ignore-pattern.d.ts +0 -15
  26. package/dist/commands/ignore-pattern.js +0 -77
  27. package/dist/commands/ignore-pattern.js.map +0 -1
  28. package/dist/commands/index.d.ts +0 -14
  29. package/dist/commands/index.js +0 -14
  30. package/dist/commands/index.js.map +0 -1
  31. package/dist/commands/rescan.d.ts +0 -19
  32. package/dist/commands/rescan.js +0 -125
  33. package/dist/commands/rescan.js.map +0 -1
  34. package/dist/commands/show-patterns.d.ts +0 -30
  35. package/dist/commands/show-patterns.js +0 -175
  36. package/dist/commands/show-patterns.js.map +0 -1
  37. package/dist/commands/show-violations.d.ts +0 -11
  38. package/dist/commands/show-violations.js +0 -259
  39. package/dist/commands/show-violations.js.map +0 -1
  40. package/dist/handlers/code-actions.d.ts +0 -32
  41. package/dist/handlers/code-actions.js +0 -184
  42. package/dist/handlers/code-actions.js.map +0 -1
  43. package/dist/handlers/code-lens.d.ts +0 -32
  44. package/dist/handlers/code-lens.js +0 -162
  45. package/dist/handlers/code-lens.js.map +0 -1
  46. package/dist/handlers/commands.d.ts +0 -48
  47. package/dist/handlers/commands.js +0 -360
  48. package/dist/handlers/commands.js.map +0 -1
  49. package/dist/handlers/diagnostics.d.ts +0 -73
  50. package/dist/handlers/diagnostics.js +0 -259
  51. package/dist/handlers/diagnostics.js.map +0 -1
  52. package/dist/handlers/document-sync.d.ts +0 -37
  53. package/dist/handlers/document-sync.js +0 -49
  54. package/dist/handlers/document-sync.js.map +0 -1
  55. package/dist/handlers/hover.d.ts +0 -30
  56. package/dist/handlers/hover.js +0 -119
  57. package/dist/handlers/hover.js.map +0 -1
  58. package/dist/handlers/index.d.ts +0 -23
  59. package/dist/handlers/index.js +0 -16
  60. package/dist/handlers/index.js.map +0 -1
  61. package/dist/handlers/initialize.d.ts +0 -41
  62. package/dist/handlers/initialize.d.ts.map +0 -1
  63. package/dist/handlers/initialize.js +0 -33
  64. package/dist/handlers/initialize.js.map +0 -1
  65. package/dist/index.d.ts +0 -22
  66. package/dist/index.js +0 -26
  67. package/dist/index.js.map +0 -1
  68. package/dist/integration/core-scanner.d.ts +0 -89
  69. package/dist/integration/core-scanner.js +0 -309
  70. package/dist/integration/core-scanner.js.map +0 -1
  71. package/dist/integration/index.d.ts +0 -11
  72. package/dist/integration/index.js +0 -11
  73. package/dist/integration/index.js.map +0 -1
  74. package/dist/integration/pattern-store-adapter.d.ts +0 -117
  75. package/dist/integration/pattern-store-adapter.js +0 -349
  76. package/dist/integration/pattern-store-adapter.js.map +0 -1
  77. package/dist/integration/types.d.ts +0 -134
  78. package/dist/integration/types.js +0 -39
  79. package/dist/integration/types.js.map +0 -1
  80. package/dist/server/index.d.ts +0 -5
  81. package/dist/server/index.js +0 -5
  82. package/dist/server/index.js.map +0 -1
  83. package/dist/server/types.d.ts +0 -139
  84. package/dist/server/types.js +0 -8
  85. package/dist/server/types.js.map +0 -1
  86. package/dist/server.d.ts +0 -63
  87. package/dist/server.js +0 -208
  88. package/dist/server.js.map +0 -1
  89. package/dist/types/index.d.ts +0 -5
  90. package/dist/types/index.js +0 -5
  91. package/dist/types/index.js.map +0 -1
  92. package/dist/types/lsp-types.d.ts +0 -321
  93. package/dist/types/lsp-types.js +0 -274
  94. package/dist/types/lsp-types.js.map +0 -1
  95. package/dist/utils/diagnostic.d.ts +0 -84
  96. package/dist/utils/diagnostic.js +0 -256
  97. package/dist/utils/diagnostic.js.map +0 -1
  98. package/dist/utils/document.d.ts +0 -40
  99. package/dist/utils/document.d.ts.map +0 -1
  100. package/dist/utils/document.js +0 -138
  101. package/dist/utils/document.js.map +0 -1
  102. package/dist/utils/index.d.ts +0 -8
  103. package/dist/utils/index.d.ts.map +0 -1
  104. package/dist/utils/index.js +0 -8
  105. package/dist/utils/index.js.map +0 -1
  106. package/dist/utils/position.d.ts +0 -44
  107. package/dist/utils/position.d.ts.map +0 -1
  108. package/dist/utils/position.js +0 -96
  109. package/dist/utils/position.js.map +0 -1
  110. package/dist/utils/workspace.d.ts +0 -98
  111. package/dist/utils/workspace.js +0 -241
  112. package/dist/utils/workspace.js.map +0 -1
@@ -1,77 +0,0 @@
1
- /**
2
- * Ignore Pattern Command - drift.ignorePattern
3
- * @requirements 28.2
4
- */
5
- /**
6
- * Execute ignore pattern command
7
- * Marks a pattern as ignored, suppressing all violations for that pattern
8
- */
9
- export async function executeIgnorePattern(context, patternId) {
10
- const { state, logger, connection } = context;
11
- if (!patternId) {
12
- return {
13
- success: false,
14
- error: 'Pattern ID is required',
15
- };
16
- }
17
- logger.info(`Ignoring pattern: ${patternId}`);
18
- // TODO: Integrate with driftdetect-core pattern store to persist ignore
19
- // For now, we'll update the in-memory state
20
- // Remove violations for this pattern from all documents
21
- let removedCount = 0;
22
- for (const [uri, violations] of state.violations) {
23
- const filtered = violations.filter((v) => v.patternId !== patternId);
24
- const removed = violations.length - filtered.length;
25
- if (removed > 0) {
26
- state.violations.set(uri, filtered);
27
- removedCount += removed;
28
- // Update diagnostics for this document
29
- const diagnostics = state.diagnostics.get(uri);
30
- if (diagnostics) {
31
- const filteredDiagnostics = diagnostics.filter((diag) => diag.patternId !== patternId);
32
- state.diagnostics.set(uri, filteredDiagnostics);
33
- // Publish updated diagnostics
34
- connection.sendDiagnostics({
35
- uri,
36
- diagnostics: filteredDiagnostics.map((diag) => ({
37
- range: diag.range,
38
- severity: diag.severity === 'error' ? 1 : diag.severity === 'warning' ? 2 : diag.severity === 'info' ? 3 : 4,
39
- code: diag.code,
40
- source: diag.source,
41
- message: diag.message,
42
- })),
43
- });
44
- }
45
- }
46
- }
47
- // Show notification
48
- connection.window.showInformationMessage(`Pattern "${patternId}" ignored. ${removedCount} violation${removedCount === 1 ? '' : 's'} suppressed.`);
49
- logger.info(`Pattern ignored: ${patternId}, suppressed ${removedCount} violations`);
50
- return {
51
- success: true,
52
- message: `Pattern "${patternId}" ignored`,
53
- data: {
54
- patternId,
55
- suppressedViolations: removedCount,
56
- },
57
- };
58
- }
59
- /**
60
- * Ignore multiple patterns at once
61
- */
62
- export async function executeIgnorePatterns(context, patternIds) {
63
- const results = [];
64
- for (const patternId of patternIds) {
65
- const result = await executeIgnorePattern(context, patternId);
66
- if (result.success && result.data) {
67
- results.push(result.data);
68
- }
69
- }
70
- const totalSuppressed = results.reduce((sum, r) => sum + r.suppressedViolations, 0);
71
- return {
72
- success: true,
73
- message: `Ignored ${results.length} patterns, suppressed ${totalSuppressed} violations`,
74
- data: { results },
75
- };
76
- }
77
- //# sourceMappingURL=ignore-pattern.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ignore-pattern.js","sourceRoot":"","sources":["../../src/commands/ignore-pattern.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Commands module exports
3
- * @requirements 28.1-28.9
4
- */
5
- export { executeApprovePattern, executeApprovePatterns } from './approve-pattern.js';
6
- export { executeIgnorePattern, executeIgnorePatterns } from './ignore-pattern.js';
7
- export { executeIgnoreOnce, generateIgnoreComment, createIgnoreCommentEdit } from './ignore-once.js';
8
- export { executeCreateVariant, validateVariantName, getSuggestedVariantNames } from './create-variant.js';
9
- export { executeExplainAI } from './explain-ai.js';
10
- export { executeFixAI } from './fix-ai.js';
11
- export { executeRescan, executeRescanPatterns, executeIncrementalRescan } from './rescan.js';
12
- export { executeShowPatterns, getPatternStatistics } from './show-patterns.js';
13
- export { executeShowViolations } from './show-violations.js';
14
- //# sourceMappingURL=index.d.ts.map
@@ -1,14 +0,0 @@
1
- /**
2
- * Commands module exports
3
- * @requirements 28.1-28.9
4
- */
5
- export { executeApprovePattern, executeApprovePatterns } from './approve-pattern.js';
6
- export { executeIgnorePattern, executeIgnorePatterns } from './ignore-pattern.js';
7
- export { executeIgnoreOnce, generateIgnoreComment, createIgnoreCommentEdit } from './ignore-once.js';
8
- export { executeCreateVariant, validateVariantName, getSuggestedVariantNames } from './create-variant.js';
9
- export { executeExplainAI } from './explain-ai.js';
10
- export { executeFixAI } from './fix-ai.js';
11
- export { executeRescan, executeRescanPatterns, executeIncrementalRescan } from './rescan.js';
12
- export { executeShowPatterns, getPatternStatistics } from './show-patterns.js';
13
- export { executeShowViolations } from './show-violations.js';
14
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC1G,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,19 +0,0 @@
1
- /**
2
- * Rescan Command - drift.rescan
3
- * @requirements 28.7
4
- */
5
- import type { ServerContext, DocumentScanner, DiagnosticPublisher, CommandResult } from '../server/types.js';
6
- /**
7
- * Execute rescan command
8
- * Rescans documents for drift violations
9
- */
10
- export declare function executeRescan(context: ServerContext, scanner: DocumentScanner, diagnosticPublisher: DiagnosticPublisher, uri?: string): Promise<CommandResult>;
11
- /**
12
- * Execute rescan for specific patterns
13
- */
14
- export declare function executeRescanPatterns(context: ServerContext, scanner: DocumentScanner, diagnosticPublisher: DiagnosticPublisher, patternIds: string[]): Promise<CommandResult>;
15
- /**
16
- * Execute incremental rescan for changed files
17
- */
18
- export declare function executeIncrementalRescan(context: ServerContext, scanner: DocumentScanner, diagnosticPublisher: DiagnosticPublisher, changedUris: string[]): Promise<CommandResult>;
19
- //# sourceMappingURL=rescan.d.ts.map
@@ -1,125 +0,0 @@
1
- /**
2
- * Rescan Command - drift.rescan
3
- * @requirements 28.7
4
- */
5
- /**
6
- * Execute rescan command
7
- * Rescans documents for drift violations
8
- */
9
- export async function executeRescan(context, scanner, diagnosticPublisher, uri) {
10
- const { state, logger, connection } = context;
11
- logger.info(`Rescan requested${uri ? ` for: ${uri}` : ' for all documents'}`);
12
- // Clear caches
13
- if (uri) {
14
- scanner.invalidate(uri);
15
- }
16
- else {
17
- scanner.clearCache();
18
- }
19
- // Note: withProgress is not available in vscode-languageserver
20
- // Show a simple message instead
21
- const documentsToScan = uri
22
- ? [uri].filter((u) => state.documents.has(u))
23
- : Array.from(state.documents.keys());
24
- if (documentsToScan.length === 0) {
25
- return {
26
- success: true,
27
- message: 'No documents to scan',
28
- data: { scannedCount: 0 },
29
- };
30
- }
31
- connection.window.showInformationMessage(`Rescanning ${documentsToScan.length} document(s)...`);
32
- let scannedCount = 0;
33
- let totalViolations = 0;
34
- for (const docUri of documentsToScan) {
35
- try {
36
- // Publish diagnostics (which triggers scan)
37
- await diagnosticPublisher.publish(docUri);
38
- scannedCount++;
39
- // Count violations
40
- const violations = state.violations.get(docUri) ?? [];
41
- totalViolations += violations.length;
42
- }
43
- catch (error) {
44
- logger.error(`Error scanning ${docUri}: ${error}`);
45
- }
46
- }
47
- // Show summary
48
- const message = `Rescan complete: ${scannedCount} document${scannedCount === 1 ? '' : 's'} scanned, ${totalViolations} violation${totalViolations === 1 ? '' : 's'} found`;
49
- connection.window.showInformationMessage(message);
50
- logger.info(message);
51
- return {
52
- success: true,
53
- message,
54
- data: {
55
- scannedCount,
56
- totalViolations,
57
- documentsScanned: documentsToScan.slice(0, scannedCount),
58
- },
59
- };
60
- }
61
- /**
62
- * Execute rescan for specific patterns
63
- */
64
- export async function executeRescanPatterns(context, scanner, diagnosticPublisher, patternIds) {
65
- const { state, logger } = context;
66
- logger.info(`Rescan requested for patterns: ${patternIds.join(', ')}`);
67
- // Clear all caches (pattern-specific invalidation not supported yet)
68
- scanner.clearCache();
69
- // Rescan all documents
70
- const result = await executeRescan(context, scanner, diagnosticPublisher);
71
- // Filter results to only include specified patterns
72
- if (result.success && result.data) {
73
- const data = result.data;
74
- // Count violations for specified patterns only
75
- let patternViolations = 0;
76
- for (const violations of state.violations.values()) {
77
- patternViolations += violations.filter((v) => patternIds.includes(v.patternId)).length;
78
- }
79
- return {
80
- success: true,
81
- message: `Rescan complete: ${data.scannedCount} documents scanned, ${patternViolations} violations found for specified patterns`,
82
- data: {
83
- ...data,
84
- patternIds,
85
- patternViolations,
86
- },
87
- };
88
- }
89
- return result;
90
- }
91
- /**
92
- * Execute incremental rescan for changed files
93
- */
94
- export async function executeIncrementalRescan(context, scanner, diagnosticPublisher, changedUris) {
95
- const { logger } = context;
96
- logger.info(`Incremental rescan for ${changedUris.length} changed files`);
97
- // Invalidate changed files
98
- for (const uri of changedUris) {
99
- scanner.invalidate(uri);
100
- }
101
- // Rescan only changed files
102
- let scannedCount = 0;
103
- let totalViolations = 0;
104
- for (const uri of changedUris) {
105
- try {
106
- await diagnosticPublisher.publish(uri);
107
- scannedCount++;
108
- const violations = context.state.violations.get(uri) ?? [];
109
- totalViolations += violations.length;
110
- }
111
- catch (error) {
112
- logger.error(`Error scanning ${uri}: ${error}`);
113
- }
114
- }
115
- return {
116
- success: true,
117
- message: `Incremental rescan complete: ${scannedCount} files, ${totalViolations} violations`,
118
- data: {
119
- scannedCount,
120
- totalViolations,
121
- changedUris,
122
- },
123
- };
124
- }
125
- //# sourceMappingURL=rescan.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rescan.js","sourceRoot":"","sources":["../../src/commands/rescan.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- /**
2
- * Show Patterns Command - drift.showPatterns
3
- * @requirements 28.8
4
- */
5
- import type { ServerContext } from '../server/types.js';
6
- import type { CommandResult } from '../handlers/commands.js';
7
- /**
8
- * Execute show patterns command
9
- * Shows detected patterns in the workspace
10
- */
11
- export declare function executeShowPatterns(context: ServerContext, patternId?: string): Promise<CommandResult>;
12
- /**
13
- * Get pattern statistics
14
- */
15
- export declare function getPatternStatistics(patterns: Map<string, {
16
- id: string;
17
- category?: string;
18
- }>, violations: Map<string, Array<{
19
- patternId: string;
20
- severity: string;
21
- }>>): {
22
- totalPatterns: number;
23
- totalViolations: number;
24
- byCategory: Record<string, {
25
- patterns: number;
26
- violations: number;
27
- }>;
28
- bySeverity: Record<string, number>;
29
- };
30
- //# sourceMappingURL=show-patterns.d.ts.map
@@ -1,175 +0,0 @@
1
- /**
2
- * Show Patterns Command - drift.showPatterns
3
- * @requirements 28.8
4
- */
5
- /**
6
- * Execute show patterns command
7
- * Shows detected patterns in the workspace
8
- */
9
- export async function executeShowPatterns(context, patternId) {
10
- const { state, logger, connection } = context;
11
- logger.info(`Show patterns requested${patternId ? ` for: ${patternId}` : ''}`);
12
- if (patternId) {
13
- // Show specific pattern
14
- const pattern = state.patterns.get(patternId);
15
- if (!pattern) {
16
- return {
17
- success: false,
18
- error: `Pattern not found: ${patternId}`,
19
- };
20
- }
21
- // Count violations for this pattern
22
- let violationCount = 0;
23
- const affectedFiles = [];
24
- for (const [uri, violations] of state.violations) {
25
- const patternViolations = violations.filter((v) => v.patternId === patternId);
26
- if (patternViolations.length > 0) {
27
- violationCount += patternViolations.length;
28
- affectedFiles.push(uri);
29
- }
30
- }
31
- // Format pattern details
32
- const details = formatPatternDetails(pattern, violationCount, affectedFiles);
33
- // Show in message
34
- connection.window.showInformationMessage(details);
35
- return {
36
- success: true,
37
- message: `Pattern details for: ${patternId}`,
38
- data: {
39
- pattern,
40
- violationCount,
41
- affectedFiles,
42
- },
43
- };
44
- }
45
- else {
46
- // Show all patterns
47
- const patterns = Array.from(state.patterns.values());
48
- if (patterns.length === 0) {
49
- connection.window.showInformationMessage('No patterns detected in the workspace.');
50
- return {
51
- success: true,
52
- message: 'No patterns detected',
53
- data: { patterns: [] },
54
- };
55
- }
56
- // Group patterns by category
57
- const patternsByCategory = groupPatternsByCategory(patterns);
58
- // Format summary
59
- const summary = formatPatternsSummary(patternsByCategory, state.violations);
60
- // Show summary
61
- connection.window.showInformationMessage(summary);
62
- return {
63
- success: true,
64
- message: `Found ${patterns.length} patterns`,
65
- data: {
66
- patterns,
67
- patternsByCategory: Object.fromEntries(patternsByCategory),
68
- },
69
- };
70
- }
71
- }
72
- /**
73
- * Format pattern details for display
74
- */
75
- function formatPatternDetails(pattern, violationCount, affectedFiles) {
76
- const lines = [];
77
- lines.push(`📋 Pattern: ${pattern.name ?? pattern.id ?? 'Unknown'}`);
78
- lines.push('');
79
- if (pattern.category) {
80
- lines.push(`Category: ${pattern.category}${pattern.subcategory ? ` > ${pattern.subcategory}` : ''}`);
81
- }
82
- if (pattern.description) {
83
- lines.push(`Description: ${pattern.description}`);
84
- }
85
- if (pattern.confidence !== undefined) {
86
- lines.push(`Confidence: ${Math.round(pattern.confidence * 100)}%`);
87
- }
88
- lines.push('');
89
- lines.push(`Violations: ${violationCount}`);
90
- lines.push(`Affected files: ${affectedFiles.length}`);
91
- if (affectedFiles.length > 0 && affectedFiles.length <= 5) {
92
- lines.push('');
93
- lines.push('Files:');
94
- for (const file of affectedFiles) {
95
- const fileName = file.split('/').pop() ?? file;
96
- lines.push(` - ${fileName}`);
97
- }
98
- }
99
- return lines.join('\n');
100
- }
101
- /**
102
- * Group patterns by category
103
- */
104
- function groupPatternsByCategory(patterns) {
105
- const groups = new Map();
106
- for (const pattern of patterns) {
107
- const category = pattern.category ?? 'Uncategorized';
108
- const group = groups.get(category) ?? [];
109
- group.push(pattern);
110
- groups.set(category, group);
111
- }
112
- return groups;
113
- }
114
- /**
115
- * Format patterns summary for display
116
- */
117
- function formatPatternsSummary(patternsByCategory, violations) {
118
- const lines = [];
119
- lines.push(`📊 Detected Patterns Summary`);
120
- lines.push('');
121
- let totalPatterns = 0;
122
- let totalViolations = 0;
123
- for (const [category, patterns] of patternsByCategory) {
124
- totalPatterns += patterns.length;
125
- // Count violations for this category
126
- let categoryViolations = 0;
127
- for (const pattern of patterns) {
128
- for (const docViolations of violations.values()) {
129
- categoryViolations += docViolations.filter((v) => v.patternId === pattern.id).length;
130
- }
131
- }
132
- totalViolations += categoryViolations;
133
- lines.push(`${category}: ${patterns.length} pattern${patterns.length === 1 ? '' : 's'}, ${categoryViolations} violation${categoryViolations === 1 ? '' : 's'}`);
134
- }
135
- lines.push('');
136
- lines.push(`Total: ${totalPatterns} patterns, ${totalViolations} violations`);
137
- return lines.join('\n');
138
- }
139
- /**
140
- * Get pattern statistics
141
- */
142
- export function getPatternStatistics(patterns, violations) {
143
- const byCategory = {};
144
- const bySeverity = { error: 0, warning: 0, info: 0, hint: 0 };
145
- let totalViolations = 0;
146
- // Count patterns by category
147
- for (const pattern of patterns.values()) {
148
- const category = pattern.category ?? 'Uncategorized';
149
- if (!byCategory[category]) {
150
- byCategory[category] = { patterns: 0, violations: 0 };
151
- }
152
- byCategory[category].patterns++;
153
- }
154
- // Count violations
155
- for (const docViolations of violations.values()) {
156
- for (const violation of docViolations) {
157
- totalViolations++;
158
- // By severity
159
- bySeverity[violation.severity] = (bySeverity[violation.severity] ?? 0) + 1;
160
- // By category
161
- const pattern = patterns.get(violation.patternId);
162
- const category = pattern?.category ?? 'Uncategorized';
163
- if (byCategory[category]) {
164
- byCategory[category].violations++;
165
- }
166
- }
167
- }
168
- return {
169
- totalPatterns: patterns.size,
170
- totalViolations,
171
- byCategory,
172
- bySeverity,
173
- };
174
- }
175
- //# sourceMappingURL=show-patterns.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"show-patterns.js","sourceRoot":"","sources":["../../src/commands/show-patterns.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Show Violations Command - drift.showViolations
3
- * @requirements 28.9
4
- */
5
- import type { ServerContext, CommandResult } from '../server/types.js';
6
- /**
7
- * Execute show violations command
8
- * Shows violations in the workspace
9
- */
10
- export declare function executeShowViolations(context: ServerContext, uri?: string, patternId?: string, violationId?: string): Promise<CommandResult>;
11
- //# sourceMappingURL=show-violations.d.ts.map