@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,294 @@
1
+ /**
2
+ * Scalability Optimizer
3
+ *
4
+ * Optimizes system for scalability
5
+ *
6
+ * @packageDocumentation
7
+ * @module utils/scalability-optimizer
8
+ *
9
+ * @see REQ-PER-002 - Scalability Optimization
10
+ * @see Article IX - Continuous Adaptation
11
+ */
12
+ /**
13
+ * Resource type
14
+ */
15
+ export type ResourceType = 'cpu' | 'memory' | 'io' | 'network' | 'storage';
16
+ /**
17
+ * Scaling strategy
18
+ */
19
+ export type ScalingStrategy = 'horizontal' | 'vertical' | 'hybrid' | 'none';
20
+ /**
21
+ * Resource metrics
22
+ */
23
+ export interface ResourceMetrics {
24
+ /** Resource type */
25
+ type: ResourceType;
26
+ /** Current usage (0-1) */
27
+ usage: number;
28
+ /** Capacity */
29
+ capacity: number;
30
+ /** Available */
31
+ available: number;
32
+ /** Peak usage */
33
+ peakUsage: number;
34
+ /** Average usage */
35
+ avgUsage: number;
36
+ }
37
+ /**
38
+ * Load pattern
39
+ */
40
+ export interface LoadPattern {
41
+ /** Pattern name */
42
+ name: string;
43
+ /** Description */
44
+ description: string;
45
+ /** Average load */
46
+ avgLoad: number;
47
+ /** Peak load */
48
+ peakLoad: number;
49
+ /** Variance */
50
+ variance: number;
51
+ /** Predictable */
52
+ predictable: boolean;
53
+ /** Seasonal */
54
+ seasonal: boolean;
55
+ }
56
+ /**
57
+ * Bottleneck info
58
+ */
59
+ export interface Bottleneck {
60
+ /** Resource type */
61
+ resource: ResourceType;
62
+ /** Severity (0-1) */
63
+ severity: number;
64
+ /** Description */
65
+ description: string;
66
+ /** Impact */
67
+ impact: string;
68
+ /** Recommendation */
69
+ recommendation: string;
70
+ }
71
+ /**
72
+ * Scaling recommendation
73
+ */
74
+ export interface ScalingRecommendation {
75
+ /** Recommendation ID */
76
+ id: string;
77
+ /** Strategy */
78
+ strategy: ScalingStrategy;
79
+ /** Resource type */
80
+ resource: ResourceType;
81
+ /** Current capacity */
82
+ currentCapacity: number;
83
+ /** Recommended capacity */
84
+ recommendedCapacity: number;
85
+ /** Scale factor */
86
+ scaleFactor: number;
87
+ /** Priority */
88
+ priority: 'high' | 'medium' | 'low';
89
+ /** Rationale */
90
+ rationale: string;
91
+ /** Estimated cost impact */
92
+ costImpact?: 'increase' | 'decrease' | 'neutral';
93
+ /** Implementation steps */
94
+ steps: string[];
95
+ }
96
+ /**
97
+ * Optimization result
98
+ */
99
+ export interface OptimizationResult {
100
+ /** Timestamp */
101
+ timestamp: Date;
102
+ /** Metrics analyzed */
103
+ metrics: ResourceMetrics[];
104
+ /** Load pattern */
105
+ loadPattern: LoadPattern;
106
+ /** Bottlenecks found */
107
+ bottlenecks: Bottleneck[];
108
+ /** Recommendations */
109
+ recommendations: ScalingRecommendation[];
110
+ /** Overall score (0-100) */
111
+ scalabilityScore: number;
112
+ /** Summary */
113
+ summary: string;
114
+ }
115
+ /**
116
+ * Capacity plan
117
+ */
118
+ export interface CapacityPlan {
119
+ /** Plan ID */
120
+ id: string;
121
+ /** Name */
122
+ name: string;
123
+ /** Target date */
124
+ targetDate: Date;
125
+ /** Current capacity */
126
+ current: Record<ResourceType, number>;
127
+ /** Planned capacity */
128
+ planned: Record<ResourceType, number>;
129
+ /** Expected load */
130
+ expectedLoad: number;
131
+ /** Safety margin */
132
+ safetyMargin: number;
133
+ /** Cost estimate */
134
+ costEstimate?: number;
135
+ }
136
+ /**
137
+ * Scalability config
138
+ */
139
+ export interface ScalabilityConfig {
140
+ /** Target utilization (0-1) */
141
+ targetUtilization: number;
142
+ /** Safety margin (0-1) */
143
+ safetyMargin: number;
144
+ /** Scale up threshold */
145
+ scaleUpThreshold: number;
146
+ /** Scale down threshold */
147
+ scaleDownThreshold: number;
148
+ /** Min instances */
149
+ minInstances: number;
150
+ /** Max instances */
151
+ maxInstances: number;
152
+ /** Cooldown period (ms) */
153
+ cooldownPeriod: number;
154
+ }
155
+ /**
156
+ * Default configuration
157
+ */
158
+ export declare const DEFAULT_SCALABILITY_CONFIG: ScalabilityConfig;
159
+ /**
160
+ * Queue metrics
161
+ */
162
+ export interface QueueMetrics {
163
+ /** Queue name */
164
+ name: string;
165
+ /** Current length */
166
+ length: number;
167
+ /** Max length */
168
+ maxLength: number;
169
+ /** Processing rate */
170
+ processingRate: number;
171
+ /** Arrival rate */
172
+ arrivalRate: number;
173
+ /** Wait time (ms) */
174
+ avgWaitTime: number;
175
+ }
176
+ /**
177
+ * Throughput metrics
178
+ */
179
+ export interface ThroughputMetrics {
180
+ /** Requests per second */
181
+ rps: number;
182
+ /** Peak RPS */
183
+ peakRps: number;
184
+ /** Success rate */
185
+ successRate: number;
186
+ /** Error rate */
187
+ errorRate: number;
188
+ /** Latency p50 */
189
+ latencyP50: number;
190
+ /** Latency p99 */
191
+ latencyP99: number;
192
+ }
193
+ /**
194
+ * Scalability Optimizer
195
+ */
196
+ export declare class ScalabilityOptimizer {
197
+ private config;
198
+ private metricsHistory;
199
+ private loadHistory;
200
+ private recommendationCounter;
201
+ constructor(config?: Partial<ScalabilityConfig>);
202
+ /**
203
+ * Analyze current metrics
204
+ */
205
+ analyze(metrics: ResourceMetrics[]): OptimizationResult;
206
+ /**
207
+ * Analyze load pattern
208
+ */
209
+ private analyzeLoadPattern;
210
+ /**
211
+ * Find bottlenecks
212
+ */
213
+ private findBottlenecks;
214
+ /**
215
+ * Describe bottleneck impact
216
+ */
217
+ private describeImpact;
218
+ /**
219
+ * Get bottleneck recommendation
220
+ */
221
+ private getBottleneckRecommendation;
222
+ /**
223
+ * Generate scaling recommendations
224
+ */
225
+ private generateRecommendations;
226
+ /**
227
+ * Recommend for specific resource
228
+ */
229
+ private recommendForResource;
230
+ /**
231
+ * Calculate scale factor
232
+ */
233
+ private calculateScaleFactor;
234
+ /**
235
+ * Determine scaling strategy
236
+ */
237
+ private determineStrategy;
238
+ /**
239
+ * Get scale up steps
240
+ */
241
+ private getScaleUpSteps;
242
+ /**
243
+ * Get scale down steps
244
+ */
245
+ private getScaleDownSteps;
246
+ /**
247
+ * Calculate scalability score
248
+ */
249
+ private calculateScalabilityScore;
250
+ /**
251
+ * Generate summary
252
+ */
253
+ private generateSummary;
254
+ /**
255
+ * Create capacity plan
256
+ */
257
+ createCapacityPlan(name: string, expectedLoadGrowth: number, targetDate: Date, currentMetrics: ResourceMetrics[]): CapacityPlan;
258
+ /**
259
+ * Analyze queue metrics
260
+ */
261
+ analyzeQueue(queue: QueueMetrics): {
262
+ healthy: boolean;
263
+ recommendation: string;
264
+ };
265
+ /**
266
+ * Analyze throughput
267
+ */
268
+ analyzeThroughput(throughput: ThroughputMetrics): {
269
+ healthy: boolean;
270
+ bottleneck?: string;
271
+ recommendation: string;
272
+ };
273
+ /**
274
+ * Calculate variance
275
+ */
276
+ private calculateVariance;
277
+ /**
278
+ * Detect seasonality (simplified)
279
+ */
280
+ private detectSeasonality;
281
+ /**
282
+ * Calculate correlation
283
+ */
284
+ private calculateCorrelation;
285
+ /**
286
+ * Format result as string
287
+ */
288
+ formatResult(result: OptimizationResult): string;
289
+ }
290
+ /**
291
+ * Create scalability optimizer instance
292
+ */
293
+ export declare function createScalabilityOptimizer(config?: Partial<ScalabilityConfig>): ScalabilityOptimizer;
294
+ //# sourceMappingURL=scalability-optimizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scalability-optimizer.d.ts","sourceRoot":"","sources":["../../src/utils/scalability-optimizer.ts"],"names":[],"mappings":"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"}