@skillsmith/core 0.4.0 → 0.4.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 (612) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/src/analysis/CodebaseAnalyzer.d.ts.map +1 -1
  3. package/dist/src/analysis/CodebaseAnalyzer.js.map +1 -1
  4. package/dist/src/analysis/adapters/__tests__/python.test.js.map +1 -1
  5. package/dist/src/analysis/adapters/java-parsers.d.ts +64 -0
  6. package/dist/src/analysis/adapters/java-parsers.d.ts.map +1 -0
  7. package/dist/src/analysis/adapters/java-parsers.js +114 -0
  8. package/dist/src/analysis/adapters/java-parsers.js.map +1 -0
  9. package/dist/src/analysis/adapters/java.d.ts +1 -51
  10. package/dist/src/analysis/adapters/java.d.ts.map +1 -1
  11. package/dist/src/analysis/adapters/java.js +94 -205
  12. package/dist/src/analysis/adapters/java.js.map +1 -1
  13. package/dist/src/analysis/adapters/python-frameworks.d.ts +21 -0
  14. package/dist/src/analysis/adapters/python-frameworks.d.ts.map +1 -0
  15. package/dist/src/analysis/adapters/python-frameworks.js +86 -0
  16. package/dist/src/analysis/adapters/python-frameworks.js.map +1 -0
  17. package/dist/src/analysis/adapters/python.d.ts +0 -50
  18. package/dist/src/analysis/adapters/python.d.ts.map +1 -1
  19. package/dist/src/analysis/adapters/python.js +5 -120
  20. package/dist/src/analysis/adapters/python.js.map +1 -1
  21. package/dist/src/analysis/adapters/rust-parsers.d.ts +33 -0
  22. package/dist/src/analysis/adapters/rust-parsers.d.ts.map +1 -0
  23. package/dist/src/analysis/adapters/rust-parsers.js +94 -0
  24. package/dist/src/analysis/adapters/rust-parsers.js.map +1 -0
  25. package/dist/src/analysis/adapters/rust.d.ts +1 -43
  26. package/dist/src/analysis/adapters/rust.d.ts.map +1 -1
  27. package/dist/src/analysis/adapters/rust.js +74 -173
  28. package/dist/src/analysis/adapters/rust.js.map +1 -1
  29. package/dist/src/analysis/language-detector.d.ts +4 -20
  30. package/dist/src/analysis/language-detector.d.ts.map +1 -1
  31. package/dist/src/analysis/language-detector.js +2 -399
  32. package/dist/src/analysis/language-detector.js.map +1 -1
  33. package/dist/src/analysis/language-detector.patterns.d.ts +17 -0
  34. package/dist/src/analysis/language-detector.patterns.d.ts.map +1 -0
  35. package/dist/src/analysis/language-detector.patterns.js +413 -0
  36. package/dist/src/analysis/language-detector.patterns.js.map +1 -0
  37. package/dist/src/analysis/language-detector.types.d.ts +48 -0
  38. package/dist/src/analysis/language-detector.types.d.ts.map +1 -0
  39. package/dist/src/analysis/language-detector.types.js +6 -0
  40. package/dist/src/analysis/language-detector.types.js.map +1 -0
  41. package/dist/src/analysis/metrics.d.ts +22 -219
  42. package/dist/src/analysis/metrics.d.ts.map +1 -1
  43. package/dist/src/analysis/metrics.implementations.d.ts +39 -0
  44. package/dist/src/analysis/metrics.implementations.d.ts.map +1 -0
  45. package/dist/src/analysis/metrics.implementations.js +114 -0
  46. package/dist/src/analysis/metrics.implementations.js.map +1 -0
  47. package/dist/src/analysis/metrics.js +21 -224
  48. package/dist/src/analysis/metrics.js.map +1 -1
  49. package/dist/src/analysis/metrics.types.d.ts +79 -0
  50. package/dist/src/analysis/metrics.types.d.ts.map +1 -0
  51. package/dist/src/analysis/metrics.types.js +6 -0
  52. package/dist/src/analysis/metrics.types.js.map +1 -0
  53. package/dist/src/analysis/worker-pool.d.ts +25 -52
  54. package/dist/src/analysis/worker-pool.d.ts.map +1 -1
  55. package/dist/src/analysis/worker-pool.js +29 -181
  56. package/dist/src/analysis/worker-pool.js.map +1 -1
  57. package/dist/src/analysis/worker-types.d.ts +64 -0
  58. package/dist/src/analysis/worker-types.d.ts.map +1 -0
  59. package/dist/src/analysis/worker-types.js +11 -0
  60. package/dist/src/analysis/worker-types.js.map +1 -0
  61. package/dist/src/analysis/worker-utils.d.ts +49 -0
  62. package/dist/src/analysis/worker-utils.d.ts.map +1 -0
  63. package/dist/src/analysis/worker-utils.js +206 -0
  64. package/dist/src/analysis/worker-utils.js.map +1 -0
  65. package/dist/src/analytics/AnalyticsRepository.d.ts +1 -5
  66. package/dist/src/analytics/AnalyticsRepository.d.ts.map +1 -1
  67. package/dist/src/analytics/AnalyticsRepository.helpers.d.ts +28 -0
  68. package/dist/src/analytics/AnalyticsRepository.helpers.d.ts.map +1 -0
  69. package/dist/src/analytics/AnalyticsRepository.helpers.js +90 -0
  70. package/dist/src/analytics/AnalyticsRepository.helpers.js.map +1 -0
  71. package/dist/src/analytics/AnalyticsRepository.js +16 -129
  72. package/dist/src/analytics/AnalyticsRepository.js.map +1 -1
  73. package/dist/src/analytics/AnalyticsRepository.types.d.ts +82 -0
  74. package/dist/src/analytics/AnalyticsRepository.types.d.ts.map +1 -0
  75. package/dist/src/analytics/AnalyticsRepository.types.js +8 -0
  76. package/dist/src/analytics/AnalyticsRepository.types.js.map +1 -0
  77. package/dist/src/analytics/ROIDashboardService.js +4 -2
  78. package/dist/src/analytics/ROIDashboardService.js.map +1 -1
  79. package/dist/src/api/cache.d.ts.map +1 -1
  80. package/dist/src/api/cache.js.map +1 -1
  81. package/dist/src/api/client.d.ts +6 -121
  82. package/dist/src/api/client.d.ts.map +1 -1
  83. package/dist/src/api/client.js +29 -129
  84. package/dist/src/api/client.js.map +1 -1
  85. package/dist/src/api/schemas.d.ts +122 -0
  86. package/dist/src/api/schemas.d.ts.map +1 -0
  87. package/dist/src/api/schemas.js +71 -0
  88. package/dist/src/api/schemas.js.map +1 -0
  89. package/dist/src/api/types.d.ts +1 -1
  90. package/dist/src/api/types.d.ts.map +1 -1
  91. package/dist/src/api/utils.d.ts +35 -0
  92. package/dist/src/api/utils.d.ts.map +1 -0
  93. package/dist/src/api/utils.js +86 -0
  94. package/dist/src/api/utils.js.map +1 -0
  95. package/dist/src/benchmarks/BenchmarkRunner.d.ts.map +1 -1
  96. package/dist/src/benchmarks/BenchmarkRunner.js +1 -1
  97. package/dist/src/benchmarks/BenchmarkRunner.js.map +1 -1
  98. package/dist/src/billing/BillingService.d.ts +15 -53
  99. package/dist/src/billing/BillingService.d.ts.map +1 -1
  100. package/dist/src/billing/BillingService.helpers.d.ts +15 -0
  101. package/dist/src/billing/BillingService.helpers.d.ts.map +1 -0
  102. package/dist/src/billing/BillingService.helpers.js +45 -0
  103. package/dist/src/billing/BillingService.helpers.js.map +1 -0
  104. package/dist/src/billing/BillingService.js +49 -179
  105. package/dist/src/billing/BillingService.js.map +1 -1
  106. package/dist/src/billing/BillingService.types.d.ts +52 -0
  107. package/dist/src/billing/BillingService.types.d.ts.map +1 -0
  108. package/dist/src/billing/BillingService.types.js +6 -0
  109. package/dist/src/billing/BillingService.types.js.map +1 -0
  110. package/dist/src/billing/GDPRComplianceService.d.ts +2 -97
  111. package/dist/src/billing/GDPRComplianceService.d.ts.map +1 -1
  112. package/dist/src/billing/GDPRComplianceService.js.map +1 -1
  113. package/dist/src/billing/StripeClient.d.ts +6 -64
  114. package/dist/src/billing/StripeClient.d.ts.map +1 -1
  115. package/dist/src/billing/StripeClient.js +14 -71
  116. package/dist/src/billing/StripeClient.js.map +1 -1
  117. package/dist/src/billing/StripeReconciliationJob.d.ts +2 -47
  118. package/dist/src/billing/StripeReconciliationJob.d.ts.map +1 -1
  119. package/dist/src/billing/StripeReconciliationJob.js +1 -41
  120. package/dist/src/billing/StripeReconciliationJob.js.map +1 -1
  121. package/dist/src/billing/StripeWebhookHandler.d.ts +3 -46
  122. package/dist/src/billing/StripeWebhookHandler.d.ts.map +1 -1
  123. package/dist/src/billing/StripeWebhookHandler.js +14 -261
  124. package/dist/src/billing/StripeWebhookHandler.js.map +1 -1
  125. package/dist/src/billing/gdpr-types.d.ts +103 -0
  126. package/dist/src/billing/gdpr-types.d.ts.map +1 -0
  127. package/dist/src/billing/gdpr-types.js +7 -0
  128. package/dist/src/billing/gdpr-types.js.map +1 -0
  129. package/dist/src/billing/reconciliation-helpers.d.ts +16 -0
  130. package/dist/src/billing/reconciliation-helpers.d.ts.map +1 -0
  131. package/dist/src/billing/reconciliation-helpers.js +53 -0
  132. package/dist/src/billing/reconciliation-helpers.js.map +1 -0
  133. package/dist/src/billing/reconciliation-types.d.ts +71 -0
  134. package/dist/src/billing/reconciliation-types.d.ts.map +1 -0
  135. package/dist/src/billing/reconciliation-types.js +7 -0
  136. package/dist/src/billing/reconciliation-types.js.map +1 -0
  137. package/dist/src/billing/stripe-client-types.d.ts +45 -0
  138. package/dist/src/billing/stripe-client-types.d.ts.map +1 -0
  139. package/dist/src/billing/stripe-client-types.js +7 -0
  140. package/dist/src/billing/stripe-client-types.js.map +1 -0
  141. package/dist/src/billing/stripe-helpers.d.ts +17 -0
  142. package/dist/src/billing/stripe-helpers.d.ts.map +1 -0
  143. package/dist/src/billing/stripe-helpers.js +50 -0
  144. package/dist/src/billing/stripe-helpers.js.map +1 -0
  145. package/dist/src/billing/webhook-handlers.d.ts +56 -0
  146. package/dist/src/billing/webhook-handlers.d.ts.map +1 -0
  147. package/dist/src/billing/webhook-handlers.js +303 -0
  148. package/dist/src/billing/webhook-handlers.js.map +1 -0
  149. package/dist/src/billing/webhook-types.d.ts +42 -0
  150. package/dist/src/billing/webhook-types.d.ts.map +1 -0
  151. package/dist/src/billing/webhook-types.js +7 -0
  152. package/dist/src/billing/webhook-types.js.map +1 -0
  153. package/dist/src/config/index.d.ts +118 -0
  154. package/dist/src/config/index.d.ts.map +1 -0
  155. package/dist/src/config/index.js +172 -0
  156. package/dist/src/config/index.js.map +1 -0
  157. package/dist/src/db/migration-types.d.ts +101 -0
  158. package/dist/src/db/migration-types.d.ts.map +1 -0
  159. package/dist/src/db/migration-types.js +6 -0
  160. package/dist/src/db/migration-types.js.map +1 -0
  161. package/dist/src/db/migration.d.ts +32 -0
  162. package/dist/src/db/migration.d.ts.map +1 -0
  163. package/dist/src/db/migration.js +239 -0
  164. package/dist/src/db/migration.js.map +1 -0
  165. package/dist/src/db/schema.d.ts +2 -2
  166. package/dist/src/db/schema.d.ts.map +1 -1
  167. package/dist/src/db/schema.js +23 -1
  168. package/dist/src/db/schema.js.map +1 -1
  169. package/dist/src/embeddings/embedding-types.d.ts +44 -0
  170. package/dist/src/embeddings/embedding-types.d.ts.map +1 -0
  171. package/dist/src/embeddings/embedding-types.js +6 -0
  172. package/dist/src/embeddings/embedding-types.js.map +1 -0
  173. package/dist/src/embeddings/embedding-utils.d.ts +42 -0
  174. package/dist/src/embeddings/embedding-utils.d.ts.map +1 -0
  175. package/dist/src/embeddings/embedding-utils.js +121 -0
  176. package/dist/src/embeddings/embedding-utils.js.map +1 -0
  177. package/dist/src/embeddings/hnsw-store.d.ts +8 -518
  178. package/dist/src/embeddings/hnsw-store.d.ts.map +1 -1
  179. package/dist/src/embeddings/hnsw-store.helpers.d.ts +83 -0
  180. package/dist/src/embeddings/hnsw-store.helpers.d.ts.map +1 -0
  181. package/dist/src/embeddings/hnsw-store.helpers.js +147 -0
  182. package/dist/src/embeddings/hnsw-store.helpers.js.map +1 -0
  183. package/dist/src/embeddings/hnsw-store.js +66 -517
  184. package/dist/src/embeddings/hnsw-store.js.map +1 -1
  185. package/dist/src/embeddings/hnsw-store.types.d.ts +154 -0
  186. package/dist/src/embeddings/hnsw-store.types.d.ts.map +1 -0
  187. package/dist/src/embeddings/hnsw-store.types.js +26 -0
  188. package/dist/src/embeddings/hnsw-store.types.js.map +1 -0
  189. package/dist/src/embeddings/index.d.ts +36 -112
  190. package/dist/src/embeddings/index.d.ts.map +1 -1
  191. package/dist/src/embeddings/index.js +37 -210
  192. package/dist/src/embeddings/index.js.map +1 -1
  193. package/dist/src/errors.d.ts.map +1 -1
  194. package/dist/src/errors.js +1 -1
  195. package/dist/src/errors.js.map +1 -1
  196. package/dist/src/exports/repositories.d.ts +18 -0
  197. package/dist/src/exports/repositories.d.ts.map +1 -0
  198. package/dist/src/exports/repositories.js +30 -0
  199. package/dist/src/exports/repositories.js.map +1 -0
  200. package/dist/src/exports/services.d.ts +30 -0
  201. package/dist/src/exports/services.d.ts.map +1 -0
  202. package/dist/src/exports/services.js +70 -0
  203. package/dist/src/exports/services.js.map +1 -0
  204. package/dist/src/exports/types.d.ts +21 -0
  205. package/dist/src/exports/types.d.ts.map +1 -0
  206. package/dist/src/exports/types.js +12 -0
  207. package/dist/src/exports/types.js.map +1 -0
  208. package/dist/src/index.d.ts +10 -47
  209. package/dist/src/index.d.ts.map +1 -1
  210. package/dist/src/index.js +31 -48
  211. package/dist/src/index.js.map +1 -1
  212. package/dist/src/indexer/GitHubIndexer.d.ts.map +1 -1
  213. package/dist/src/indexer/GitHubIndexer.js +17 -4
  214. package/dist/src/indexer/GitHubIndexer.js.map +1 -1
  215. package/dist/src/indexer/SwarmIndexer.d.ts.map +1 -1
  216. package/dist/src/indexer/SwarmIndexer.js +1 -1
  217. package/dist/src/indexer/SwarmIndexer.js.map +1 -1
  218. package/dist/src/learning/PatternStore.d.ts +6 -426
  219. package/dist/src/learning/PatternStore.d.ts.map +1 -1
  220. package/dist/src/learning/PatternStore.helpers.d.ts +88 -0
  221. package/dist/src/learning/PatternStore.helpers.d.ts.map +1 -0
  222. package/dist/src/learning/PatternStore.helpers.js +286 -0
  223. package/dist/src/learning/PatternStore.helpers.js.map +1 -0
  224. package/dist/src/learning/PatternStore.js +52 -598
  225. package/dist/src/learning/PatternStore.js.map +1 -1
  226. package/dist/src/learning/PatternStore.queries.d.ts +83 -0
  227. package/dist/src/learning/PatternStore.queries.d.ts.map +1 -0
  228. package/dist/src/learning/PatternStore.queries.js +189 -0
  229. package/dist/src/learning/PatternStore.queries.js.map +1 -0
  230. package/dist/src/learning/PatternStore.types.d.ts +308 -0
  231. package/dist/src/learning/PatternStore.types.d.ts.map +1 -0
  232. package/dist/src/learning/PatternStore.types.js +44 -0
  233. package/dist/src/learning/PatternStore.types.js.map +1 -0
  234. package/dist/src/learning/ReasoningBankIntegration.d.ts +5 -345
  235. package/dist/src/learning/ReasoningBankIntegration.d.ts.map +1 -1
  236. package/dist/src/learning/ReasoningBankIntegration.helpers.d.ts +49 -0
  237. package/dist/src/learning/ReasoningBankIntegration.helpers.d.ts.map +1 -0
  238. package/dist/src/learning/ReasoningBankIntegration.helpers.js +180 -0
  239. package/dist/src/learning/ReasoningBankIntegration.helpers.js.map +1 -0
  240. package/dist/src/learning/ReasoningBankIntegration.js +21 -390
  241. package/dist/src/learning/ReasoningBankIntegration.js.map +1 -1
  242. package/dist/src/learning/ReasoningBankIntegration.types.d.ts +167 -0
  243. package/dist/src/learning/ReasoningBankIntegration.types.d.ts.map +1 -0
  244. package/dist/src/learning/ReasoningBankIntegration.types.js +51 -0
  245. package/dist/src/learning/ReasoningBankIntegration.types.js.map +1 -0
  246. package/dist/src/learning/interfaces.d.ts.map +1 -1
  247. package/dist/src/pipeline/DailyIndexPipeline.d.ts +4 -176
  248. package/dist/src/pipeline/DailyIndexPipeline.d.ts.map +1 -1
  249. package/dist/src/pipeline/DailyIndexPipeline.js +9 -83
  250. package/dist/src/pipeline/DailyIndexPipeline.js.map +1 -1
  251. package/dist/src/pipeline/pipeline-types.d.ts +132 -0
  252. package/dist/src/pipeline/pipeline-types.d.ts.map +1 -0
  253. package/dist/src/pipeline/pipeline-types.js +6 -0
  254. package/dist/src/pipeline/pipeline-types.js.map +1 -0
  255. package/dist/src/repositories/IndexerRepository.d.ts +1 -0
  256. package/dist/src/repositories/IndexerRepository.d.ts.map +1 -1
  257. package/dist/src/repositories/IndexerRepository.js +6 -0
  258. package/dist/src/repositories/IndexerRepository.js.map +1 -1
  259. package/dist/src/repositories/SkillRepository.d.ts.map +1 -1
  260. package/dist/src/repositories/SkillRepository.js +20 -5
  261. package/dist/src/repositories/SkillRepository.js.map +1 -1
  262. package/dist/src/routing/SONARouter.d.ts +3 -101
  263. package/dist/src/routing/SONARouter.d.ts.map +1 -1
  264. package/dist/src/routing/SONARouter.helpers.d.ts +112 -0
  265. package/dist/src/routing/SONARouter.helpers.d.ts.map +1 -0
  266. package/dist/src/routing/SONARouter.helpers.js +184 -0
  267. package/dist/src/routing/SONARouter.helpers.js.map +1 -0
  268. package/dist/src/routing/SONARouter.js +16 -318
  269. package/dist/src/routing/SONARouter.js.map +1 -1
  270. package/dist/src/routing/expert-types.d.ts +109 -0
  271. package/dist/src/routing/expert-types.d.ts.map +1 -0
  272. package/dist/src/routing/expert-types.js +162 -0
  273. package/dist/src/routing/expert-types.js.map +1 -0
  274. package/dist/src/routing/request-types.d.ts +113 -0
  275. package/dist/src/routing/request-types.d.ts.map +1 -0
  276. package/dist/src/routing/request-types.js +9 -0
  277. package/dist/src/routing/request-types.js.map +1 -0
  278. package/dist/src/routing/types.d.ts +5 -207
  279. package/dist/src/routing/types.d.ts.map +1 -1
  280. package/dist/src/routing/types.js +3 -153
  281. package/dist/src/routing/types.js.map +1 -1
  282. package/dist/src/scripts/github-import/github-auth.d.ts +17 -0
  283. package/dist/src/scripts/github-import/github-auth.d.ts.map +1 -0
  284. package/dist/src/scripts/github-import/github-auth.js +201 -0
  285. package/dist/src/scripts/github-import/github-auth.js.map +1 -0
  286. package/dist/src/scripts/github-import/github-client.d.ts +5 -5
  287. package/dist/src/scripts/github-import/github-client.d.ts.map +1 -1
  288. package/dist/src/scripts/github-import/github-client.js +5 -204
  289. package/dist/src/scripts/github-import/github-client.js.map +1 -1
  290. package/dist/src/scripts/ingest-lenny-skills.d.ts +40 -0
  291. package/dist/src/scripts/ingest-lenny-skills.d.ts.map +1 -0
  292. package/dist/src/scripts/ingest-lenny-skills.js +346 -0
  293. package/dist/src/scripts/ingest-lenny-skills.js.map +1 -0
  294. package/dist/src/scripts/merge-skills.d.ts +5 -27
  295. package/dist/src/scripts/merge-skills.d.ts.map +1 -1
  296. package/dist/src/scripts/merge-skills.js +4 -144
  297. package/dist/src/scripts/merge-skills.js.map +1 -1
  298. package/dist/src/scripts/merge-types.d.ts +72 -0
  299. package/dist/src/scripts/merge-types.d.ts.map +1 -0
  300. package/dist/src/scripts/merge-types.js +7 -0
  301. package/dist/src/scripts/merge-types.js.map +1 -0
  302. package/dist/src/scripts/merge-utils.d.ts +23 -0
  303. package/dist/src/scripts/merge-utils.d.ts.map +1 -0
  304. package/dist/src/scripts/merge-utils.js +150 -0
  305. package/dist/src/scripts/merge-utils.js.map +1 -0
  306. package/dist/src/scripts/review-categories.d.ts +41 -0
  307. package/dist/src/scripts/review-categories.d.ts.map +1 -0
  308. package/dist/src/scripts/review-categories.js +316 -0
  309. package/dist/src/scripts/review-categories.js.map +1 -0
  310. package/dist/src/scripts/review-lenny-skills.d.ts +26 -0
  311. package/dist/src/scripts/review-lenny-skills.d.ts.map +1 -0
  312. package/dist/src/scripts/review-lenny-skills.js +215 -0
  313. package/dist/src/scripts/review-lenny-skills.js.map +1 -0
  314. package/dist/src/scripts/sync-to-supabase.d.ts +10 -0
  315. package/dist/src/scripts/sync-to-supabase.d.ts.map +1 -0
  316. package/dist/src/scripts/sync-to-supabase.js +93 -0
  317. package/dist/src/scripts/sync-to-supabase.js.map +1 -0
  318. package/dist/src/security/AuditLogger.d.ts +4 -75
  319. package/dist/src/security/AuditLogger.d.ts.map +1 -1
  320. package/dist/src/security/AuditLogger.js +3 -12
  321. package/dist/src/security/AuditLogger.js.map +1 -1
  322. package/dist/src/security/__tests__/pathValidation.test.js.map +1 -1
  323. package/dist/src/security/audit-types.d.ts +96 -0
  324. package/dist/src/security/audit-types.d.ts.map +1 -0
  325. package/dist/src/security/audit-types.js +15 -0
  326. package/dist/src/security/audit-types.js.map +1 -0
  327. package/dist/src/security/sanitization.d.ts +1 -85
  328. package/dist/src/security/sanitization.d.ts.map +1 -1
  329. package/dist/src/security/sanitization.js +2 -133
  330. package/dist/src/security/sanitization.js.map +1 -1
  331. package/dist/src/security/scanner/SecurityScanner.d.ts +12 -88
  332. package/dist/src/security/scanner/SecurityScanner.d.ts.map +1 -1
  333. package/dist/src/security/scanner/SecurityScanner.formatters.d.ts +49 -0
  334. package/dist/src/security/scanner/SecurityScanner.formatters.d.ts.map +1 -0
  335. package/dist/src/security/scanner/SecurityScanner.formatters.js +139 -0
  336. package/dist/src/security/scanner/SecurityScanner.formatters.js.map +1 -0
  337. package/dist/src/security/scanner/SecurityScanner.helpers.d.ts +40 -0
  338. package/dist/src/security/scanner/SecurityScanner.helpers.d.ts.map +1 -0
  339. package/dist/src/security/scanner/SecurityScanner.helpers.js +142 -0
  340. package/dist/src/security/scanner/SecurityScanner.helpers.js.map +1 -0
  341. package/dist/src/security/scanner/SecurityScanner.js +26 -255
  342. package/dist/src/security/scanner/SecurityScanner.js.map +1 -1
  343. package/dist/src/security/stripe-validators.d.ts +92 -0
  344. package/dist/src/security/stripe-validators.d.ts.map +1 -0
  345. package/dist/src/security/stripe-validators.js +139 -0
  346. package/dist/src/security/stripe-validators.js.map +1 -0
  347. package/dist/src/services/SearchService.d.ts +5 -29
  348. package/dist/src/services/SearchService.d.ts.map +1 -1
  349. package/dist/src/services/SearchService.helpers.d.ts +42 -0
  350. package/dist/src/services/SearchService.helpers.d.ts.map +1 -0
  351. package/dist/src/services/SearchService.helpers.js +128 -0
  352. package/dist/src/services/SearchService.helpers.js.map +1 -0
  353. package/dist/src/services/SearchService.js +142 -128
  354. package/dist/src/services/SearchService.js.map +1 -1
  355. package/dist/src/services/SearchService.types.d.ts +53 -0
  356. package/dist/src/services/SearchService.types.d.ts.map +1 -0
  357. package/dist/src/services/SearchService.types.js +7 -0
  358. package/dist/src/services/SearchService.types.js.map +1 -0
  359. package/dist/src/services/SkillAnalyzer.d.ts +37 -0
  360. package/dist/src/services/SkillAnalyzer.d.ts.map +1 -0
  361. package/dist/src/services/SkillAnalyzer.helpers.d.ts +103 -0
  362. package/dist/src/services/SkillAnalyzer.helpers.d.ts.map +1 -0
  363. package/dist/src/services/SkillAnalyzer.helpers.js +237 -0
  364. package/dist/src/services/SkillAnalyzer.helpers.js.map +1 -0
  365. package/dist/src/services/SkillAnalyzer.js +270 -0
  366. package/dist/src/services/SkillAnalyzer.js.map +1 -0
  367. package/dist/src/services/SkillAnalyzer.types.d.ts +110 -0
  368. package/dist/src/services/SkillAnalyzer.types.d.ts.map +1 -0
  369. package/dist/src/services/SkillAnalyzer.types.js +9 -0
  370. package/dist/src/services/SkillAnalyzer.types.js.map +1 -0
  371. package/dist/src/services/SkillDecomposer.d.ts +37 -0
  372. package/dist/src/services/SkillDecomposer.d.ts.map +1 -0
  373. package/dist/src/services/SkillDecomposer.helpers.d.ts +75 -0
  374. package/dist/src/services/SkillDecomposer.helpers.d.ts.map +1 -0
  375. package/dist/src/services/SkillDecomposer.helpers.js +277 -0
  376. package/dist/src/services/SkillDecomposer.helpers.js.map +1 -0
  377. package/dist/src/services/SkillDecomposer.js +116 -0
  378. package/dist/src/services/SkillDecomposer.js.map +1 -0
  379. package/dist/src/services/SkillDecomposer.types.d.ts +104 -0
  380. package/dist/src/services/SkillDecomposer.types.d.ts.map +1 -0
  381. package/dist/src/services/SkillDecomposer.types.js +9 -0
  382. package/dist/src/services/SkillDecomposer.types.js.map +1 -0
  383. package/dist/src/services/SubagentGenerator.d.ts +77 -0
  384. package/dist/src/services/SubagentGenerator.d.ts.map +1 -0
  385. package/dist/src/services/SubagentGenerator.js +352 -0
  386. package/dist/src/services/SubagentGenerator.js.map +1 -0
  387. package/dist/src/services/TaskRunner.d.ts +227 -0
  388. package/dist/src/services/TaskRunner.d.ts.map +1 -0
  389. package/dist/src/services/TaskRunner.js +423 -0
  390. package/dist/src/services/TaskRunner.js.map +1 -0
  391. package/dist/src/services/TransformationService.d.ts +167 -0
  392. package/dist/src/services/TransformationService.d.ts.map +1 -0
  393. package/dist/src/services/TransformationService.js +315 -0
  394. package/dist/src/services/TransformationService.js.map +1 -0
  395. package/dist/src/services/__tests__/SkillAnalyzer.test.d.ts +6 -0
  396. package/dist/src/services/__tests__/SkillAnalyzer.test.d.ts.map +1 -0
  397. package/dist/src/services/__tests__/SkillAnalyzer.test.js +177 -0
  398. package/dist/src/services/__tests__/SkillAnalyzer.test.js.map +1 -0
  399. package/dist/src/services/__tests__/SkillDecomposer.test.d.ts +6 -0
  400. package/dist/src/services/__tests__/SkillDecomposer.test.d.ts.map +1 -0
  401. package/dist/src/services/__tests__/SkillDecomposer.test.js +235 -0
  402. package/dist/src/services/__tests__/SkillDecomposer.test.js.map +1 -0
  403. package/dist/src/services/__tests__/SubagentGenerator.test.d.ts +6 -0
  404. package/dist/src/services/__tests__/SubagentGenerator.test.d.ts.map +1 -0
  405. package/dist/src/services/__tests__/SubagentGenerator.test.js +174 -0
  406. package/dist/src/services/__tests__/SubagentGenerator.test.js.map +1 -0
  407. package/dist/src/services/__tests__/TaskRunner.test.d.ts +7 -0
  408. package/dist/src/services/__tests__/TaskRunner.test.d.ts.map +1 -0
  409. package/dist/src/services/__tests__/TaskRunner.test.js +316 -0
  410. package/dist/src/services/__tests__/TaskRunner.test.js.map +1 -0
  411. package/dist/src/services/__tests__/TransformationService.test.d.ts +6 -0
  412. package/dist/src/services/__tests__/TransformationService.test.d.ts.map +1 -0
  413. package/dist/src/services/__tests__/TransformationService.test.js +244 -0
  414. package/dist/src/services/__tests__/TransformationService.test.js.map +1 -0
  415. package/dist/src/session/SessionContext.js +1 -1
  416. package/dist/src/session/SessionContext.js.map +1 -1
  417. package/dist/src/session/SessionManager.d.ts +3 -67
  418. package/dist/src/session/SessionManager.d.ts.map +1 -1
  419. package/dist/src/session/SessionManager.helpers.d.ts +68 -0
  420. package/dist/src/session/SessionManager.helpers.d.ts.map +1 -0
  421. package/dist/src/session/SessionManager.helpers.js +152 -0
  422. package/dist/src/session/SessionManager.helpers.js.map +1 -0
  423. package/dist/src/session/SessionManager.js +58 -163
  424. package/dist/src/session/SessionManager.js.map +1 -1
  425. package/dist/src/session/SessionManager.types.d.ts +88 -0
  426. package/dist/src/session/SessionManager.types.d.ts.map +1 -0
  427. package/dist/src/session/SessionManager.types.js +27 -0
  428. package/dist/src/session/SessionManager.types.js.map +1 -0
  429. package/dist/src/session/SessionRecovery.d.ts.map +1 -1
  430. package/dist/src/session/SessionRecovery.js +3 -2
  431. package/dist/src/session/SessionRecovery.js.map +1 -1
  432. package/dist/src/sources/RawUrlSourceAdapter.js.map +1 -1
  433. package/dist/src/sources/SourceAdapterRegistry.js +1 -1
  434. package/dist/src/sources/SourceAdapterRegistry.js.map +1 -1
  435. package/dist/src/telemetry/metric-helpers.d.ts +47 -0
  436. package/dist/src/telemetry/metric-helpers.d.ts.map +1 -0
  437. package/dist/src/telemetry/metric-helpers.js +96 -0
  438. package/dist/src/telemetry/metric-helpers.js.map +1 -0
  439. package/dist/src/telemetry/metric-types.d.ts +73 -0
  440. package/dist/src/telemetry/metric-types.d.ts.map +1 -0
  441. package/dist/src/telemetry/metric-types.js +9 -0
  442. package/dist/src/telemetry/metric-types.js.map +1 -0
  443. package/dist/src/telemetry/metrics.d.ts +8 -119
  444. package/dist/src/telemetry/metrics.d.ts.map +1 -1
  445. package/dist/src/telemetry/metrics.js +20 -193
  446. package/dist/src/telemetry/metrics.js.map +1 -1
  447. package/dist/src/telemetry/span-utils.d.ts +30 -0
  448. package/dist/src/telemetry/span-utils.d.ts.map +1 -0
  449. package/dist/src/telemetry/span-utils.js +62 -0
  450. package/dist/src/telemetry/span-utils.js.map +1 -0
  451. package/dist/src/telemetry/tracer-types.d.ts +91 -0
  452. package/dist/src/telemetry/tracer-types.d.ts.map +1 -0
  453. package/dist/src/telemetry/tracer-types.js +6 -0
  454. package/dist/src/telemetry/tracer-types.js.map +1 -0
  455. package/dist/src/telemetry/tracer.d.ts +5 -122
  456. package/dist/src/telemetry/tracer.d.ts.map +1 -1
  457. package/dist/src/telemetry/tracer.js +24 -170
  458. package/dist/src/telemetry/tracer.js.map +1 -1
  459. package/dist/src/testing/MultiLLMProvider.d.ts +17 -293
  460. package/dist/src/testing/MultiLLMProvider.d.ts.map +1 -1
  461. package/dist/src/testing/MultiLLMProvider.helpers.d.ts +54 -0
  462. package/dist/src/testing/MultiLLMProvider.helpers.d.ts.map +1 -0
  463. package/dist/src/testing/MultiLLMProvider.helpers.js +126 -0
  464. package/dist/src/testing/MultiLLMProvider.helpers.js.map +1 -0
  465. package/dist/src/testing/MultiLLMProvider.js +50 -323
  466. package/dist/src/testing/MultiLLMProvider.js.map +1 -1
  467. package/dist/src/testing/MultiLLMProvider.types.d.ts +253 -0
  468. package/dist/src/testing/MultiLLMProvider.types.d.ts.map +1 -0
  469. package/dist/src/testing/MultiLLMProvider.types.js +111 -0
  470. package/dist/src/testing/MultiLLMProvider.types.js.map +1 -0
  471. package/dist/src/triggers/TriggerDetector.d.ts +6 -142
  472. package/dist/src/triggers/TriggerDetector.d.ts.map +1 -1
  473. package/dist/src/triggers/TriggerDetector.js +15 -247
  474. package/dist/src/triggers/TriggerDetector.js.map +1 -1
  475. package/dist/src/triggers/__tests__/TriggerDetector.test.js +1 -1
  476. package/dist/src/triggers/__tests__/TriggerDetector.test.js.map +1 -1
  477. package/dist/src/triggers/trigger-constants.d.ts +22 -0
  478. package/dist/src/triggers/trigger-constants.d.ts.map +1 -0
  479. package/dist/src/triggers/trigger-constants.js +185 -0
  480. package/dist/src/triggers/trigger-constants.js.map +1 -0
  481. package/dist/src/triggers/trigger-types.d.ts +90 -0
  482. package/dist/src/triggers/trigger-types.d.ts.map +1 -0
  483. package/dist/src/triggers/trigger-types.js +6 -0
  484. package/dist/src/triggers/trigger-types.js.map +1 -0
  485. package/dist/src/types/skill.d.ts +33 -1
  486. package/dist/src/types/skill.d.ts.map +1 -1
  487. package/dist/src/types/skill.js +11 -1
  488. package/dist/src/types/skill.js.map +1 -1
  489. package/dist/src/types.d.ts +28 -2
  490. package/dist/src/types.d.ts.map +1 -1
  491. package/dist/src/types.js +1 -0
  492. package/dist/src/types.js.map +1 -1
  493. package/dist/src/utils/retry.js +2 -2
  494. package/dist/src/utils/retry.js.map +1 -1
  495. package/dist/src/validation/index.d.ts +5 -105
  496. package/dist/src/validation/index.d.ts.map +1 -1
  497. package/dist/src/validation/index.js +9 -421
  498. package/dist/src/validation/index.js.map +1 -1
  499. package/dist/src/validation/input-validators.d.ts +68 -0
  500. package/dist/src/validation/input-validators.d.ts.map +1 -0
  501. package/dist/src/validation/input-validators.js +126 -0
  502. package/dist/src/validation/input-validators.js.map +1 -0
  503. package/dist/src/validation/path-validators.d.ts +23 -0
  504. package/dist/src/validation/path-validators.d.ts.map +1 -0
  505. package/dist/src/validation/path-validators.js +47 -0
  506. package/dist/src/validation/path-validators.js.map +1 -0
  507. package/dist/src/validation/url-validators.d.ts +55 -0
  508. package/dist/src/validation/url-validators.d.ts.map +1 -0
  509. package/dist/src/validation/url-validators.js +267 -0
  510. package/dist/src/validation/url-validators.js.map +1 -0
  511. package/dist/src/validation/validation-error.d.ts +14 -0
  512. package/dist/src/validation/validation-error.d.ts.map +1 -0
  513. package/dist/src/validation/validation-error.js +19 -0
  514. package/dist/src/validation/validation-error.js.map +1 -0
  515. package/dist/src/webhooks/WebhookHandler.d.ts.map +1 -1
  516. package/dist/src/webhooks/WebhookHandler.js.map +1 -1
  517. package/dist/src/webhooks/WebhookPayload.d.ts +4 -215
  518. package/dist/src/webhooks/WebhookPayload.d.ts.map +1 -1
  519. package/dist/src/webhooks/WebhookPayload.js +1 -122
  520. package/dist/src/webhooks/WebhookPayload.js.map +1 -1
  521. package/dist/src/webhooks/WebhookQueue.d.ts +2 -140
  522. package/dist/src/webhooks/WebhookQueue.d.ts.map +1 -1
  523. package/dist/src/webhooks/WebhookQueue.js +4 -11
  524. package/dist/src/webhooks/WebhookQueue.js.map +1 -1
  525. package/dist/src/webhooks/WebhookQueue.types.d.ts +149 -0
  526. package/dist/src/webhooks/WebhookQueue.types.d.ts.map +1 -0
  527. package/dist/src/webhooks/WebhookQueue.types.js +10 -0
  528. package/dist/src/webhooks/WebhookQueue.types.js.map +1 -0
  529. package/dist/src/webhooks/WebhookQueue.utils.d.ts +44 -0
  530. package/dist/src/webhooks/WebhookQueue.utils.d.ts.map +1 -0
  531. package/dist/src/webhooks/WebhookQueue.utils.js +58 -0
  532. package/dist/src/webhooks/WebhookQueue.utils.js.map +1 -0
  533. package/dist/src/webhooks/webhook-schemas.d.ts +213 -0
  534. package/dist/src/webhooks/webhook-schemas.d.ts.map +1 -0
  535. package/dist/src/webhooks/webhook-schemas.js +132 -0
  536. package/dist/src/webhooks/webhook-schemas.js.map +1 -0
  537. package/dist/src/webhooks/webhook-types.d.ts +222 -0
  538. package/dist/src/webhooks/webhook-types.d.ts.map +1 -0
  539. package/dist/src/webhooks/webhook-types.js +10 -0
  540. package/dist/src/webhooks/webhook-types.js.map +1 -0
  541. package/dist/tests/Analytics.integration.test.js +2 -2
  542. package/dist/tests/Analytics.integration.test.js.map +1 -1
  543. package/dist/tests/AnalyticsRepository.test.js +3 -5
  544. package/dist/tests/AnalyticsRepository.test.js.map +1 -1
  545. package/dist/tests/AnalyticsStorage.test.js.map +1 -1
  546. package/dist/tests/ApiPartialResponses.test.d.ts +12 -0
  547. package/dist/tests/ApiPartialResponses.test.d.ts.map +1 -0
  548. package/dist/tests/ApiPartialResponses.test.js +202 -0
  549. package/dist/tests/ApiPartialResponses.test.js.map +1 -0
  550. package/dist/tests/AuditLogger.test.js.map +1 -1
  551. package/dist/tests/BenchmarkRunner.test.js +6 -6
  552. package/dist/tests/BenchmarkRunner.test.js.map +1 -1
  553. package/dist/tests/CacheSecurity.test.js.map +1 -1
  554. package/dist/tests/CodebaseAnalyzer.test.js.map +1 -1
  555. package/dist/tests/DailyIndexPipeline.test.js.map +1 -1
  556. package/dist/tests/EmbeddingService.test.js.map +1 -1
  557. package/dist/tests/GitHubIndexer.test.js +4 -3
  558. package/dist/tests/GitHubIndexer.test.js.map +1 -1
  559. package/dist/tests/MemoryProfiler.test.js +3 -3
  560. package/dist/tests/MemoryProfiler.test.js.map +1 -1
  561. package/dist/tests/QualityScorer.test.js.map +1 -1
  562. package/dist/tests/RateLimiter.test.js.map +1 -1
  563. package/dist/tests/ScraperAdapters.test.js.map +1 -1
  564. package/dist/tests/SecurityScanner.test.js +4 -4
  565. package/dist/tests/SecurityScanner.test.js.map +1 -1
  566. package/dist/tests/SessionManager.security.test.js +1 -1
  567. package/dist/tests/SessionManager.security.test.js.map +1 -1
  568. package/dist/tests/SessionManager.test.js +4 -4
  569. package/dist/tests/SessionManager.test.js.map +1 -1
  570. package/dist/tests/SwarmIndexer.test.js +1 -1
  571. package/dist/tests/SwarmIndexer.test.js.map +1 -1
  572. package/dist/tests/TieredCache.test.js +2 -11
  573. package/dist/tests/TieredCache.test.js.map +1 -1
  574. package/dist/tests/WebhookHandler.test.js.map +1 -1
  575. package/dist/tests/fixtures/api-responses/index.d.ts +119 -0
  576. package/dist/tests/fixtures/api-responses/index.d.ts.map +1 -0
  577. package/dist/tests/fixtures/api-responses/index.js +419 -0
  578. package/dist/tests/fixtures/api-responses/index.js.map +1 -0
  579. package/dist/tests/integration/neural/neural-fixtures.d.ts +19 -0
  580. package/dist/tests/integration/neural/neural-fixtures.d.ts.map +1 -0
  581. package/dist/tests/integration/neural/neural-fixtures.js +49 -0
  582. package/dist/tests/integration/neural/neural-fixtures.js.map +1 -0
  583. package/dist/tests/integration/neural/neural-mocks-privacy.d.ts +78 -0
  584. package/dist/tests/integration/neural/neural-mocks-privacy.d.ts.map +1 -0
  585. package/dist/tests/integration/neural/neural-mocks-privacy.js +146 -0
  586. package/dist/tests/integration/neural/neural-mocks-privacy.js.map +1 -0
  587. package/dist/tests/integration/neural/neural-mocks.d.ts +90 -0
  588. package/dist/tests/integration/neural/neural-mocks.d.ts.map +1 -0
  589. package/dist/tests/integration/neural/neural-mocks.js +288 -0
  590. package/dist/tests/integration/neural/neural-mocks.js.map +1 -0
  591. package/dist/tests/integration/neural/neural-test-utils.d.ts +27 -0
  592. package/dist/tests/integration/neural/neural-test-utils.d.ts.map +1 -0
  593. package/dist/tests/integration/neural/neural-test-utils.js +35 -0
  594. package/dist/tests/integration/neural/neural-test-utils.js.map +1 -0
  595. package/dist/tests/integration/neural/setup.d.ts +6 -165
  596. package/dist/tests/integration/neural/setup.d.ts.map +1 -1
  597. package/dist/tests/integration/neural/setup.js +9 -477
  598. package/dist/tests/integration/neural/setup.js.map +1 -1
  599. package/dist/tests/logger.test.js +1 -1
  600. package/dist/tests/logger.test.js.map +1 -1
  601. package/dist/tests/performance/LargeScalePerformance.test.js +1 -1
  602. package/dist/tests/performance/LargeScalePerformance.test.js.map +1 -1
  603. package/dist/tests/sanitization.test.js.map +1 -1
  604. package/dist/tests/session/SessionManager.helpers.test.d.ts +8 -0
  605. package/dist/tests/session/SessionManager.helpers.test.d.ts.map +1 -0
  606. package/dist/tests/session/SessionManager.helpers.test.js +105 -0
  607. package/dist/tests/session/SessionManager.helpers.test.js.map +1 -0
  608. package/dist/tests/sources.test.js.map +1 -1
  609. package/dist/tests/webhooks/WebhookHandler.idempotency.test.js +1 -1
  610. package/dist/tests/webhooks/WebhookHandler.idempotency.test.js.map +1 -1
  611. package/dist/tests/webhooks/WebhookPayload.security.test.js.map +1 -1
  612. package/package.json +11 -11
