@skillsmith/core 2.1.0 → 2.1.2

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 (204) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/src/analysis/types.d.ts +2 -0
  3. package/dist/src/analysis/types.d.ts.map +1 -1
  4. package/dist/src/analysis/types.js +13 -1
  5. package/dist/src/analysis/types.js.map +1 -1
  6. package/dist/src/analytics/AnalyticsRepository.d.ts +4 -0
  7. package/dist/src/analytics/AnalyticsRepository.d.ts.map +1 -1
  8. package/dist/src/analytics/AnalyticsRepository.js +26 -44
  9. package/dist/src/analytics/AnalyticsRepository.js.map +1 -1
  10. package/dist/src/analytics/schema.d.ts +1 -1
  11. package/dist/src/analytics/schema.d.ts.map +1 -1
  12. package/dist/src/analytics/schema.js +68 -0
  13. package/dist/src/analytics/schema.js.map +1 -1
  14. package/dist/src/api/client.d.ts +33 -29
  15. package/dist/src/api/client.d.ts.map +1 -1
  16. package/dist/src/api/client.js +15 -10
  17. package/dist/src/api/client.js.map +1 -1
  18. package/dist/src/billing/BillingService.d.ts +139 -0
  19. package/dist/src/billing/BillingService.d.ts.map +1 -0
  20. package/dist/src/billing/BillingService.js +393 -0
  21. package/dist/src/billing/BillingService.js.map +1 -0
  22. package/dist/src/billing/GDPRComplianceService.d.ts +176 -0
  23. package/dist/src/billing/GDPRComplianceService.d.ts.map +1 -0
  24. package/dist/src/billing/GDPRComplianceService.js +361 -0
  25. package/dist/src/billing/GDPRComplianceService.js.map +1 -0
  26. package/dist/src/billing/StripeClient.d.ts +177 -0
  27. package/dist/src/billing/StripeClient.d.ts.map +1 -0
  28. package/dist/src/billing/StripeClient.js +462 -0
  29. package/dist/src/billing/StripeClient.js.map +1 -0
  30. package/dist/src/billing/StripeReconciliationJob.d.ts +95 -0
  31. package/dist/src/billing/StripeReconciliationJob.d.ts.map +1 -0
  32. package/dist/src/billing/StripeReconciliationJob.js +405 -0
  33. package/dist/src/billing/StripeReconciliationJob.js.map +1 -0
  34. package/dist/src/billing/StripeWebhookHandler.d.ts +92 -0
  35. package/dist/src/billing/StripeWebhookHandler.d.ts.map +1 -0
  36. package/dist/src/billing/StripeWebhookHandler.js +409 -0
  37. package/dist/src/billing/StripeWebhookHandler.js.map +1 -0
  38. package/dist/src/billing/index.d.ts +18 -0
  39. package/dist/src/billing/index.d.ts.map +1 -0
  40. package/dist/src/billing/index.js +19 -0
  41. package/dist/src/billing/index.js.map +1 -0
  42. package/dist/src/billing/types.d.ts +266 -0
  43. package/dist/src/billing/types.d.ts.map +1 -0
  44. package/dist/src/billing/types.js +23 -0
  45. package/dist/src/billing/types.js.map +1 -0
  46. package/dist/src/embeddings/hnsw-store.d.ts +568 -0
  47. package/dist/src/embeddings/hnsw-store.d.ts.map +1 -0
  48. package/dist/src/embeddings/hnsw-store.js +805 -0
  49. package/dist/src/embeddings/hnsw-store.js.map +1 -0
  50. package/dist/src/embeddings/index.d.ts +2 -0
  51. package/dist/src/embeddings/index.d.ts.map +1 -1
  52. package/dist/src/embeddings/index.js +2 -0
  53. package/dist/src/embeddings/index.js.map +1 -1
  54. package/dist/src/index.d.ts +1 -0
  55. package/dist/src/index.d.ts.map +1 -1
  56. package/dist/src/index.js +2 -0
  57. package/dist/src/index.js.map +1 -1
  58. package/dist/src/learning/PatternStore.d.ts +457 -0
  59. package/dist/src/learning/PatternStore.d.ts.map +1 -0
  60. package/dist/src/learning/PatternStore.js +893 -0
  61. package/dist/src/learning/PatternStore.js.map +1 -0
  62. package/dist/src/learning/ReasoningBankIntegration.d.ts +403 -0
  63. package/dist/src/learning/ReasoningBankIntegration.d.ts.map +1 -0
  64. package/dist/src/learning/ReasoningBankIntegration.js +627 -0
  65. package/dist/src/learning/ReasoningBankIntegration.js.map +1 -0
  66. package/dist/src/learning/index.d.ts +15 -0
  67. package/dist/src/learning/index.d.ts.map +1 -0
  68. package/dist/src/learning/index.js +15 -0
  69. package/dist/src/learning/index.js.map +1 -0
  70. package/dist/src/routing/SONARouter.d.ts +154 -0
  71. package/dist/src/routing/SONARouter.d.ts.map +1 -0
  72. package/dist/src/routing/SONARouter.js +679 -0
  73. package/dist/src/routing/SONARouter.js.map +1 -0
  74. package/dist/src/routing/index.d.ts +9 -0
  75. package/dist/src/routing/index.d.ts.map +1 -0
  76. package/dist/src/routing/index.js +10 -0
  77. package/dist/src/routing/index.js.map +1 -0
  78. package/dist/src/routing/types.d.ts +331 -0
  79. package/dist/src/routing/types.d.ts.map +1 -0
  80. package/dist/src/routing/types.js +203 -0
  81. package/dist/src/routing/types.js.map +1 -0
  82. package/dist/src/scripts/__tests__/scan-imported-skills.test.js +5 -0
  83. package/dist/src/scripts/__tests__/scan-imported-skills.test.js.map +1 -1
  84. package/dist/src/security/SkillSandbox.d.ts +156 -0
  85. package/dist/src/security/SkillSandbox.d.ts.map +1 -0
  86. package/dist/src/security/SkillSandbox.js +303 -0
  87. package/dist/src/security/SkillSandbox.js.map +1 -0
  88. package/dist/src/security/index.d.ts +3 -1
  89. package/dist/src/security/index.d.ts.map +1 -1
  90. package/dist/src/security/index.js +5 -1
  91. package/dist/src/security/index.js.map +1 -1
  92. package/dist/src/security/rate-limiter/presets.d.ts +12 -0
  93. package/dist/src/security/rate-limiter/presets.d.ts.map +1 -1
  94. package/dist/src/security/rate-limiter/presets.js +12 -0
  95. package/dist/src/security/rate-limiter/presets.js.map +1 -1
  96. package/dist/src/security/sanitization.d.ts +85 -0
  97. package/dist/src/security/sanitization.d.ts.map +1 -1
  98. package/dist/src/security/sanitization.js +133 -0
  99. package/dist/src/security/sanitization.js.map +1 -1
  100. package/dist/src/security/scanner/SecurityScanner.d.ts +23 -0
  101. package/dist/src/security/scanner/SecurityScanner.d.ts.map +1 -1
  102. package/dist/src/security/scanner/SecurityScanner.js +232 -28
  103. package/dist/src/security/scanner/SecurityScanner.js.map +1 -1
  104. package/dist/src/security/scanner/patterns.d.ts +13 -0
  105. package/dist/src/security/scanner/patterns.d.ts.map +1 -1
  106. package/dist/src/security/scanner/patterns.js +51 -0
  107. package/dist/src/security/scanner/patterns.js.map +1 -1
  108. package/dist/src/security/scanner/types.d.ts +13 -1
  109. package/dist/src/security/scanner/types.d.ts.map +1 -1
  110. package/dist/src/security/scanner/weights.d.ts.map +1 -1
  111. package/dist/src/security/scanner/weights.js +1 -0
  112. package/dist/src/security/scanner/weights.js.map +1 -1
  113. package/dist/src/session/SessionManager.d.ts +7 -0
  114. package/dist/src/session/SessionManager.d.ts.map +1 -1
  115. package/dist/src/session/SessionManager.js +117 -10
  116. package/dist/src/session/SessionManager.js.map +1 -1
  117. package/dist/src/sync/SyncEngine.d.ts.map +1 -1
  118. package/dist/src/sync/SyncEngine.js +52 -32
  119. package/dist/src/sync/SyncEngine.js.map +1 -1
  120. package/dist/src/testing/MultiLLMProvider.d.ts +374 -0
  121. package/dist/src/testing/MultiLLMProvider.d.ts.map +1 -0
  122. package/dist/src/testing/MultiLLMProvider.js +720 -0
  123. package/dist/src/testing/MultiLLMProvider.js.map +1 -0
  124. package/dist/src/testing/index.d.ts +8 -0
  125. package/dist/src/testing/index.d.ts.map +1 -0
  126. package/dist/src/testing/index.js +9 -0
  127. package/dist/src/testing/index.js.map +1 -0
  128. package/dist/src/types.d.ts +3 -0
  129. package/dist/src/types.d.ts.map +1 -1
  130. package/dist/tests/SecurityScanner.test.js +337 -1
  131. package/dist/tests/SecurityScanner.test.js.map +1 -1
  132. package/dist/tests/billing/BillingService.test.d.ts +7 -0
  133. package/dist/tests/billing/BillingService.test.d.ts.map +1 -0
  134. package/dist/tests/billing/BillingService.test.js +168 -0
  135. package/dist/tests/billing/BillingService.test.js.map +1 -0
  136. package/dist/tests/billing/GDPRCompliance.test.d.ts +7 -0
  137. package/dist/tests/billing/GDPRCompliance.test.d.ts.map +1 -0
  138. package/dist/tests/billing/GDPRCompliance.test.js +195 -0
  139. package/dist/tests/billing/GDPRCompliance.test.js.map +1 -0
  140. package/dist/tests/billing/StripeReconciliation.test.d.ts +7 -0
  141. package/dist/tests/billing/StripeReconciliation.test.d.ts.map +1 -0
  142. package/dist/tests/billing/StripeReconciliation.test.js +266 -0
  143. package/dist/tests/billing/StripeReconciliation.test.js.map +1 -0
  144. package/dist/tests/billing/stripe-validators.test.d.ts +7 -0
  145. package/dist/tests/billing/stripe-validators.test.d.ts.map +1 -0
  146. package/dist/tests/billing/stripe-validators.test.js +107 -0
  147. package/dist/tests/billing/stripe-validators.test.js.map +1 -0
  148. package/dist/tests/embeddings/hnsw-store.test.d.ts +7 -0
  149. package/dist/tests/embeddings/hnsw-store.test.d.ts.map +1 -0
  150. package/dist/tests/embeddings/hnsw-store.test.js +295 -0
  151. package/dist/tests/embeddings/hnsw-store.test.js.map +1 -0
  152. package/dist/tests/integration/neural/e2e-learning.test.d.ts +17 -0
  153. package/dist/tests/integration/neural/e2e-learning.test.d.ts.map +1 -0
  154. package/dist/tests/integration/neural/e2e-learning.test.js +238 -0
  155. package/dist/tests/integration/neural/e2e-learning.test.js.map +1 -0
  156. package/dist/tests/integration/neural/helpers.d.ts +132 -0
  157. package/dist/tests/integration/neural/helpers.d.ts.map +1 -0
  158. package/dist/tests/integration/neural/helpers.js +287 -0
  159. package/dist/tests/integration/neural/helpers.js.map +1 -0
  160. package/dist/tests/integration/neural/personalization.test.d.ts +21 -0
  161. package/dist/tests/integration/neural/personalization.test.d.ts.map +1 -0
  162. package/dist/tests/integration/neural/personalization.test.js +304 -0
  163. package/dist/tests/integration/neural/personalization.test.js.map +1 -0
  164. package/dist/tests/integration/neural/preference-learner.test.d.ts +23 -0
  165. package/dist/tests/integration/neural/preference-learner.test.d.ts.map +1 -0
  166. package/dist/tests/integration/neural/preference-learner.test.js +289 -0
  167. package/dist/tests/integration/neural/preference-learner.test.js.map +1 -0
  168. package/dist/tests/integration/neural/privacy.test.d.ts +19 -0
  169. package/dist/tests/integration/neural/privacy.test.d.ts.map +1 -0
  170. package/dist/tests/integration/neural/privacy.test.js +249 -0
  171. package/dist/tests/integration/neural/privacy.test.js.map +1 -0
  172. package/dist/tests/integration/neural/setup.d.ts +175 -0
  173. package/dist/tests/integration/neural/setup.d.ts.map +1 -0
  174. package/dist/tests/integration/neural/setup.js +487 -0
  175. package/dist/tests/integration/neural/setup.js.map +1 -0
  176. package/dist/tests/integration/neural/signal-collection.test.d.ts +21 -0
  177. package/dist/tests/integration/neural/signal-collection.test.d.ts.map +1 -0
  178. package/dist/tests/integration/neural/signal-collection.test.js +232 -0
  179. package/dist/tests/integration/neural/signal-collection.test.js.map +1 -0
  180. package/dist/tests/learning/PatternStore.test.d.ts +8 -0
  181. package/dist/tests/learning/PatternStore.test.d.ts.map +1 -0
  182. package/dist/tests/learning/PatternStore.test.js +589 -0
  183. package/dist/tests/learning/PatternStore.test.js.map +1 -0
  184. package/dist/tests/learning/ReasoningBankIntegration.test.d.ts +8 -0
  185. package/dist/tests/learning/ReasoningBankIntegration.test.d.ts.map +1 -0
  186. package/dist/tests/learning/ReasoningBankIntegration.test.js +269 -0
  187. package/dist/tests/learning/ReasoningBankIntegration.test.js.map +1 -0
  188. package/dist/tests/routing/SONARouter.test.d.ts +8 -0
  189. package/dist/tests/routing/SONARouter.test.d.ts.map +1 -0
  190. package/dist/tests/routing/SONARouter.test.js +400 -0
  191. package/dist/tests/routing/SONARouter.test.js.map +1 -0
  192. package/dist/tests/security/ContinuousSecurity.test.js +10 -12
  193. package/dist/tests/security/ContinuousSecurity.test.js.map +1 -1
  194. package/dist/tests/security/SkillSandbox.test.d.ts +8 -0
  195. package/dist/tests/security/SkillSandbox.test.d.ts.map +1 -0
  196. package/dist/tests/security/SkillSandbox.test.js +321 -0
  197. package/dist/tests/security/SkillSandbox.test.js.map +1 -0
  198. package/dist/tests/sync/SyncEngine.test.js +4 -2
  199. package/dist/tests/sync/SyncEngine.test.js.map +1 -1
  200. package/dist/tests/testing/MultiLLMProvider.test.d.ts +14 -0
  201. package/dist/tests/testing/MultiLLMProvider.test.d.ts.map +1 -0
  202. package/dist/tests/testing/MultiLLMProvider.test.js +438 -0
  203. package/dist/tests/testing/MultiLLMProvider.test.js.map +1 -0
  204. package/package.json +16 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SONARouter.js","sourceRoot":"","sources":["../../../src/routing/SONARouter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @fileoverview SONA Routing Module Exports
