@nahisaho/musubix-codegraph 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/README.md +187 -0
  2. package/dist/codegraph.d.ts +218 -0
  3. package/dist/codegraph.d.ts.map +1 -0
  4. package/dist/codegraph.js +429 -0
  5. package/dist/codegraph.js.map +1 -0
  6. package/dist/events/event-emitter.d.ts +93 -0
  7. package/dist/events/event-emitter.d.ts.map +1 -0
  8. package/dist/events/event-emitter.js +152 -0
  9. package/dist/events/event-emitter.js.map +1 -0
  10. package/dist/events/index.d.ts +8 -0
  11. package/dist/events/index.d.ts.map +1 -0
  12. package/dist/events/index.js +8 -0
  13. package/dist/events/index.js.map +1 -0
  14. package/dist/graph/graph-engine.d.ts +97 -0
  15. package/dist/graph/graph-engine.d.ts.map +1 -0
  16. package/dist/graph/graph-engine.js +341 -0
  17. package/dist/graph/graph-engine.js.map +1 -0
  18. package/dist/graph/index.d.ts +8 -0
  19. package/dist/graph/index.d.ts.map +1 -0
  20. package/dist/graph/index.js +8 -0
  21. package/dist/graph/index.js.map +1 -0
  22. package/dist/graphrag/graphrag-search.d.ts +67 -0
  23. package/dist/graphrag/graphrag-search.d.ts.map +1 -0
  24. package/dist/graphrag/graphrag-search.js +297 -0
  25. package/dist/graphrag/graphrag-search.js.map +1 -0
  26. package/dist/graphrag/index.d.ts +8 -0
  27. package/dist/graphrag/index.d.ts.map +1 -0
  28. package/dist/graphrag/index.js +8 -0
  29. package/dist/graphrag/index.js.map +1 -0
  30. package/dist/index.d.ts +18 -0
  31. package/dist/index.d.ts.map +1 -0
  32. package/dist/index.js +20 -0
  33. package/dist/index.js.map +1 -0
  34. package/dist/indexer/index.d.ts +8 -0
  35. package/dist/indexer/index.d.ts.map +1 -0
  36. package/dist/indexer/index.js +8 -0
  37. package/dist/indexer/index.js.map +1 -0
  38. package/dist/indexer/indexer.d.ts +58 -0
  39. package/dist/indexer/indexer.d.ts.map +1 -0
  40. package/dist/indexer/indexer.js +206 -0
  41. package/dist/indexer/indexer.js.map +1 -0
  42. package/dist/parser/ast-parser.d.ts +79 -0
  43. package/dist/parser/ast-parser.d.ts.map +1 -0
  44. package/dist/parser/ast-parser.js +489 -0
  45. package/dist/parser/ast-parser.js.map +1 -0
  46. package/dist/parser/index.d.ts +8 -0
  47. package/dist/parser/index.d.ts.map +1 -0
  48. package/dist/parser/index.js +8 -0
  49. package/dist/parser/index.js.map +1 -0
  50. package/dist/storage/index.d.ts +9 -0
  51. package/dist/storage/index.d.ts.map +1 -0
  52. package/dist/storage/index.js +10 -0
  53. package/dist/storage/index.js.map +1 -0
  54. package/dist/storage/memory-storage.d.ts +102 -0
  55. package/dist/storage/memory-storage.d.ts.map +1 -0
  56. package/dist/storage/memory-storage.js +263 -0
  57. package/dist/storage/memory-storage.js.map +1 -0
  58. package/dist/storage/sqlite-storage.d.ts +90 -0
  59. package/dist/storage/sqlite-storage.d.ts.map +1 -0
  60. package/dist/storage/sqlite-storage.js +344 -0
  61. package/dist/storage/sqlite-storage.js.map +1 -0
  62. package/dist/types.d.ts +539 -0
  63. package/dist/types.d.ts.map +1 -0
  64. package/dist/types.js +99 -0
  65. package/dist/types.js.map +1 -0
  66. package/package.json +85 -0