@@ -0,0 +1,253 @@
1
+ /**
2
+ * Multi-LLM Provider Type Definitions
3
+ * @module @skillsmith/core/testing/MultiLLMProvider.types
4
+ */
5
+ /**
6
+ * Supported LLM providers
7
+ */
8
+ export type LLMProviderType = 'anthropic' | 'openai' | 'google' | 'cohere' | 'ollama';
9
+ /**
10
+ * Provider priority for selection
11
+ */
12
+ export type ProviderPriority = 'quality' | 'speed' | 'cost' | 'privacy';
13
+ /**
14
+ * Load balancing strategies
15
+ */
16
+ export type LoadBalanceStrategy = 'round-robin' | 'least-loaded' | 'latency-based' | 'cost-based';
17
+ /**
18
+ * Failover condition triggers
19
+ */
20
+ export type FailoverCondition = 'error' | 'rate_limit' | 'timeout' | 'cost' | 'unavailable';
21
+ /**
22
+ * Provider configuration
23
+ */
24
+ export interface ProviderConfig {
25
+ /** Provider type */
26
+ provider: LLMProviderType;
27
+ /** Model identifier */
28
+ model: string;
29
+ /** API key (from environment) */
30
+ apiKey?: string;
31
+ /** API URL (for Ollama/custom) */
32
+ apiUrl?: string;
33
+ /** Whether provider is enabled */
34
+ enabled: boolean;
35
+ /** Provider priority */
36
+ priority: ProviderPriority;
37
+ /** Maximum concurrent requests */
38
+ maxConcurrency?: number;
39
+ /** Request timeout in ms */
40
+ timeoutMs?: number;
41
+ /** Cost per 1K tokens (input) */
42
+ costPerInputToken?: number;
43
+ /** Cost per 1K tokens (output) */
44
+ costPerOutputToken?: number;
45
+ }
46
+ /**
47
+ * Fallback rule configuration
48
+ */
49
+ export interface FallbackRule {
50
+ /** Condition that triggers fallback */
51
+ condition: FailoverCondition;
52
+ /** Error codes that trigger this rule */
53
+ errorCodes?: string[];
54
+ /** Providers to try in order */
55
+ fallbackProviders: LLMProviderType[];
56
+ /** Fallback models (optional) */
57
+ fallbackModels?: string[];
58
+ /** Whether to retry original provider after cooling */
59
+ retryOriginal: boolean;
60
+ /** Delay before retry in ms */
61
+ retryDelayMs?: number;
62
+ }
63
+ /**
64
+ * Fallback strategy configuration
65
+ */
66
+ export interface FallbackStrategy {
67
+ /** Strategy name */
68
+ name: string;
69
+ /** Whether fallback is enabled */
70
+ enabled: boolean;
71
+ /** Fallback rules in priority order */
72
+ rules: FallbackRule[];
73
+ /** Maximum retry attempts */
74
+ maxAttempts: number;
75
+ }
76
+ /**
77
+ * Circuit breaker configuration
78
+ */
79
+ export interface CircuitBreakerConfig {
80
+ /** Request timeout in ms */
81
+ timeoutMs: number;
82
+ /** Error percentage to open circuit */
83
+ errorThresholdPercentage: number;
84
+ /** Time before trying half-open in ms */
85
+ resetTimeoutMs: number;
86
+ /** Minimum requests before calculating error rate */
87
+ volumeThreshold: number;
88
+ }
89
+ /**
90
+ * Multi-LLM provider configuration
91
+ */
92
+ export interface MultiLLMProviderConfig {
93
+ /** Provider configurations (optional, defaults available) */
94
+ providers?: Partial<Record<LLMProviderType, ProviderConfig>>;
95
+ /** Default provider (optional, defaults to 'anthropic') */
96
+ defaultProvider?: LLMProviderType;
97
+ /** Fallback strategy */
98
+ fallbackStrategy?: FallbackStrategy;
99
+ /** Load balancing configuration */
100
+ loadBalancing?: {
101
+ enabled: boolean;
102
+ strategy: LoadBalanceStrategy;
103
+ };
104
+ /** Cost optimization */
105
+ costOptimization?: {
106
+ enabled: boolean;
107
+ maxCostPerRequest?: number;
108
+ preferredProviders?: LLMProviderType[];
109
+ };
110
+ /** Circuit breaker configuration */
111
+ circuitBreaker?: CircuitBreakerConfig;
112
+ /** Enable metrics collection */
113
+ enableMetrics?: boolean;
114
+ /** Enable V3 ProviderManager integration */
115
+ useV3Integration?: boolean;
116
+ }
117
+ /**
118
+ * Provider health check result
119
+ */
120
+ export interface HealthCheckResult {
121
+ /** Whether provider is healthy */
122
+ healthy: boolean;
123
+ /** Latency in ms */
124
+ latencyMs?: number;
125
+ /** Error message if unhealthy */
126
+ error?: string;
127
+ /** Check timestamp */
128
+ timestamp: Date;
129
+ /** Additional details */
130
+ details?: Record<string, unknown>;
131
+ }
132
+ /**
133
+ * Provider status
134
+ */
135
+ export interface ProviderStatus {
136
+ /** Whether provider is available */
137
+ available: boolean;
138
+ /** Current load (0-1) */
139
+ currentLoad: number;
140
+ /** Queue length */
141
+ queueLength: number;
142
+ /** Active requests */
143
+ activeRequests: number;
144
+ /** Rate limit remaining */
145
+ rateLimitRemaining?: number;
146
+ /** Rate limit reset time */
147
+ rateLimitReset?: Date;
148
+ /** Circuit breaker state */
149
+ circuitState: 'closed' | 'open' | 'half-open';
150
+ }
151
+ /**
152
+ * LLM request
153
+ */
154
+ export interface LLMRequest {
155
+ /** Messages */
156
+ messages: Array<{
157
+ role: 'system' | 'user' | 'assistant';
158
+ content: string;
159
+ }>;
160
+ /** Model override */
161
+ model?: string;
162
+ /** Provider override */
163
+ provider?: LLMProviderType;
164
+ /** Max tokens */
165
+ maxTokens?: number;
166
+ /** Temperature */
167
+ temperature?: number;
168
+ /** Cost constraints */
169
+ costConstraints?: {
170
+ maxCost: number;
171
+ };
172
+ /** Request metadata */
173
+ metadata?: Record<string, unknown>;
174
+ }
175
+ /**
176
+ * LLM response
177
+ */
178
+ export interface LLMResponse {
179
+ /** Response content */
180
+ content: string;
181
+ /** Provider that handled the request */
182
+ provider: LLMProviderType;
183
+ /** Model used */
184
+ model: string;
185
+ /** Token usage */
186
+ usage: {
187
+ inputTokens: number;
188
+ outputTokens: number;
189
+ totalTokens: number;
190
+ };
191
+ /** Cost estimate */
192
+ cost: number;
193
+ /** Latency in ms */
194
+ latencyMs: number;
195
+ /** Whether fallback was used */
196
+ usedFallback: boolean;
197
+ /** Fallback chain (if used) */
198
+ fallbackChain?: LLMProviderType[];
199
+ }
200
+ /**
201
+ * Provider metrics
202
+ */
203
+ export interface ProviderMetrics {
204
+ /** Provider */
205
+ provider: LLMProviderType;
206
+ /** Timestamp */
207
+ timestamp: Date;
208
+ /** Average latency in ms */
209
+ avgLatencyMs: number;
210
+ /** Error rate (0-1) */
211
+ errorRate: number;
212
+ /** Success rate (0-1) */
213
+ successRate: number;
214
+ /** Current load (0-1) */
215
+ load: number;
216
+ /** Total cost */
217
+ totalCost: number;
218
+ /** Total requests */
219
+ totalRequests: number;
220
+ /** Availability (0-1) */
221
+ availability: number;
222
+ }
223
+ /**
224
+ * Skill compatibility test result
225
+ */
226
+ export interface SkillCompatibilityResult {
227
+ /** Skill ID */
228
+ skillId: string;
229
+ /** Results by provider */
230
+ results: Record<LLMProviderType, {
231
+ compatible: boolean;
232
+ score: number;
233
+ latencyMs: number;
234
+ error?: string;
235
+ notes?: string;
236
+ }>;
237
+ /** Overall compatibility score (0-1) */
238
+ overallScore: number;
239
+ /** Recommended providers */
240
+ recommendedProviders: LLMProviderType[];
241
+ /** Test timestamp */
242
+ testedAt: Date;
243
+ }
244
+ /** Full configuration type with required fields */
245
+ export type ResolvedMultiLLMConfig = Required<Omit<MultiLLMProviderConfig, 'providers' | 'fallbackStrategy'>> & {
246
+ providers: Partial<Record<LLMProviderType, ProviderConfig>>;
247
+ fallbackStrategy: FallbackStrategy;
248
+ };
249
+ /**
250
+ * Default multi-LLM provider configuration
251
+ */
252
+ export declare const DEFAULT_MULTI_LLM_CONFIG: ResolvedMultiLLMConfig;
253
+ //# sourceMappingURL=MultiLLMProvider.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiLLMProvider.types.d.ts","sourceRoot":"","sources":["../../../src/testing/MultiLLMProvider.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * Multi-LLM Provider Type Definitions
3
+ * @module @skillsmith/core/testing/MultiLLMProvider.types
4
+ */
5
+ /**
6
+ * Default multi-LLM provider configuration
7
+ */
8
+ export const DEFAULT_MULTI_LLM_CONFIG = {
9
+ providers: {
10
+ anthropic: {
11
+ provider: 'anthropic',
12
+ model: 'claude-sonnet-4-20250514',
13
+ enabled: true,
14
+ priority: 'quality',
15
+ maxConcurrency: 50,
16
+ timeoutMs: 60000,
17
+ costPerInputToken: 0.003,
18
+ costPerOutputToken: 0.015,
19
+ },
20
+ openai: {
21
+ provider: 'openai',
22
+ model: 'gpt-4-turbo-preview',
23
+ enabled: true,
24
+ priority: 'speed',
25
+ maxConcurrency: 100,
26
+ timeoutMs: 30000,
27
+ costPerInputToken: 0.01,
28
+ costPerOutputToken: 0.03,
29
+ },
30
+ google: {
31
+ provider: 'google',
32
+ model: 'gemini-pro',
33
+ enabled: true,
34
+ priority: 'cost',
35
+ maxConcurrency: 60,
36
+ timeoutMs: 45000,
37
+ costPerInputToken: 0.00025,
38
+ costPerOutputToken: 0.0005,
39
+ },
40
+ cohere: {
41
+ provider: 'cohere',
42
+ model: 'command-r-plus',
43
+ enabled: true,
44
+ priority: 'cost',
45
+ maxConcurrency: 40,
46
+ timeoutMs: 45000,
47
+ costPerInputToken: 0.003,
48
+ costPerOutputToken: 0.015,
49
+ },
50
+ ollama: {
51
+ provider: 'ollama',
52
+ model: 'llama2',
53
+ apiUrl: 'http://localhost:11434',
54
+ enabled: false, // Disabled by default (requires local setup)
55
+ priority: 'privacy',
56
+ maxConcurrency: 10,
57
+ timeoutMs: 120000,
58
+ costPerInputToken: 0,
59
+ costPerOutputToken: 0,
60
+ },
61
+ },
62
+ defaultProvider: 'anthropic',
63
+ fallbackStrategy: {
64
+ name: 'resilient',
65
+ enabled: true,
66
+ maxAttempts: 3,
67
+ rules: [
68
+ {
69
+ condition: 'rate_limit',
70
+ fallbackProviders: ['openai', 'google', 'cohere'],
71
+ retryOriginal: false,
72
+ retryDelayMs: 5000,
73
+ },
74
+ {
75
+ condition: 'unavailable',
76
+ fallbackProviders: ['openai', 'google', 'cohere', 'ollama'],
77
+ retryOriginal: true,
78
+ retryDelayMs: 10000,
79
+ },
80
+ {
81
+ condition: 'timeout',
82
+ fallbackProviders: ['openai', 'google'],
83
+ retryOriginal: false,
84
+ retryDelayMs: 2000,
85
+ },
86
+ {
87
+ condition: 'error',
88
+ fallbackProviders: ['openai', 'google', 'cohere'],
89
+ retryOriginal: false,
90
+ },
91
+ ],
92
+ },
93
+ loadBalancing: {
94
+ enabled: true,
95
+ strategy: 'cost-based',
96
+ },
97
+ costOptimization: {
98
+ enabled: true,
99
+ maxCostPerRequest: 0.05, // $0.05 max per request
100
+ preferredProviders: ['google', 'cohere', 'anthropic'],
101
+ },
102
+ circuitBreaker: {
103
+ timeoutMs: 30000,
104
+ errorThresholdPercentage: 50,
105
+ resetTimeoutMs: 30000,
106
+ volumeThreshold: 10,
107
+ },
108
+ enableMetrics: true,
109
+ useV3Integration: true,
110
+ };
111
+ //# sourceMappingURL=MultiLLMProvider.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiLLMProvider.types.js","sourceRoot":"","sources":["../../../src/testing/MultiLLMProvider.types.ts"],"names":[],"mappings":"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"}
@@ -3,120 +3,15 @@
3
3
  * @module @skillsmith/core/triggers/TriggerDetector
