@nahisaho/musubix-core 1.0.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 (214) hide show
  1. package/bin/musubix.js +18 -0
  2. package/dist/__tests__/index.test.d.ts +2 -0
  3. package/dist/__tests__/index.test.d.ts.map +1 -0
  4. package/dist/__tests__/index.test.js +27 -0
  5. package/dist/__tests__/index.test.js.map +1 -0
  6. package/dist/auth/auth-manager.d.ts +320 -0
  7. package/dist/auth/auth-manager.d.ts.map +1 -0
  8. package/dist/auth/auth-manager.js +580 -0
  9. package/dist/auth/auth-manager.js.map +1 -0
  10. package/dist/cli/base.d.ts +58 -0
  11. package/dist/cli/base.d.ts.map +1 -0
  12. package/dist/cli/base.js +93 -0
  13. package/dist/cli/base.js.map +1 -0
  14. package/dist/cli/commands/help.d.ts +17 -0
  15. package/dist/cli/commands/help.d.ts.map +1 -0
  16. package/dist/cli/commands/help.js +228 -0
  17. package/dist/cli/commands/help.js.map +1 -0
  18. package/dist/cli/commands/index.d.ts +14 -0
  19. package/dist/cli/commands/index.d.ts.map +1 -0
  20. package/dist/cli/commands/index.js +25 -0
  21. package/dist/cli/commands/index.js.map +1 -0
  22. package/dist/cli/commands/init.d.ts +38 -0
  23. package/dist/cli/commands/init.d.ts.map +1 -0
  24. package/dist/cli/commands/init.js +258 -0
  25. package/dist/cli/commands/init.js.map +1 -0
  26. package/dist/cli/index.d.ts +9 -0
  27. package/dist/cli/index.d.ts.map +1 -0
  28. package/dist/cli/index.js +9 -0
  29. package/dist/cli/index.js.map +1 -0
  30. package/dist/codegen/coding-standards.d.ts +250 -0
  31. package/dist/codegen/coding-standards.d.ts.map +1 -0
  32. package/dist/codegen/coding-standards.js +976 -0
  33. package/dist/codegen/coding-standards.js.map +1 -0
  34. package/dist/codegen/coverage-reporter.d.ts +264 -0
  35. package/dist/codegen/coverage-reporter.d.ts.map +1 -0
  36. package/dist/codegen/coverage-reporter.js +697 -0
  37. package/dist/codegen/coverage-reporter.js.map +1 -0
  38. package/dist/codegen/dependency-analyzer.d.ts +271 -0
  39. package/dist/codegen/dependency-analyzer.d.ts.map +1 -0
  40. package/dist/codegen/dependency-analyzer.js +661 -0
  41. package/dist/codegen/dependency-analyzer.js.map +1 -0
  42. package/dist/codegen/generator.d.ts +275 -0
  43. package/dist/codegen/generator.d.ts.map +1 -0
  44. package/dist/codegen/generator.js +781 -0
  45. package/dist/codegen/generator.js.map +1 -0
  46. package/dist/codegen/index.d.ts +18 -0
  47. package/dist/codegen/index.d.ts.map +1 -0
  48. package/dist/codegen/index.js +27 -0
  49. package/dist/codegen/index.js.map +1 -0
  50. package/dist/codegen/integration-test-generator.d.ts +312 -0
  51. package/dist/codegen/integration-test-generator.d.ts.map +1 -0
  52. package/dist/codegen/integration-test-generator.js +765 -0
  53. package/dist/codegen/integration-test-generator.js.map +1 -0
  54. package/dist/codegen/pattern-conformance.d.ts +309 -0
  55. package/dist/codegen/pattern-conformance.d.ts.map +1 -0
  56. package/dist/codegen/pattern-conformance.js +590 -0
  57. package/dist/codegen/pattern-conformance.js.map +1 -0
  58. package/dist/codegen/quality-metrics.d.ts +235 -0
  59. package/dist/codegen/quality-metrics.d.ts.map +1 -0
  60. package/dist/codegen/quality-metrics.js +439 -0
  61. package/dist/codegen/quality-metrics.js.map +1 -0
  62. package/dist/codegen/security-scanner.d.ts +179 -0
  63. package/dist/codegen/security-scanner.d.ts.map +1 -0
  64. package/dist/codegen/security-scanner.js +495 -0
  65. package/dist/codegen/security-scanner.js.map +1 -0
  66. package/dist/codegen/static-analyzer.d.ts +188 -0
  67. package/dist/codegen/static-analyzer.d.ts.map +1 -0
  68. package/dist/codegen/static-analyzer.js +490 -0
  69. package/dist/codegen/static-analyzer.js.map +1 -0
  70. package/dist/codegen/unit-test-generator.d.ts +289 -0
  71. package/dist/codegen/unit-test-generator.d.ts.map +1 -0
  72. package/dist/codegen/unit-test-generator.js +634 -0
  73. package/dist/codegen/unit-test-generator.js.map +1 -0
  74. package/dist/design/adr-generator.d.ts +227 -0
  75. package/dist/design/adr-generator.d.ts.map +1 -0
  76. package/dist/design/adr-generator.js +423 -0
  77. package/dist/design/adr-generator.js.map +1 -0
  78. package/dist/design/c4-generator.d.ts +267 -0
  79. package/dist/design/c4-generator.d.ts.map +1 -0
  80. package/dist/design/c4-generator.js +453 -0
  81. package/dist/design/c4-generator.js.map +1 -0
  82. package/dist/design/framework-optimizer.d.ts +190 -0
  83. package/dist/design/framework-optimizer.d.ts.map +1 -0
  84. package/dist/design/framework-optimizer.js +589 -0
  85. package/dist/design/framework-optimizer.js.map +1 -0
  86. package/dist/design/index.d.ts +12 -0
  87. package/dist/design/index.d.ts.map +1 -0
  88. package/dist/design/index.js +13 -0
  89. package/dist/design/index.js.map +1 -0
  90. package/dist/design/pattern-detector.d.ts +270 -0
  91. package/dist/design/pattern-detector.d.ts.map +1 -0
  92. package/dist/design/pattern-detector.js +621 -0
  93. package/dist/design/pattern-detector.js.map +1 -0
  94. package/dist/design/solid-validator.d.ts +188 -0
  95. package/dist/design/solid-validator.d.ts.map +1 -0
  96. package/dist/design/solid-validator.js +579 -0
  97. package/dist/design/solid-validator.js.map +1 -0
  98. package/dist/error/data-persistence.d.ts +311 -0
  99. package/dist/error/data-persistence.d.ts.map +1 -0
  100. package/dist/error/data-persistence.js +586 -0
  101. package/dist/error/data-persistence.js.map +1 -0
  102. package/dist/error/graceful-degradation.d.ts +309 -0
  103. package/dist/error/graceful-degradation.d.ts.map +1 -0
  104. package/dist/error/graceful-degradation.js +510 -0
  105. package/dist/error/graceful-degradation.js.map +1 -0
  106. package/dist/error/index.d.ts +11 -0
  107. package/dist/error/index.d.ts.map +1 -0
  108. package/dist/error/index.js +19 -0
  109. package/dist/error/index.js.map +1 -0
  110. package/dist/explanation/explanation-generator.d.ts +228 -0
  111. package/dist/explanation/explanation-generator.d.ts.map +1 -0
  112. package/dist/explanation/explanation-generator.js +662 -0
  113. package/dist/explanation/explanation-generator.js.map +1 -0
  114. package/dist/explanation/index.d.ts +11 -0
  115. package/dist/explanation/index.d.ts.map +1 -0
  116. package/dist/explanation/index.js +19 -0
  117. package/dist/explanation/index.js.map +1 -0
  118. package/dist/explanation/reasoning-chain.d.ts +314 -0
  119. package/dist/explanation/reasoning-chain.d.ts.map +1 -0
  120. package/dist/explanation/reasoning-chain.js +414 -0
  121. package/dist/explanation/reasoning-chain.js.map +1 -0
  122. package/dist/explanation/visual-explanation.d.ts +315 -0
  123. package/dist/explanation/visual-explanation.d.ts.map +1 -0
  124. package/dist/explanation/visual-explanation.js +667 -0
  125. package/dist/explanation/visual-explanation.js.map +1 -0
  126. package/dist/index.d.ts +33 -0
  127. package/dist/index.d.ts.map +1 -0
  128. package/dist/index.js +47 -0
  129. package/dist/index.js.map +1 -0
  130. package/dist/requirements/decomposer.d.ts +235 -0
  131. package/dist/requirements/decomposer.d.ts.map +1 -0
  132. package/dist/requirements/decomposer.js +587 -0
  133. package/dist/requirements/decomposer.js.map +1 -0
  134. package/dist/requirements/related-finder.d.ts +261 -0
  135. package/dist/requirements/related-finder.d.ts.map +1 -0
  136. package/dist/requirements/related-finder.js +629 -0
  137. package/dist/requirements/related-finder.js.map +1 -0
  138. package/dist/traceability/impact.d.ts +196 -0
  139. package/dist/traceability/impact.d.ts.map +1 -0
  140. package/dist/traceability/impact.js +438 -0
  141. package/dist/traceability/impact.js.map +1 -0
  142. package/dist/traceability/index.d.ts +9 -0
  143. package/dist/traceability/index.d.ts.map +1 -0
  144. package/dist/traceability/index.js +10 -0
  145. package/dist/traceability/index.js.map +1 -0
  146. package/dist/traceability/manager.d.ts +266 -0
  147. package/dist/traceability/manager.d.ts.map +1 -0
  148. package/dist/traceability/manager.js +412 -0
  149. package/dist/traceability/manager.js.map +1 -0
  150. package/dist/types/common.d.ts +294 -0
  151. package/dist/types/common.d.ts.map +1 -0
  152. package/dist/types/common.js +15 -0
  153. package/dist/types/common.js.map +1 -0
  154. package/dist/types/ears.d.ts +158 -0
  155. package/dist/types/ears.d.ts.map +1 -0
  156. package/dist/types/ears.js +33 -0
  157. package/dist/types/ears.js.map +1 -0
  158. package/dist/types/errors.d.ts +176 -0
  159. package/dist/types/errors.d.ts.map +1 -0
  160. package/dist/types/errors.js +55 -0
  161. package/dist/types/errors.js.map +1 -0
  162. package/dist/types/index.d.ts +10 -0
  163. package/dist/types/index.d.ts.map +1 -0
  164. package/dist/types/index.js +10 -0
  165. package/dist/types/index.js.map +1 -0
  166. package/dist/utils/data-protector.d.ts +122 -0
  167. package/dist/utils/data-protector.d.ts.map +1 -0
  168. package/dist/utils/data-protector.js +275 -0
  169. package/dist/utils/data-protector.js.map +1 -0
  170. package/dist/utils/error-handler.d.ts +101 -0
  171. package/dist/utils/error-handler.d.ts.map +1 -0
  172. package/dist/utils/error-handler.js +324 -0
  173. package/dist/utils/error-handler.js.map +1 -0
  174. package/dist/utils/i18n-manager.d.ts +259 -0
  175. package/dist/utils/i18n-manager.d.ts.map +1 -0
  176. package/dist/utils/i18n-manager.js +554 -0
  177. package/dist/utils/i18n-manager.js.map +1 -0
  178. package/dist/utils/index.d.ts +10 -0
  179. package/dist/utils/index.d.ts.map +1 -0
  180. package/dist/utils/index.js +10 -0
  181. package/dist/utils/index.js.map +1 -0
  182. package/dist/utils/logger.d.ts +120 -0
  183. package/dist/utils/logger.d.ts.map +1 -0
  184. package/dist/utils/logger.js +237 -0
  185. package/dist/utils/logger.js.map +1 -0
  186. package/dist/utils/performance-profiler.d.ts +251 -0
  187. package/dist/utils/performance-profiler.d.ts.map +1 -0
  188. package/dist/utils/performance-profiler.js +458 -0
  189. package/dist/utils/performance-profiler.js.map +1 -0
  190. package/dist/utils/scalability-optimizer.d.ts +294 -0
  191. package/dist/utils/scalability-optimizer.d.ts.map +1 -0
  192. package/dist/utils/scalability-optimizer.js +606 -0
  193. package/dist/utils/scalability-optimizer.js.map +1 -0
  194. package/dist/utils/structured-logger.d.ts +294 -0
  195. package/dist/utils/structured-logger.d.ts.map +1 -0
  196. package/dist/utils/structured-logger.js +630 -0
  197. package/dist/utils/structured-logger.js.map +1 -0
  198. package/dist/utils/version-compatibility.d.ts +217 -0
  199. package/dist/utils/version-compatibility.d.ts.map +1 -0
  200. package/dist/utils/version-compatibility.js +443 -0
  201. package/dist/utils/version-compatibility.js.map +1 -0
  202. package/dist/validators/ears-validator.d.ts +182 -0
  203. package/dist/validators/ears-validator.d.ts.map +1 -0
  204. package/dist/validators/ears-validator.js +357 -0
  205. package/dist/validators/ears-validator.js.map +1 -0
  206. package/dist/validators/index.d.ts +8 -0
  207. package/dist/validators/index.d.ts.map +1 -0
  208. package/dist/validators/index.js +9 -0
  209. package/dist/validators/index.js.map +1 -0
  210. package/dist/version.d.ts +8 -0
  211. package/dist/version.d.ts.map +1 -0
  212. package/dist/version.js +8 -0
  213. package/dist/version.js.map +1 -0
  214. package/package.json +100 -0