3
+ * @module @skillsmith/core/routing
4
+ * @see SMI-1521: SONA routing for MCP tool optimization
5
+ */
6
+ export { SONARouter, createSONARouter, shouldUseSONARouting, isHighConfidenceDecision, usedFallback, } from './SONARouter.js';
7
+ export type { ExpertId, ExpertType, ExpertState, ExpertCapability, ExpertDefinition, ExpertStatus, ToolType, WeightProfile, ToolRequest, RoutingScores, RoutingAlternative, RoutingDecision, ToolResponse, HistogramBuckets, SONAMetrics, LoadBalanceStrategy, SONARouterConfig, SONAFeatureFlag, } from './types.js';
8
+ export { TOOL_WEIGHTS, SONA_EXPERTS, DEFAULT_SONA_CONFIG, SONA_FEATURE_FLAGS } from './types.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routing/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,YAAY,GACb,MAAM,iBAAiB,CAAA;AAGxB,YAAY,EACV,QAAQ,EACR,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,GAChB,MAAM,YAAY,CAAA;AAGnB,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @fileoverview SONA Routing Module Exports
3
+ * @module @skillsmith/core/routing
4
+ * @see SMI-1521: SONA routing for MCP tool optimization
5
+ */
6
+ // Main router
7
+ export { SONARouter, createSONARouter, shouldUseSONARouting, isHighConfidenceDecision, usedFallback, } from './SONARouter.js';
8
+ // Constants
9
+ export { TOOL_WEIGHTS, SONA_EXPERTS, DEFAULT_SONA_CONFIG, SONA_FEATURE_FLAGS } from './types.js';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/routing/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc;AACd,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,YAAY,GACb,MAAM,iBAAiB,CAAA;AAwBxB,YAAY;AACZ,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,331 @@
1
+ /**
2
+ * @fileoverview SONARouter Type Definitions
3
+ * @module @skillsmith/core/routing/types
4
+ * @see SMI-1521: SONA routing for MCP tool optimization
5
+ *
6
+ * Type definitions for the SONA (Specialized Optimized Network Architecture)
7
+ * routing system that routes MCP tool requests through an 8-expert MoE network.
8
+ */
9
+ /**
10
+ * Expert identification
11
+ */
12
+ export type ExpertId = string;
13
+ /**
14
+ * Types of experts in the MoE network
15
+ * - accuracy: Prioritizes result correctness over speed
16
+ * - latency: Prioritizes response time
17
+ * - balanced: Balances accuracy and latency
18
+ * - specialized: Tool-specific optimization
19
+ */
20
+ export type ExpertType = 'accuracy' | 'latency' | 'balanced' | 'specialized';
21
+ /**
22
+ * Expert state for health monitoring
23
+ */
24
+ export type ExpertState = 'healthy' | 'degraded' | 'unhealthy' | 'warming_up';
25
+ /**
26
+ * MCP tool types supported by SONARouter
27
+ */
28
+ export type ToolType = 'search' | 'recommend' | 'install' | 'validate' | 'compare' | 'get_skill' | 'uninstall' | 'analyze';
29
+ /**
30
+ * Weight profile for routing decisions
31
+ * Values range from 0.0 to 1.0
32
+ */
33
+ export interface WeightProfile {
34
+ /** Weight for accuracy optimization */
35
+ accuracy: number;
36
+ /** Weight for latency optimization */
37
+ latency: number;
38
+ /** Weight for reliability/availability */
39
+ reliability: number;
40
+ /** Weight for resource efficiency */
41
+ efficiency: number;
42
+ }
43
+ /**
44
+ * Tool-specific weight configurations
45
+ * Based on SMI-1521 requirements:
46
+ * - search: accuracy-weighted
47
+ * - recommend: accuracy + personalization
48
+ * - install: balanced (reliability important)
49
+ * - validate: balanced
50
+ * - compare: accuracy-weighted
51
+ * - get_skill: low latency
52
+ */
53
+ export declare const TOOL_WEIGHTS: Record<ToolType, WeightProfile>;
54
+ /**
55
+ * Expert capability declaration
56
+ */
57
+ export interface ExpertCapability {
58
+ /** Tools this expert can handle */
59
+ supportedTools: ToolType[];
60
+ /** Maximum concurrent requests */
61
+ maxConcurrency: number;
62
+ /** Average latency in milliseconds */
63
+ avgLatencyMs: number;
64
+ /** Accuracy score (0-1) based on historical performance */
65
+ accuracyScore: number;
66
+ }
67
+ /**
68
+ * Expert definition in the MoE network
69
+ */
70
+ export interface ExpertDefinition {
71
+ /** Unique expert identifier */
72
+ id: ExpertId;
73
+ /** Expert type classification */
74
+ type: ExpertType;
75
+ /** Name for logging/display */
76
+ name: string;
77
+ /** Detailed description */
78
+ description: string;
79
+ /** Declared capabilities */
80
+ capabilities: ExpertCapability;
81
+ /** Weight profile for routing decisions */
82
+ weights: WeightProfile;
83
+ /** Priority (higher = preferred when tied) */
84
+ priority: number;
85
+ }
86
+ /**
87
+ * Runtime expert status
88
+ */
89
+ export interface ExpertStatus {
90
+ /** Expert identifier */
91
+ id: ExpertId;
92
+ /** Current health state */
93
+ state: ExpertState;
94
+ /** Current load (0-1) */
95
+ load: number;
96
+ /** Active request count */
97
+ activeRequests: number;
98
+ /** Success rate (last 100 requests) */
99
+ successRate: number;
100
+ /** P95 latency in milliseconds */
101
+ p95LatencyMs: number;
102
+ /** Last health check timestamp */
103
+ lastHealthCheck: Date;
104
+ }
105
+ /**
106
+ * 8-Expert MoE Network Configuration
107
+ * Designed for Skillsmith MCP tools
108
+ */
109
+ export declare const SONA_EXPERTS: ExpertDefinition[];
110
+ /**
111
+ * Request context for routing decisions
112
+ */
113
+ export interface ToolRequest {
114
+ /** Request identifier for tracing */
115
+ requestId: string;
116
+ /** Tool being invoked */
117
+ tool: ToolType;
118
+ /** Tool arguments */
119
+ arguments: Record<string, unknown>;
120
+ /** Request timestamp */
121
+ timestamp: Date;
122
+ /** Optional priority override */
123
+ priority?: 'high' | 'normal' | 'low';
124
+ /** Optional latency constraint (ms) */
125
+ maxLatencyMs?: number;
126
+ /** Request metadata */
127
+ metadata?: {
128
+ /** User/session identifier */
129
+ userId?: string;
130
+ /** Source context (mcp, cli, api) */
131
+ source?: string;
132
+ /** Feature flags for this request */
133
+ featureFlags?: Record<string, boolean>;
134
+ };
135
+ }
136
+ /**
137
+ * Score breakdown for routing decision
138
+ */
139
+ export interface RoutingScores {
140
+ /** Accuracy contribution */
141
+ accuracyScore: number;
142
+ /** Latency contribution */
143
+ latencyScore: number;
144
+ /** Reliability contribution */
145
+ reliabilityScore: number;
146
+ /** Efficiency contribution */
147
+ efficiencyScore: number;
148
+ /** Final weighted score */
149
+ totalScore: number;
150
+ }
151
+ /**
152
+ * Alternative expert considered in routing
153
+ */
154
+ export interface RoutingAlternative {
155
+ expertId: ExpertId;
156
+ score: number;
157
+ reason: string;
158
+ }
159
+ /**
160
+ * Routing decision made by SONARouter
161
+ */
162
+ export interface RoutingDecision {
163
+ /** Request this decision applies to */
164
+ requestId: string;
165
+ /** Selected expert */
166
+ expertId: ExpertId;
167
+ /** Confidence in this routing (0-1) */
168
+ confidence: number;
169
+ /** Score breakdown */
170
+ scores: RoutingScores;
171
+ /** Alternative experts considered (top 3) */
172
+ alternatives: RoutingAlternative[];
173
+ /** Routing reasoning for debugging */
174
+ reason: string;
175
+ /** Decision timestamp */
176
+ decidedAt: Date;
177
+ /** Time to make decision (ms) */
178
+ decisionTimeMs: number;
179
+ /** Whether from cache */
180
+ cacheHit?: boolean;
181
+ }
182
+ /**
183
+ * Tool execution response
184
+ */
185
+ export interface ToolResponse<T = unknown> {
186
+ /** Request identifier */
187
+ requestId: string;
188
+ /** Whether execution succeeded */
189
+ success: boolean;
190
+ /** Response data (if successful) */
191
+ data?: T;
192
+ /** Error information (if failed) */
193
+ error?: {
194
+ code: string;
195
+ message: string;
196
+ details?: Record<string, unknown>;
197
+ };
198
+ /** Execution metadata */
199
+ meta: {
200
+ /** Expert that handled the request */
201
+ expertId: ExpertId;
202
+ /** Total execution time (ms) */
203
+ totalTimeMs: number;
204
+ /** Routing decision time (ms) */
205
+ routingTimeMs: number;
206
+ /** Expert execution time (ms) */
207
+ executionTimeMs: number;
208
+ /** Whether cache was used */
209
+ cacheHit: boolean;
210
+ /** Whether fallback was triggered */
211
+ usedFallback: boolean;
212
+ };
213
+ }
214
+ /**
215
+ * Histogram bucket configuration
216
+ */
217
+ export interface HistogramBuckets {
218
+ /** Bucket boundaries in ms */
219
+ boundaries: number[];
220
+ /** Counts per bucket */
221
+ counts: number[];
222
+ }
223
+ /**
224
+ * SONA metrics for observability
225
+ */
226
+ export interface SONAMetrics {
227
+ /** Total requests routed */
228
+ totalRequests: number;
229
+ /** Requests by tool type */
230
+ requestsByTool: Partial<Record<ToolType, number>>;
231
+ /** Requests by expert */
232
+ requestsByExpert: Record<ExpertId, number>;
233
+ /** Cache statistics */
234
+ cache: {
235
+ hits: number;
236
+ misses: number;
237
+ hitRate: number;
238
+ };
239
+ /** Latency histograms */
240
+ latency: {
241
+ routing: HistogramBuckets;
242
+ execution: HistogramBuckets;
243
+ total: HistogramBuckets;
244
+ };
245
+ /** Error statistics */
246
+ errors: {
247
+ total: number;
248
+ byType: Record<string, number>;
249
+ byExpert: Record<ExpertId, number>;
250
+ };
251
+ /** Expert health */
252
+ expertHealth: Record<ExpertId, {
253
+ state: ExpertState;
254
+ load: number;
255
+ successRate: number;
256
+ }>;
257
+ /** Speed improvement metrics */
258
+ speedImprovement: {
259
+ /** Baseline latency (without SONA) */
260
+ baselineMs: number;
261
+ /** Current average latency */
262
+ currentMs: number;
263
+ /** Improvement ratio (target: 2.8-4.4x) */
264
+ improvementRatio: number;
265
+ };
266
+ }
267
+ /**
268
+ * Load balancing strategy
269
+ */
270
+ export type LoadBalanceStrategy = 'round-robin' | 'least-connections' | 'weighted' | 'adaptive';
271
+ /**
272
+ * SONARouter configuration options
273
+ */
274
+ export interface SONARouterConfig {
275
+ /** Expert definitions (defaults to SONA_EXPERTS) */
276
+ experts?: ExpertDefinition[];
277
+ /** Enable routing cache (default: true) */
278
+ enableCache?: boolean;
279
+ /** Cache TTL in milliseconds (default: 60000) */
280
+ cacheTtlMs?: number;
281
+ /** Cache max size (default: 1000) */
282
+ cacheMaxSize?: number;
283
+ /** Load balancing strategy */
284
+ loadBalanceStrategy?: LoadBalanceStrategy;
285
+ /** Health check interval in ms (default: 5000) */
286
+ healthCheckIntervalMs?: number;
287
+ /** Enable metrics collection (default: true) */
288
+ enableMetrics?: boolean;
289
+ /** Fallback configuration */
290
+ fallback?: {
291
+ /** Enable fallback to direct execution (default: true) */
292
+ enabled: boolean;
293
+ /** Timeout before fallback triggers (ms) */
294
+ timeoutMs: number;
295
+ /** Max retries before fallback */
296
+ maxRetries: number;
297
+ };
298
+ /** Enable V3 MoE integration (default: auto-detect) */
299
+ useV3MoE?: boolean;
300
+ }
301
+ /**
302
+ * Default SONARouter configuration
303
+ */
304
+ export declare const DEFAULT_SONA_CONFIG: Required<Omit<SONARouterConfig, 'useV3MoE'>> & {
305
+ useV3MoE?: boolean;
306
+ };
307
+ /**
308
+ * Feature flags for gradual SONA rollout
309
+ */
310
+ export declare const SONA_FEATURE_FLAGS: {
311
+ /** Master switch for SONA routing */
312
+ readonly 'sona.enabled': false;
313
+ /** Enable for specific tools */
314
+ readonly 'sona.tools.search': false;
315
+ readonly 'sona.tools.recommend': false;
316
+ readonly 'sona.tools.install': false;
317
+ readonly 'sona.tools.validate': false;
318
+ readonly 'sona.tools.compare': false;
319
+ readonly 'sona.tools.get_skill': false;
320
+ /** Percentage of traffic to route through SONA (0-100) */
321
+ readonly 'sona.rollout.percentage': 0;
322
+ /** Enable for specific user tiers */
323
+ readonly 'sona.tiers.community': false;
324
+ readonly 'sona.tiers.individual': false;
325
+ readonly 'sona.tiers.team': false;
326
+ readonly 'sona.tiers.enterprise': true;
327
+ /** Enable metrics collection */
328
+ readonly 'sona.metrics.enabled': true;
329
+ };
330
+ export type SONAFeatureFlag = keyof typeof SONA_FEATURE_FLAGS;
331
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/routing/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,203 @@
1
+ /**
2
+ * @fileoverview SONARouter Type Definitions
3
+ * @module @skillsmith/core/routing/types
4
+ * @see SMI-1521: SONA routing for MCP tool optimization
5
+ *
6
+ * Type definitions for the SONA (Specialized Optimized Network Architecture)
7
+ * routing system that routes MCP tool requests through an 8-expert MoE network.
8
+ */
9
+ /**
10
+ * Tool-specific weight configurations
11
+ * Based on SMI-1521 requirements:
12
+ * - search: accuracy-weighted
13
+ * - recommend: accuracy + personalization
14
+ * - install: balanced (reliability important)
15
+ * - validate: balanced
16
+ * - compare: accuracy-weighted
17
+ * - get_skill: low latency
18
+ */
19
+ export const TOOL_WEIGHTS = {
20
+ search: { accuracy: 0.7, latency: 0.2, reliability: 0.05, efficiency: 0.05 },
21
+ recommend: { accuracy: 0.6, latency: 0.2, reliability: 0.1, efficiency: 0.1 },
22
+ install: { accuracy: 0.3, latency: 0.2, reliability: 0.4, efficiency: 0.1 },
23
+ validate: { accuracy: 0.4, latency: 0.3, reliability: 0.2, efficiency: 0.1 },
24
+ compare: { accuracy: 0.65, latency: 0.2, reliability: 0.1, efficiency: 0.05 },
25
+ get_skill: { accuracy: 0.2, latency: 0.6, reliability: 0.15, efficiency: 0.05 },
26
+ uninstall: { accuracy: 0.2, latency: 0.3, reliability: 0.4, efficiency: 0.1 },
27
+ analyze: { accuracy: 0.5, latency: 0.25, reliability: 0.15, efficiency: 0.1 },
28
+ };
29
+ /**
30
+ * 8-Expert MoE Network Configuration
31
+ * Designed for Skillsmith MCP tools
32
+ */
33
+ export const SONA_EXPERTS = [
34
+ // Accuracy-focused experts
35
+ {
36
+ id: 'accuracy-semantic',
37
+ type: 'accuracy',
38
+ name: 'Semantic Search Expert',
39
+ description: 'Optimizes semantic similarity matching for search and recommend',
40
+ capabilities: {
41
+ supportedTools: ['search', 'recommend', 'compare'],
42
+ maxConcurrency: 50,
43
+ avgLatencyMs: 150,
44
+ accuracyScore: 0.95,
45
+ },
46
+ weights: { accuracy: 0.9, latency: 0.05, reliability: 0.03, efficiency: 0.02 },
47
+ priority: 100,
48
+ },
49
+ {
50
+ id: 'accuracy-validation',
51
+ type: 'accuracy',
52
+ name: 'Validation Expert',
53
+ description: 'Thorough validation with complete error reporting',
54
+ capabilities: {
55
+ supportedTools: ['validate', 'analyze'],
56
+ maxConcurrency: 30,
57
+ avgLatencyMs: 200,
58
+ accuracyScore: 0.98,
59
+ },
60
+ weights: { accuracy: 0.85, latency: 0.05, reliability: 0.08, efficiency: 0.02 },
61
+ priority: 90,
62
+ },
63
+ // Latency-focused experts
64
+ {
65
+ id: 'latency-cache',
66
+ type: 'latency',
67
+ name: 'Cache-First Expert',
68
+ description: 'Serves from cache with fallback to computation',
69
+ capabilities: {
70
+ supportedTools: ['search', 'get_skill', 'recommend'],
71
+ maxConcurrency: 200,
72
+ avgLatencyMs: 15,
73
+ accuracyScore: 0.85,
74
+ },
75
+ weights: { accuracy: 0.2, latency: 0.7, reliability: 0.05, efficiency: 0.05 },
76
+ priority: 80,
77
+ },
78
+ {
79
+ id: 'latency-index',
80
+ type: 'latency',
81
+ name: 'Index Lookup Expert',
82
+ description: 'Direct index lookups for known entities',
83
+ capabilities: {
84
+ supportedTools: ['get_skill', 'search'],
85
+ maxConcurrency: 500,
86
+ avgLatencyMs: 5,
87
+ accuracyScore: 0.99,
88
+ },
89
+ weights: { accuracy: 0.3, latency: 0.6, reliability: 0.08, efficiency: 0.02 },
90
+ priority: 85,
91
+ },
92
+ // Balanced experts
93
+ {
94
+ id: 'balanced-default',
95
+ type: 'balanced',
96
+ name: 'Default Balanced Expert',
97
+ description: 'General-purpose balanced execution',
98
+ capabilities: {
99
+ supportedTools: [
100
+ 'search',
101
+ 'recommend',
102
+ 'install',
103
+ 'validate',
104
+ 'compare',
105
+ 'get_skill',
106
+ 'uninstall',
107
+ 'analyze',
108
+ ],
109
+ maxConcurrency: 100,
110
+ avgLatencyMs: 75,
111
+ accuracyScore: 0.9,
112
+ },
113
+ weights: { accuracy: 0.4, latency: 0.4, reliability: 0.15, efficiency: 0.05 },
114
+ priority: 50,
115
+ },
116
+ {
117
+ id: 'balanced-reliability',
118
+ type: 'balanced',
119
+ name: 'Reliability Expert',
120
+ description: 'Prioritizes successful completion over speed',
121
+ capabilities: {
122
+ supportedTools: ['install', 'uninstall', 'validate'],
123
+ maxConcurrency: 25,
124
+ avgLatencyMs: 120,
125
+ accuracyScore: 0.92,
126
+ },
127
+ weights: { accuracy: 0.3, latency: 0.2, reliability: 0.45, efficiency: 0.05 },
128
+ priority: 70,
129
+ },
130
+ // Specialized experts
131
+ {
132
+ id: 'specialized-recommend',
133
+ type: 'specialized',
134
+ name: 'Recommendation Expert',
135
+ description: 'ML-powered personalized recommendations',
136
+ capabilities: {
137
+ supportedTools: ['recommend'],
138
+ maxConcurrency: 40,
139
+ avgLatencyMs: 180,
140
+ accuracyScore: 0.93,
141
+ },
142
+ weights: { accuracy: 0.65, latency: 0.15, reliability: 0.1, efficiency: 0.1 },
143
+ priority: 95,
144
+ },
145
+ {
146
+ id: 'specialized-compare',
147
+ type: 'specialized',
148
+ name: 'Comparison Expert',
149
+ description: 'Deep feature comparison with scoring',
150
+ capabilities: {
151
+ supportedTools: ['compare', 'analyze'],
152
+ maxConcurrency: 35,
153
+ avgLatencyMs: 160,
154
+ accuracyScore: 0.94,
155
+ },
156
+ weights: { accuracy: 0.7, latency: 0.1, reliability: 0.15, efficiency: 0.05 },
157
+ priority: 88,
158
+ },
159
+ ];
160
+ /**
161
+ * Default SONARouter configuration
162
+ */
163
+ export const DEFAULT_SONA_CONFIG = {
164
+ experts: SONA_EXPERTS,
165
+ enableCache: true,
166
+ cacheTtlMs: 60000,
167
+ cacheMaxSize: 1000,
168
+ loadBalanceStrategy: 'adaptive',
169
+ healthCheckIntervalMs: 5000,
170
+ enableMetrics: true,
171
+ fallback: {
172
+ enabled: true,
173
+ timeoutMs: 5000,
174
+ maxRetries: 2,
175
+ },
176
+ };
177
+ // ============================================================================
178
+ // Feature Flag Types
179
+ // ============================================================================
180
+ /**
181
+ * Feature flags for gradual SONA rollout
182
+ */
183
+ export const SONA_FEATURE_FLAGS = {
184
+ /** Master switch for SONA routing */
185
+ 'sona.enabled': false,
186
+ /** Enable for specific tools */
187
+ 'sona.tools.search': false,
188
+ 'sona.tools.recommend': false,
189
+ 'sona.tools.install': false,
190
+ 'sona.tools.validate': false,
191
+ 'sona.tools.compare': false,
192
+ 'sona.tools.get_skill': false,
193
+ /** Percentage of traffic to route through SONA (0-100) */
194
+ 'sona.rollout.percentage': 0,
195
+ /** Enable for specific user tiers */
196
+ 'sona.tiers.community': false,
197
+ 'sona.tiers.individual': false,
198
+ 'sona.tiers.team': false,
199
+ 'sona.tiers.enterprise': true, // Enterprise beta
200
+ /** Enable metrics collection */
201
+ 'sona.metrics.enabled': true,
202
+ };
203
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/routing/types.ts"],"names":[],"mappings":"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"}
@@ -65,6 +65,7 @@ describe('SMI-864: Scan Imported Skills', () => {
65
65
  suspiciousCode: 0,
66
66
  sensitivePaths: 0,
67
67
  externalUrls: 0,
68
+ aiDefence: 0, // SMI-1532
68
69
  },
69
70
  };