@@ -0,0 +1,206 @@
1
+ /**
2
+ * @nahisaho/musubix-codegraph - Indexer
3
+ *
4
+ * Repository and directory indexing
5
+ *
6
+ * @see REQ-CG-IDX-001 - Repository indexing
7
+ * @see REQ-CG-IDX-002 - Incremental indexing
8
+ * @see DES-CG-004
9
+ * @see TSK-CG-030
10
+ */
11
+ import * as fs from 'fs/promises';
12
+ import * as path from 'path';
13
+ import { getLanguageFromExtension } from '../types.js';
14
+ /**
15
+ * Indexer for code repositories
16
+ *
17
+ * Scans directories, parses files, and builds the code graph.
18
+ */
19
+ export class Indexer {
20
+ parser;
21
+ graph;
22
+ options;
23
+ progressCallback = null;
24
+ constructor(parser, graph, options = {}) {
25
+ this.parser = parser;
26
+ this.graph = graph;
27
+ this.options = {
28
+ ignorePatterns: options.ignorePatterns ?? [
29
+ '**/node_modules/**',
30
+ '**/.git/**',
31
+ '**/dist/**',
32
+ '**/build/**',
33
+ '**/coverage/**',
34
+ '**/*.min.js',
35
+ '**/*.bundle.js',
36
+ ],
37
+ maxFileSize: options.maxFileSize ?? 1024 * 1024, // 1MB
38
+ parallelism: options.parallelism ?? 4,
39
+ };
40
+ }
41
+ /**
42
+ * Set progress callback
43
+ */
44
+ onProgress(callback) {
45
+ this.progressCallback = callback;
46
+ }
47
+ /**
48
+ * Index a repository or directory
49
+ */
50
+ async indexRepository(repoPath) {
51
+ const startTime = Date.now();
52
+ const errors = [];
53
+ let entitiesIndexed = 0;
54
+ let relationsIndexed = 0;
55
+ let filesProcessed = 0;
56
+ // Discover files
57
+ const files = await this.discoverFiles(repoPath);
58
+ const total = files.length;
59
+ // Process files
60
+ for (let i = 0; i < files.length; i++) {
61
+ const file = files[i];
62
+ try {
63
+ const result = await this.parser.parseFile(file);
64
+ if (result.errors.length > 0) {
65
+ for (const error of result.errors) {
66
+ errors.push({
67
+ filePath: file,
68
+ message: error.message,
69
+ line: error.line,
70
+ });
71
+ }
72
+ }
73
+ // Add to graph
74
+ await this.graph.addParseResults(result.entities, result.relations);
75
+ entitiesIndexed += result.entities.length;
76
+ relationsIndexed += result.relations.length;
77
+ filesProcessed++;
78
+ // Report progress
79
+ if (this.progressCallback) {
80
+ const progress = {
81
+ processed: i + 1,
82
+ total,
83
+ currentFile: file,
84
+ percentage: Math.round(((i + 1) / total) * 100),
85
+ };
86
+ this.progressCallback(progress);
87
+ }
88
+ }
89
+ catch (error) {
90
+ errors.push({
91
+ filePath: file,
92
+ message: error instanceof Error ? error.message : String(error),
93
+ });
94
+ }
95
+ }
96
+ return {
97
+ success: errors.length === 0,
98
+ entitiesIndexed,
99
+ relationsIndexed,
100
+ filesProcessed,
101
+ durationMs: Date.now() - startTime,
102
+ errors,
103
+ };
104
+ }
105
+ /**
106
+ * Index a single file
107
+ */
108
+ async indexFile(filePath) {
109
+ const startTime = Date.now();
110
+ const errors = [];
111
+ try {
112
+ const result = await this.parser.parseFile(filePath);
113
+ if (result.errors.length > 0) {
114
+ for (const error of result.errors) {
115
+ errors.push({
116
+ filePath,
117
+ message: error.message,
118
+ line: error.line,
119
+ });
120
+ }
121
+ }
122
+ await this.graph.addParseResults(result.entities, result.relations);
123
+ return {
124
+ success: errors.length === 0,
125
+ entitiesIndexed: result.entities.length,
126
+ relationsIndexed: result.relations.length,
127
+ filesProcessed: 1,
128
+ durationMs: Date.now() - startTime,
129
+ errors,
130
+ };
131
+ }
132
+ catch (error) {
133
+ return {
134
+ success: false,
135
+ entitiesIndexed: 0,
136
+ relationsIndexed: 0,
137
+ filesProcessed: 0,
138
+ durationMs: Date.now() - startTime,
139
+ errors: [{
140
+ filePath,
141
+ message: error instanceof Error ? error.message : String(error),
142
+ }],
143
+ };
144
+ }
145
+ }
146
+ /**
147
+ * Discover all parseable files in directory
148
+ */
149
+ async discoverFiles(dirPath) {
150
+ const files = [];
151
+ await this.walkDirectory(dirPath, files);
152
+ return files;
153
+ }
154
+ /**
155
+ * Recursively walk directory
156
+ */
157
+ async walkDirectory(dirPath, files) {
158
+ try {
159
+ const entries = await fs.readdir(dirPath, { withFileTypes: true });
160
+ for (const entry of entries) {
161
+ const fullPath = path.join(dirPath, entry.name);
162
+ // Check exclusions
163
+ if (this.shouldExclude(fullPath)) {
164
+ continue;
165
+ }
166
+ if (entry.isDirectory()) {
167
+ await this.walkDirectory(fullPath, files);
168
+ }
169
+ else if (entry.isFile()) {
170
+ const language = getLanguageFromExtension(fullPath);
171
+ if (language) {
172
+ files.push(fullPath);
173
+ }
174
+ }
175
+ }
176
+ }
177
+ catch {
178
+ // Skip directories we can't read
179
+ }
180
+ }
181
+ /**
182
+ * Check if path should be excluded
183
+ */
184
+ shouldExclude(filePath) {
185
+ for (const pattern of this.options.ignorePatterns) {
186
+ if (this.matchGlob(filePath, pattern)) {
187
+ return true;
188
+ }
189
+ }
190
+ return false;
191
+ }
192
+ /**
193
+ * Simple glob matching
194
+ */
195
+ matchGlob(filePath, pattern) {
196
+ // Convert glob to regex
197
+ const regexPattern = pattern
198
+ .replace(/\*\*/g, '<<<DOUBLESTAR>>>')
199
+ .replace(/\*/g, '[^/]*')
200
+ .replace(/<<<DOUBLESTAR>>>/g, '.*')
201
+ .replace(/\?/g, '.');
202
+ const regex = new RegExp(regexPattern);
203
+ return regex.test(filePath);
204
+ }
205
+ }
206
+ //# sourceMappingURL=indexer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../src/indexer/indexer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * @nahisaho/musubix-codegraph - AST Parser
3
+ *
4
+ * Tree-sitter based AST parser for code entity extraction
5
+ *
6
+ * @see REQ-CG-AST-001 - Multi-language support
7
+ * @see REQ-CG-AST-002 - Entity extraction
8
+ * @see REQ-CG-AST-003 - Relation extraction
9
+ * @see DES-CG-002
10
+ * @see TSK-CG-010
11
+ */
12
+ import type { Language, ParseResult, ParserOptions } from '../types.js';
13
+ /**
14
+ * AST Parser using Tree-sitter
15
+ */
16
+ export declare class ASTParser {
17
+ private options;
18
+ private parser;
19
+ private languages;
20
+ private initialized;
21
+ constructor(options?: Partial<ParserOptions>);
22
+ /**
23
+ * Initialize tree-sitter and load language grammars
24
+ */
25
+ private ensureInitialized;
26
+ /**
27
+ * Parse a source file
28
+ */
29
+ parseFile(filePath: string): Promise<ParseResult>;
30
+ /**
31
+ * Parse source code content
32
+ */
33
+ parseContent(content: string, language: Language, filePath?: string): Promise<ParseResult>;
34
+ /**
35
+ * Parse using tree-sitter
36
+ */
37
+ private parseWithTreeSitter;
38
+ /**
39
+ * Extract entities from AST node recursively
40
+ */
41
+ private extractFromNode;
42
+ /**
43
+ * Extract entity from a single AST node
44
+ */
45
+ private extractEntity;
46
+ /**
47
+ * Create entity with required metadata
48
+ */
49
+ private createEntity;
50
+ /**
51
+ * Create relation with required weight and metadata
52
+ */
53
+ private createRelation;
54
+ /**
55
+ * Map AST node type to entity type
56
+ */
57
+ private getEntityType;
58
+ /**
59
+ * Find the name node within an entity node
60
+ */
61
+ private findNameNode;
62
+ /**
63
+ * Extract docstring from node
64
+ */
65
+ private extractDocstring;
66
+ /**
67
+ * Extract relations from node
68
+ */
69
+ private extractRelations;
70
+ /**
71
+ * Fallback regex-based parsing
72
+ */
73
+ private parseWithRegex;
74
+ /**
75
+ * Get supported languages
76
+ */
77
+ getSupportedLanguages(): Language[];
78
+ }
79
+ //# sourceMappingURL=ast-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ast-parser.d.ts","sourceRoot":"","sources":["../../src/parser/ast-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,QAAQ,EAGR,WAAW,EACX,aAAa,EAEd,MAAM,aAAa,CAAC;AA+BrB;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,WAAW,CAAS;gBAEhB,OAAO,GAAE,OAAO,CAAC,aAAa,CAAM;IAQhD;;OAEG;YACW,iBAAiB;IAgC/B;;OAEG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAsCvD;;OAEG;IACG,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,WAAW,CAAC;IAkBvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA0C3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAmBvB;;OAEG;IACH,OAAO,CAAC,aAAa;IA4CrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAuBpB;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,OAAO,CAAC,aAAa;IAgDrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAapB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAgDxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAyBxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgItB;;OAEG;IACH,qBAAqB,IAAI,QAAQ,EAAE;CAKpC"}