@@ -0,0 +1,261 @@
1
+ /**
2
+ * Related Requirements Finder
3
+ *
4
+ * Finds related requirements based on semantic similarity
5
+ *
6
+ * @packageDocumentation
7
+ * @module requirements/related-finder
8
+ *
9
+ * @see REQ-RA-003 - Related Requirements Finding
10
+ * @see Article III - Traceability
11
+ */
12
+ /**
13
+ * Similarity algorithm
14
+ */
15
+ export type SimilarityAlgorithm = 'cosine' | 'jaccard' | 'levenshtein' | 'tfidf' | 'semantic';
16
+ /**
17
+ * Relationship type
18
+ */
19
+ export type RelationshipType = 'derives' | 'refines' | 'conflicts' | 'depends' | 'similar' | 'parent' | 'child' | 'implements' | 'verifies' | 'traces';
20
+ /**
21
+ * Requirement for analysis
22
+ */
23
+ export interface AnalyzableRequirement {
24
+ /** Requirement ID */
25
+ id: string;
26
+ /** Title */
27
+ title: string;
28
+ /** Description/content */
29
+ description: string;
30
+ /** Type (functional, non-functional, etc.) */
31
+ type?: string;
32
+ /** Priority */
33
+ priority?: string;
34
+ /** Tags/keywords */
35
+ tags?: string[];
36
+ /** Category */
37
+ category?: string;
38
+ /** Parent requirement */
39
+ parent?: string;
40
+ /** Metadata */
41
+ metadata?: Record<string, unknown>;
42
+ }
43
+ /**
44
+ * Related requirement result
45
+ */
46
+ export interface RelatedRequirement {
47
+ /** Requirement ID */
48
+ id: string;
49
+ /** Requirement title */
50
+ title: string;
51
+ /** Relationship type */
52
+ relationshipType: RelationshipType;
53
+ /** Similarity score (0-1) */
54
+ similarity: number;
55
+ /** Reason for relationship */
56
+ reason: string;
57
+ /** Shared terms */
58
+ sharedTerms: string[];
59
+ /** Confidence (0-1) */
60
+ confidence: number;
61
+ }
62
+ /**
63
+ * Search result
64
+ */
65
+ export interface SearchResult {
66
+ /** Source requirement ID */
67
+ sourceId: string;
68
+ /** Related requirements */
69
+ related: RelatedRequirement[];
70
+ /** Search time (ms) */
71
+ searchTime: number;
72
+ /** Algorithm used */
73
+ algorithm: SimilarityAlgorithm;
74
+ /** Total candidates analyzed */
75
+ candidatesAnalyzed: number;
76
+ }
77
+ /**
78
+ * Requirement cluster
79
+ */
80
+ export interface RequirementCluster {
81
+ /** Cluster ID */
82
+ id: string;
83
+ /** Cluster name/theme */
84
+ name: string;
85
+ /** Requirements in cluster */
86
+ requirements: string[];
87
+ /** Central requirement */
88
+ centroid: string;
89
+ /** Cohesion score */
90
+ cohesion: number;
91
+ /** Key terms */
92
+ keyTerms: string[];
93
+ }
94
+ /**
95
+ * Related finder config
96
+ */
97
+ export interface RelatedFinderConfig {
98
+ /** Default algorithm */
99
+ algorithm: SimilarityAlgorithm;
100
+ /** Minimum similarity threshold */
101
+ minSimilarity: number;
102
+ /** Maximum results */
103
+ maxResults: number;
104
+ /** Include relationship inference */
105
+ inferRelationships: boolean;
106
+ /** Stop words to ignore */
107
+ stopWords: string[];
108
+ /** Domain-specific synonyms */
109
+ synonyms: Map<string, string[]>;
110
+ /** Weight for title matching */
111
+ titleWeight: number;
112
+ /** Weight for description matching */
113
+ descriptionWeight: number;
114
+ /** Weight for tag matching */
115
+ tagWeight: number;
116
+ }
117
+ /**
118
+ * Default configuration
119
+ */
120
+ export declare const DEFAULT_FINDER_CONFIG: RelatedFinderConfig;
121
+ /**
122
+ * Related Requirements Finder
123
+ */
124
+ export declare class RelatedRequirementsFinder {
125
+ private config;
126
+ private requirements;
127
+ private tfDocuments;
128
+ private idfScores;
129
+ private documentCount;
130
+ constructor(config?: Partial<RelatedFinderConfig>);
131
+ /**
132
+ * Add requirements to the index
133
+ */
134
+ index(requirements: AnalyzableRequirement[]): void;
135
+ /**
136
+ * Add a single requirement
137
+ */
138
+ add(requirement: AnalyzableRequirement): void;
139
+ /**
140
+ * Remove a requirement
141
+ */
142
+ remove(id: string): void;
143
+ /**
144
+ * Find related requirements
145
+ */
146
+ findRelated(requirementId: string, options?: {
147
+ algorithm?: SimilarityAlgorithm;
148
+ minSimilarity?: number;
149
+ maxResults?: number;
150
+ relationshipTypes?: RelationshipType[];
151
+ }): SearchResult;
152
+ /**
153
+ * Find requirements similar to text
154
+ */
155
+ findByText(text: string, options?: {
156
+ algorithm?: SimilarityAlgorithm;
157
+ minSimilarity?: number;
158
+ maxResults?: number;
159
+ }): RelatedRequirement[];
160
+ /**
161
+ * Cluster requirements by similarity
162
+ */
163
+ cluster(options?: {
164
+ threshold?: number;
165
+ minClusterSize?: number;
166
+ }): RequirementCluster[];
167
+ /**
168
+ * Find gaps in requirement coverage
169
+ */
170
+ findGaps(): {
171
+ orphanRequirements: string[];
172
+ weaklyConnected: string[];
173
+ missingRelationships: Array<{
174
+ from: string;
175
+ to: string;
176
+ suggestedType: RelationshipType;
177
+ }>;
178
+ };
179
+ /**
180
+ * Get requirement by ID
181
+ */
182
+ get(id: string): AnalyzableRequirement | undefined;
183
+ /**
184
+ * Get all requirements
185
+ */
186
+ getAll(): AnalyzableRequirement[];
187
+ /**
188
+ * Get statistics
189
+ */
190
+ getStatistics(): {
191
+ totalRequirements: number;
192
+ avgSimilarity: number;
193
+ termCount: number;
194
+ clusterCount: number;
195
+ };
196
+ /**
197
+ * Build TF-IDF index
198
+ */
199
+ private buildIndex;
200
+ /**
201
+ * Tokenize a requirement
202
+ */
203
+ private tokenize;
204
+ /**
205
+ * Calculate similarity between two requirements
206
+ */
207
+ private calculateSimilarity;
208
+ /**
209
+ * Cosine similarity
210
+ */
211
+ private cosineSimilarity;
212
+ /**
213
+ * Calculate cosine similarity directly from terms
214
+ */
215
+ private calculateCosineDirect;
216
+ /**
217
+ * Jaccard similarity
218
+ */
219
+ private jaccardSimilarity;
220
+ /**
221
+ * Levenshtein similarity
222
+ */
223
+ private levenshteinSimilarity;
224
+ /**
225
+ * Calculate Levenshtein distance
226
+ */
227
+ private levenshteinDistance;
228
+ /**
229
+ * TF-IDF similarity
230
+ */
231
+ private tfidfSimilarity;
232
+ /**
233
+ * Calculate TF-IDF scores for terms
234
+ */
235
+ private calculateTFIDF;
236
+ /**
237
+ * Infer relationship between requirements
238
+ */
239
+ private inferRelationship;
240
+ /**
241
+ * Find shared terms between requirements
242
+ */
243
+ private findSharedTerms;
244
+ /**
245
+ * Check if explicit relationship exists
246
+ */
247
+ private hasExplicitRelationship;
248
+ /**
249
+ * Extract key terms from cluster
250
+ */
251
+ private extractClusterTerms;
252
+ /**
253
+ * Calculate cluster cohesion
254
+ */
255
+ private calculateClusterCohesion;
256
+ }
257
+ /**
258
+ * Create related requirements finder instance
259
+ */
260
+ export declare function createRelatedRequirementsFinder(config?: Partial<RelatedFinderConfig>): RelatedRequirementsFinder;
261
+ //# sourceMappingURL=related-finder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"related-finder.d.ts","sourceRoot":"","sources":["../../src/requirements/related-finder.ts"],"names":[],"mappings":"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"}