70
71
  expect(shouldQuarantine(report)).toBe(true);
@@ -86,6 +87,7 @@ describe('SMI-864: Scan Imported Skills', () => {
86
87
  suspiciousCode: 0,
87
88
  sensitivePaths: 0,
88
89
  externalUrls: 0,
90
+ aiDefence: 0, // SMI-1532
89
91
  },
90
92
  };
91
93
  expect(shouldQuarantine(report, { quarantineThreshold: 40 })).toBe(true);
@@ -107,6 +109,7 @@ describe('SMI-864: Scan Imported Skills', () => {
107
109
  suspiciousCode: 0,
108
110
  sensitivePaths: 0,
109
111
  externalUrls: 0,
112
+ aiDefence: 0, // SMI-1532
110
113
  },
111
114
  };
112
115
  expect(shouldQuarantine(report)).toBe(true);
@@ -128,6 +131,7 @@ describe('SMI-864: Scan Imported Skills', () => {
128
131
  suspiciousCode: 0,
129
132
  sensitivePaths: 36,
130
133
  externalUrls: 0,
134
+ aiDefence: 0, // SMI-1532
131
135
  },
132
136
  };
133
137
  expect(shouldQuarantine(report)).toBe(true);
@@ -149,6 +153,7 @@ describe('SMI-864: Scan Imported Skills', () => {
149
153
  suspiciousCode: 0,
150
154
  sensitivePaths: 0,
151
155
  externalUrls: 12,
156
+ aiDefence: 0, // SMI-1532
152
157
  },
153
158
  };
154
159
  expect(shouldQuarantine(report)).toBe(false);