4
4
  * @see Phase 4: Trigger System Architecture
5
5
  *
6
- * Detects contexts where skill suggestions would be relevant based on:
7
- * - File patterns (*.test.ts → testing skills)
8
- * - Command patterns (git commit → commit skills)
9
- * - Error messages (ESLint error → linting skills)
10
- * - Project structure (React detected → React skills)
6
+ * Detects contexts where skill suggestions would be relevant.
11
7
  *
12
- * @example
13
- * const detector = new TriggerDetector(analyzer);
14
- * const triggers = await detector.detectTriggers('/path/to/project', {
15
- * currentFile: 'src/App.test.tsx',
16
- * recentCommands: ['npm test'],
17
- * });
8
+ * @see trigger-types.ts for type definitions
9
+ * @see trigger-constants.ts for default trigger configurations
18
10
  */
19
11
  import type { CodebaseContext } from '../analysis/CodebaseAnalyzer.js';
20
- /**
21
- * Trigger types for skill suggestions
22
- */
23
- export type TriggerType = 'file' | 'command' | 'error' | 'project';
24
- /**
25
- * File pattern trigger configuration
26
- */
27
- export interface FilePatternTrigger {
28
- /** Pattern to match against file paths */
29
- pattern: string | RegExp;
30
- /** Skill categories this trigger suggests */
31
- skillCategories: string[];
32
- /** Confidence level (0-1) */
33
- confidence: number;
34
- /** Human-readable description */
35
- description: string;
36
- }
37
- /**
38
- * Command pattern trigger configuration
39
- */
40
- export interface CommandTrigger {
41
- /** Pattern to match against commands */
42
- command: string | RegExp;
43
- /** Skill categories this trigger suggests */
44
- skillCategories: string[];
45
- /** Confidence level (0-1) */
46
- confidence: number;
47
- /** Human-readable description */
48
- description: string;
49
- }
50
- /**
51
- * Error pattern trigger configuration
52
- */
53
- export interface ErrorTrigger {
54
- /** Pattern to match against error messages */
55
- errorPattern: RegExp;
56
- /** Skill categories this trigger suggests */
57
- skillCategories: string[];
58
- /** Confidence level (0-1) */
59
- confidence: number;
60
- /** Human-readable description */
61
- description: string;
62
- }
63
- /**
64
- * Project structure trigger configuration
65
- */
66
- export interface ProjectTrigger {
67
- /** Function to detect if trigger applies to codebase */
68
- detector: (context: CodebaseContext) => boolean;
69
- /** Skill categories this trigger suggests */
70
- skillCategories: string[];
71
- /** Confidence level (0-1) */
72
- confidence: number;
73
- /** Human-readable description */
74
- description: string;
75
- }
76
- /**
77
- * Detected trigger with metadata
78
- */
79
- export interface DetectedTrigger {
80
- /** Type of trigger */
81
- type: TriggerType;
82
- /** Skill categories suggested */
83
- categories: string[];
84
- /** Confidence score (0-1) */
85
- confidence: number;
86
- /** Why this trigger fired */
87
- reason: string;
88
- /** Source that caused the trigger (file path, command, etc.) */
89
- source?: string;
90
- }
91
- /**
92
- * Options for trigger detection
93
- */
94
- export interface TriggerDetectionOptions {
95
- /** Current file being edited */
96
- currentFile?: string;
97
- /** Recent terminal commands (last 5) */
98
- recentCommands?: string[];
99
- /** Recent error message if any */
100
- errorMessage?: string;
101
- /** Minimum confidence threshold (default: 0.5) */
102
- minConfidence?: number;
103
- }
104
- /**
105
- * Default file pattern triggers
106
- */
107
- export declare const DEFAULT_FILE_TRIGGERS: FilePatternTrigger[];
108
- /**
109
- * Default command triggers
110
- */
111
- export declare const DEFAULT_COMMAND_TRIGGERS: CommandTrigger[];
112
- /**
113
- * Default error triggers
114
- */
115
- export declare const DEFAULT_ERROR_TRIGGERS: ErrorTrigger[];
116
- /**
117
- * Default project structure triggers
118
- */
119
- export declare const DEFAULT_PROJECT_TRIGGERS: ProjectTrigger[];
12
+ export type { TriggerType, FilePatternTrigger, CommandTrigger, ErrorTrigger, ProjectTrigger, DetectedTrigger, TriggerDetectionOptions, } from './trigger-types.js';
13
+ export { DEFAULT_FILE_TRIGGERS, DEFAULT_COMMAND_TRIGGERS, DEFAULT_ERROR_TRIGGERS, DEFAULT_PROJECT_TRIGGERS, } from './trigger-constants.js';
14
+ import type { FilePatternTrigger, CommandTrigger, ErrorTrigger, ProjectTrigger, DetectedTrigger, TriggerDetectionOptions } from './trigger-types.js';
120
15
  /**
121
16
  * TriggerDetector - Detects contexts for skill suggestions
122
17
  *
@@ -131,47 +26,16 @@ export declare class TriggerDetector {
131
26
  constructor(fileTriggers?: FilePatternTrigger[], commandTriggers?: CommandTrigger[], errorTriggers?: ErrorTrigger[], projectTriggers?: ProjectTrigger[]);
132
27
  /**
133
28
  * Detect all applicable triggers for the current context
134
- *
135
- * @param codebaseContext - Analysis of the project structure
136
- * @param options - Current context (file, commands, errors)
137
- * @returns Array of detected triggers
138
29
  */
139
30
  detectTriggers(codebaseContext: CodebaseContext | null, options?: TriggerDetectionOptions): DetectedTrigger[];
140
- /**
141
- * Detect file pattern triggers
142
- */
143
31
  private detectFilePatternTriggers;
144
- /**
145
- * Detect command pattern triggers
146
- */
147
32
  private detectCommandTriggers;
148
- /**
149
- * Detect error pattern triggers
150
- */
151
33
  private detectErrorTriggers;
152
- /**
153
- * Detect project structure triggers
154
- */
155
34
  private detectProjectTriggers;
156
- /**
157
- * Deduplicate triggers and rank by confidence
158
- */
159
35
  private deduplicateAndRank;
160
- /**
161
- * Add custom file pattern trigger
162
- */
163
36
  addFilePattern(trigger: FilePatternTrigger): void;
164
- /**
165
- * Add custom command trigger
166
- */
167
37
  addCommandPattern(trigger: CommandTrigger): void;
168
- /**
169
- * Add custom error trigger
170
- */
171
38
  addErrorPattern(trigger: ErrorTrigger): void;
172
- /**
173
- * Add custom project trigger
174
- */
175
39
  addProjectPattern(trigger: ProjectTrigger): void;
176
40
  }
177
41
  export default TriggerDetector;
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerDetector.d.ts","sourceRoot":"","sources":["../../../src/triggers/TriggerDetector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TriggerDetector.d.ts","sourceRoot":"","sources":["../../../src/triggers/TriggerDetector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAItE,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,uBAAuB,GACxB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,wBAAwB,CAAA;AAG/B,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,uBAAuB,EACxB,MAAM,oBAAoB,CAAA;AAW3B;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;gBAGvC,YAAY,GAAE,kBAAkB,EAA0B,EAC1D,eAAe,GAAE,cAAc,EAA6B,EAC5D,aAAa,GAAE,YAAY,EAA2B,EACtD,eAAe,GAAE,cAAc,EAA6B;IAe9D;;OAEG;IACH,cAAc,CACZ,eAAe,EAAE,eAAe,GAAG,IAAI,EACvC,OAAO,GAAE,uBAA4B,GACpC,eAAe,EAAE;IAapB,OAAO,CAAC,yBAAyB;IAoBjC,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,qBAAqB;IAmB7B,OAAO,CAAC,kBAAkB;IAa1B,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAKjD,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAKhD,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAK5C,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;CAIjD;AAED,eAAe,eAAe,CAAA"}