adaptive-memory-multi-model-router 2.14.49 → 2.14.51

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 (603) hide show
  1. package/.dockerignore +82 -0
  2. package/.env.example +303 -0
  3. package/.github/DISCUSSIONS_WELCOME.md +27 -0
  4. package/.github/DISCUSSION_TEMPLATE.yml +5 -0
  5. package/.github/FUNDING.yml +2 -0
  6. package/.github/ISSUE_TEMPLATE/bug_report.md +94 -0
  7. package/.github/ISSUE_TEMPLATE/config.yml +17 -0
  8. package/.github/ISSUE_TEMPLATE/feature_request.md +71 -0
  9. package/.github/PULL_REQUEST_TEMPLATE.md +71 -0
  10. package/.github/dependabot.yml +9 -0
  11. package/.github/workflows/auto-publish.yml +51 -0
  12. package/.github/workflows/ci.yml +263 -0
  13. package/.github/workflows/codeql.yml +38 -0
  14. package/.github/workflows/npm-publish.yml +20 -0
  15. package/.github/workflows/pages.yml +37 -0
  16. package/.github/workflows/stale.yml +54 -0
  17. package/.publish-tick +1 -0
  18. package/.well-known/ai-plugin.json +16 -0
  19. package/AGENT_COUNCIL_FINDINGS.md +142 -0
  20. package/ARCHITECTURE.md +346 -0
  21. package/AUDIT_REPORT.md +28 -0
  22. package/CODE_OF_CONDUCT.md +128 -0
  23. package/CONTRIBUTING.md +50 -0
  24. package/CONTRIBUTORS.md +20 -0
  25. package/Dockerfile +53 -0
  26. package/Dockerfile.proxy +33 -0
  27. package/HEALTH_REPORT.md +118 -0
  28. package/IMPROVEMENT_PLAN.md +107 -0
  29. package/LANDING.md +43 -0
  30. package/LAUNCH-PAIN-DRIVEN.md +339 -0
  31. package/LAUNCH.md +337 -0
  32. package/LAUNCH_CHECKLIST.md +141 -0
  33. package/LAUNCH_SNAPSHOT.md +260 -0
  34. package/MANIFESTO.md +41 -0
  35. package/POPULARITY_BOOSTERS.md +285 -0
  36. package/PR_STATUS_REPORT.md +148 -0
  37. package/README.md +10 -0
  38. package/REDESIGN.md +95 -0
  39. package/RUNKIT.md +83 -0
  40. package/SECURITY.md +29 -0
  41. package/SUBMISSIONS.md +43 -0
  42. package/_schema.html +53 -0
  43. package/ai-plugin.json +16 -0
  44. package/articles/AI_AGENT_LLM_ROUTING.md +150 -0
  45. package/articles/CHINESE_DIRECTORIES.md +100 -0
  46. package/articles/CHINESE_SUBMISSIONS_READY.md +322 -0
  47. package/articles/COMPETITOR_ALERTS.md +31 -0
  48. package/articles/COMPLETE_POSTING_DIRECTORY.md +147 -0
  49. package/articles/CONTENT_STRUCTURE.md +292 -0
  50. package/articles/DEVTO_COST_GUIDE.md +473 -0
  51. package/articles/DEVTO_FINAL.md +416 -0
  52. package/articles/DEVTO_MULTI_PROVIDER.md +542 -0
  53. package/articles/DEVTO_READY.md +255 -0
  54. package/articles/DEVTO_V2_ANNOUNCEMENT.md +160 -0
  55. package/articles/DEVTO_VIRAL_GROWTH.md +280 -0
  56. package/articles/FRESH_devto.md +460 -0
  57. package/articles/FRESH_devto_2026_05.md +73 -0
  58. package/articles/FRESH_hackernews.md +14 -0
  59. package/articles/FRESH_reddit_ml.md +90 -0
  60. package/articles/FRESH_reddit_node.md +198 -0
  61. package/articles/FRESH_reddit_sideproject.md +72 -0
  62. package/articles/FRESH_reddit_webdev.md +130 -0
  63. package/articles/FROM_ZERO_TO_10K.md +107 -0
  64. package/articles/HN_10X_BETTER.md +430 -0
  65. package/articles/HN_ACCOUNT_GUIDE.md +21 -0
  66. package/articles/HN_CHINESE_STYLE.md +308 -0
  67. package/articles/HN_FINAL.md +148 -0
  68. package/articles/HN_POSTED_VERSION.md +56 -0
  69. package/articles/HN_POST_READY.md +137 -0
  70. package/articles/HN_RESEARCH.md +364 -0
  71. package/articles/HN_SHOW_routerarena.md +17 -0
  72. package/articles/HN_TIMING_GUIDE.md +52 -0
  73. package/articles/INDIEHACKERS_POST.md +52 -0
  74. package/articles/INDIEHACKERS_READY.md +120 -0
  75. package/articles/LLM_BENCHMARK_DEEP_DIVE.md +153 -0
  76. package/articles/MASTER_POSTING_DIRECTORY.md +189 -0
  77. package/articles/NEWSLETTER_SEND_NOW.md +259 -0
  78. package/articles/NEWSLETTER_SUBMISSIONS.md +112 -0
  79. package/articles/PAIN-DRIVEN-devto-v2.md +308 -0
  80. package/articles/PAIN-DRIVEN-devto-v3.md +268 -0
  81. package/articles/PAIN-DRIVEN-devto.md +242 -0
  82. package/articles/PAIN-DRIVEN-hackernews-v2.md +138 -0
  83. package/articles/PAIN-DRIVEN-hackernews-v3.md +151 -0
  84. package/articles/PAIN-DRIVEN-hackernews.md +131 -0
  85. package/articles/PAIN-DRIVEN-reddit-v2.md +301 -0
  86. package/articles/PAIN-DRIVEN-reddit-v3.md +236 -0
  87. package/articles/PAIN-DRIVEN-reddit.md +218 -0
  88. package/articles/PAIN-DRIVEN-twitter-v2.md +110 -0
  89. package/articles/PAIN-DRIVEN-twitter-v3.md +121 -0
  90. package/articles/PAIN-DRIVEN-twitter.md +120 -0
  91. package/articles/PORTKEY_VS_A3M.md +147 -0
  92. package/articles/POSTING_KIT_2026_05.md +67 -0
  93. package/articles/PRESS_KIT_routerarena.md +77 -0
  94. package/articles/PRODUCTHUNT_LISTING.md +48 -0
  95. package/articles/PRODUCTHUNT_READY.md +106 -0
  96. package/articles/PR_PLAN_vault.md +125 -0
  97. package/articles/REDDIT_FINAL.md +232 -0
  98. package/articles/REDDIT_POST.md +67 -0
  99. package/articles/REDDIT_SUBMISSION_READY.md +348 -0
  100. package/articles/ROUTERARENA_LEADER.md +45 -0
  101. package/articles/SHOW_HN_FINAL.md +29 -0
  102. package/articles/TWEETS_10K_DOWNLOADS.md +47 -0
  103. package/articles/TWEETS_BENCHMARK_FIRST.md +46 -0
  104. package/articles/TWEETS_MCP_PLAY.md +51 -0
  105. package/articles/TWEETS_SEQUENTIAL_BROKEN.md +49 -0
  106. package/articles/TWEETS_WHY_BUILD.md +54 -0
  107. package/articles/TWEETS_routerarena_leader.md +53 -0
  108. package/articles/TWEET_STORM_READY.md +165 -0
  109. package/articles/TWITTER_FINAL.md +167 -0
  110. package/articles/WHY_10X_BETTER.md +261 -0
  111. package/articles/WHY_CHINESE_STYLE_BETTER.md +323 -0
  112. package/articles/ai-discoverability-llm-routing.md +210 -0
  113. package/articles/devto-llm-routing.md +138 -0
  114. package/articles/hackernews-show-hn.md +54 -0
  115. package/articles/hashnode-llm-cost-optimization.md +125 -0
  116. package/articles/hn_show_2026_05.md +11 -0
  117. package/articles/medium-building-llm-router.md +205 -0
  118. package/articles/reddit-ml.md +76 -0
  119. package/articles/twitter-thread-cost-savings.md +50 -0
  120. package/articles/youtube-tutorial-script.md +262 -0
  121. package/assets/a3m_3blue1brown.mp4 +0 -0
  122. package/assets/banner.svg +109 -0
  123. package/assets/chart-cost-v2.svg +91 -0
  124. package/assets/chart-cost-v3.svg +143 -0
  125. package/assets/chart-features-v2.svg +132 -0
  126. package/assets/chart-features-v3.svg +211 -0
  127. package/assets/chart-growth-v2.svg +122 -0
  128. package/assets/chart-growth-v3.svg +189 -0
  129. package/assets/cost-comparison.svg +134 -0
  130. package/assets/cost-simple.svg +64 -0
  131. package/assets/demo-hn.gif +0 -0
  132. package/assets/feature-matrix.svg +136 -0
  133. package/assets/growth-chart-animated.svg +76 -0
  134. package/assets/growth-chart.svg +82 -0
  135. package/assets/growth-simple.svg +69 -0
  136. package/assets/hero-diagram.svg +81 -0
  137. package/assets/logo-new.svg +21 -0
  138. package/assets/logo.svg +68 -0
  139. package/assets/provider-comparison.svg +121 -0
  140. package/assets/social-preview-new.svg +100 -0
  141. package/assets/social-preview.svg +194 -0
  142. package/assets/social-v2.svg +130 -0
  143. package/assets/social-v3.svg +212 -0
  144. package/benchmark-provider-results.json +245 -0
  145. package/benchmark-results.json +54 -0
  146. package/council-votes/architecture-vote.md +121 -0
  147. package/council-votes/coverage-vote.md +93 -0
  148. package/data/adaptive-benchmark.json +92 -0
  149. package/data/benchmark-results.json +47 -0
  150. package/data/labeled-benchmark.json +88 -0
  151. package/demo/3blue1brown_video.py +285 -0
  152. package/demo/3blue1brown_video_v2.py +310 -0
  153. package/demo/IMPROVED_PROMPTS.md +229 -0
  154. package/demo/VEO3_PROMPTS.md +269 -0
  155. package/demo/VIDEO_PRODUCTION_GUIDE.md +333 -0
  156. package/demo/a3m_3blue1brown.mp4 +0 -0
  157. package/demo/asciinema-demo.sh +195 -0
  158. package/demo/demo-hn.tape +74 -0
  159. package/demo/demo-script.md +53 -0
  160. package/demo/demo-script.sh +62 -0
  161. package/demo/demo.svg +75 -0
  162. package/demo/frame1_ai_data_center.png +0 -0
  163. package/demo/frame1_sunset_video.mp4 +0 -0
  164. package/demo/frame2_cost_comparison.png +0 -0
  165. package/demo/frame2_cost_comparison_fallback.png +0 -0
  166. package/demo/frame3_parallel_execution.png +0 -0
  167. package/demo/frame3_parallel_execution_fallback.png +0 -0
  168. package/demo/frame4_providers.png +0 -0
  169. package/demo/frame4_providers_fallback.png +0 -0
  170. package/demo/frame5_endcard.png +0 -0
  171. package/demo/frame5_endcard_fallback.png +0 -0
  172. package/demo/new_frame1_hook.png +0 -0
  173. package/demo/new_frame2_proof.png +0 -0
  174. package/demo/new_frame3_wow.png +0 -0
  175. package/demo/new_frame4_social.png +0 -0
  176. package/demo/new_frame5_cta.png +0 -0
  177. package/demo/package.json +13 -0
  178. package/demo/product-video-final.mp4 +0 -0
  179. package/demo/product-video-hype-v1.mp4 +0 -0
  180. package/demo/product-video-v1.mp4 +0 -0
  181. package/demo/public/index.html +762 -0
  182. package/demo/recording.cast +55 -0
  183. package/demo/server.js +405 -0
  184. package/demo-new.tape +71 -0
  185. package/demo-real.sh +198 -0
  186. package/demo-simple.tape +205 -0
  187. package/demo.html +520 -0
  188. package/demo.sh +85 -0
  189. package/demo.tape +259 -0
  190. package/dist/analytics/costAnalytics.d.ts.map +1 -0
  191. package/dist/analytics/costAnalytics.js.map +1 -0
  192. package/dist/benchmark/comprehensive.js.map +1 -0
  193. package/dist/benchmark/reproducible.d.ts.map +1 -0
  194. package/dist/benchmark/reproducible.js.map +1 -0
  195. package/dist/cache/prefixCache.d.ts.map +1 -0
  196. package/dist/cache/prefixCache.js.map +1 -0
  197. package/dist/cache/responseCache.d.ts.map +1 -0
  198. package/dist/cache/responseCache.js.map +1 -0
  199. package/dist/cache/semanticCache.d.ts.map +1 -0
  200. package/dist/cache/semanticCache.js.map +1 -0
  201. package/dist/cli/setupWizard.d.ts.map +1 -0
  202. package/dist/cli/setupWizard.js.map +1 -0
  203. package/dist/cost/budgetEnforcer.d.ts.map +1 -0
  204. package/dist/cost/budgetEnforcer.js.map +1 -0
  205. package/dist/cost/costTracker.d.ts.map +1 -0
  206. package/dist/cost/costTracker.js.map +1 -0
  207. package/dist/ensemble/multiRoundDialog.js.map +1 -0
  208. package/dist/ensemble/shapleyValue.js.map +1 -0
  209. package/dist/integrations/langchainAdapter.d.ts.map +1 -0
  210. package/dist/integrations/langchainAdapter.js.map +1 -0
  211. package/dist/integrations/oauth.d.ts.map +1 -0
  212. package/dist/integrations/oauth.js.map +1 -0
  213. package/dist/integrations/scienceAdapter.js.map +1 -0
  214. package/dist/memory/autoFetch.d.ts.map +1 -0
  215. package/dist/memory/autoFetch.js.map +1 -0
  216. package/dist/memory/episodicMemory.d.ts.map +1 -0
  217. package/dist/memory/episodicMemory.js.map +1 -0
  218. package/dist/memory/hybridMemory.js.map +1 -0
  219. package/dist/memory/memoryTree.d.ts.map +1 -0
  220. package/dist/memory/memoryTree.js.map +1 -0
  221. package/dist/memory/obsidianVault.d.ts.map +1 -0
  222. package/dist/memory/obsidianVault.js.map +1 -0
  223. package/dist/memory/reasoningBank.js.map +1 -0
  224. package/dist/observability/changeWatch.d.ts.map +1 -0
  225. package/dist/observability/changeWatch.js.map +1 -0
  226. package/dist/observability/fatigueDetector.d.ts.map +1 -0
  227. package/dist/observability/fatigueDetector.js.map +1 -0
  228. package/dist/observability/index.d.ts.map +1 -0
  229. package/dist/observability/index.js.map +1 -0
  230. package/dist/observability/metrics.d.ts.map +1 -0
  231. package/dist/observability/metrics.js.map +1 -0
  232. package/dist/observability/middleware.d.ts.map +1 -0
  233. package/dist/observability/middleware.js.map +1 -0
  234. package/dist/observability/tracer.d.ts.map +1 -0
  235. package/dist/observability/tracer.js.map +1 -0
  236. package/dist/observability/types.d.ts.map +1 -0
  237. package/dist/observability/types.js.map +1 -0
  238. package/dist/orchestration/haloOrchestrator.d.ts.map +1 -0
  239. package/dist/orchestration/haloOrchestrator.js.map +1 -0
  240. package/dist/orchestration/mctsWorkflow.d.ts.map +1 -0
  241. package/dist/orchestration/mctsWorkflow.js.map +1 -0
  242. package/dist/providers/localProvider.d.ts.map +1 -0
  243. package/dist/providers/localProvider.js.map +1 -0
  244. package/dist/providers/providerConfig.d.ts.map +1 -0
  245. package/dist/providers/providerConfig.js.map +1 -0
  246. package/dist/providers/registry.d.ts.map +1 -0
  247. package/dist/providers/registry.js.map +1 -0
  248. package/dist/routing/advancedRouter.d.ts.map +1 -0
  249. package/dist/routing/advancedRouter.js +1 -1
  250. package/dist/routing/advancedRouter.js.map +1 -0
  251. package/dist/routing/crossModelValidation.d.ts.map +1 -0
  252. package/dist/routing/crossModelValidation.js.map +1 -0
  253. package/dist/routing/providerHealth.d.ts.map +1 -0
  254. package/dist/routing/providerHealth.js.map +1 -0
  255. package/dist/routing/providerRetry.d.ts.map +1 -0
  256. package/dist/routing/providerRetry.js.map +1 -0
  257. package/dist/scripts/banner.js +29 -0
  258. package/dist/security/guardrails.d.ts.map +1 -0
  259. package/dist/security/guardrails.js.map +1 -0
  260. package/dist/server/dashboard.d.ts.map +1 -0
  261. package/dist/server/dashboard.js.map +1 -0
  262. package/dist/server/modelMapper.d.ts.map +1 -0
  263. package/dist/server/modelMapper.js.map +1 -0
  264. package/dist/server/proxyServer.d.ts.map +1 -0
  265. package/dist/server/proxyServer.js.map +1 -0
  266. package/dist/skills/__tests__/skill_manager.test.d.ts +2 -0
  267. package/dist/skills/__tests__/skill_manager.test.d.ts.map +1 -0
  268. package/dist/skills/__tests__/skill_manager.test.js +268 -0
  269. package/dist/skills/__tests__/skill_manager.test.js.map +1 -0
  270. package/dist/tools/tmlpdTools.d.ts.map +1 -0
  271. package/dist/tools/tmlpdTools.js.map +1 -0
  272. package/dist/tui/dashboard.d.ts.map +1 -0
  273. package/dist/tui/dashboard.js.map +1 -0
  274. package/dist/tui/index.d.ts.map +1 -0
  275. package/dist/tui/index.js.map +1 -0
  276. package/dist/utils/batchProcessor.d.ts.map +1 -0
  277. package/dist/utils/batchProcessor.js.map +1 -0
  278. package/dist/utils/compression.d.ts.map +1 -0
  279. package/dist/utils/compression.js.map +1 -0
  280. package/dist/utils/costUtils.d.ts.map +1 -0
  281. package/dist/utils/costUtils.js.map +1 -0
  282. package/dist/utils/reliability.d.ts.map +1 -0
  283. package/dist/utils/reliability.js.map +1 -0
  284. package/dist/utils/sorting.d.ts.map +1 -0
  285. package/dist/utils/sorting.js.map +1 -0
  286. package/dist/utils/speculativeDecoding.d.ts.map +1 -0
  287. package/dist/utils/speculativeDecoding.js.map +1 -0
  288. package/dist/utils/tokenUtils.d.ts.map +1 -0
  289. package/dist/utils/tokenUtils.js.map +1 -0
  290. package/docs/.nojekyll +0 -0
  291. package/docs/ANALYSIS_PRINCIPLES.md +162 -0
  292. package/docs/API.md +855 -0
  293. package/docs/ARCHITECTURAL-IMPROVEMENTS-2025.md +1391 -0
  294. package/docs/ARCHITECTURAL-IMPROVEMENTS-REVISED-2025.md +1051 -0
  295. package/docs/BENCHMARK.md +170 -0
  296. package/docs/CHINESE_PROVIDER_RELIABILITY.md +37 -0
  297. package/docs/CITATIONS.md +74 -0
  298. package/docs/CLAIMS_AND_EVIDENCE.md +58 -0
  299. package/docs/CONFIGURATION.md +476 -0
  300. package/docs/COUNCIL_DECISION.json +816 -0
  301. package/docs/COUNCIL_SUMMARY.md +319 -0
  302. package/docs/COUNCIL_V2.2_DECISION.md +416 -0
  303. package/docs/ENGINEERING_SPEC.md +55 -0
  304. package/docs/FACTORY_RESET.md +34 -0
  305. package/docs/GEO.md +66 -0
  306. package/docs/GEO_OPTIMIZATION.md +30 -0
  307. package/docs/GEO_ROOT_CAUSE.md +136 -0
  308. package/docs/GEO_STATUS.md +85 -0
  309. package/docs/GEO_TEST_RESULTS.md +176 -0
  310. package/docs/HN_CHECKLIST.md +38 -0
  311. package/docs/HN_FOUNDER_COMMENT.md +17 -0
  312. package/docs/HN_SUBMISSION_FINAL.md +180 -0
  313. package/docs/HN_SUBMISSION_V3.md +56 -0
  314. package/docs/IMPROVEMENT_ROADMAP.md +515 -0
  315. package/docs/INTEGRATIONS.md +420 -0
  316. package/docs/LANGCHAIN_INTEGRATION.md +147 -0
  317. package/docs/LLM_COUNCIL_DECISION.md +508 -0
  318. package/docs/MIDDLEWARE_CHAIN.md +35 -0
  319. package/docs/PROMO_CHECKLIST.md +200 -0
  320. package/docs/QUICKSTART.md +271 -0
  321. package/docs/QUICK_START.md +43 -0
  322. package/docs/QUICK_START_VISIBILITY.md +782 -0
  323. package/docs/REDDIT_GAP_ANALYSIS.md +299 -0
  324. package/docs/RELEASE_CHECKLIST.md +32 -0
  325. package/docs/REPRODUCIBILITY.md +63 -0
  326. package/docs/RESEARCH_BACKED_IMPROVEMENTS.md +1180 -0
  327. package/docs/ROUTING_RUBRIC.md +197 -0
  328. package/docs/SEO_AUDIT.md +186 -0
  329. package/docs/SOCIAL_LISTENING.md +219 -0
  330. package/docs/TMLPD_QNA.md +751 -0
  331. package/docs/TMLPD_V2.1_COMPLETE.md +763 -0
  332. package/docs/TMLPD_V2.2_RESEARCH_ROADMAP.md +754 -0
  333. package/docs/UPDATE_TOPICS.md +15 -0
  334. package/docs/USE_CASES.md +59 -0
  335. package/docs/V2.2_IMPLEMENTATION_COMPLETE.md +446 -0
  336. package/docs/V2_IMPLEMENTATION_GUIDE.md +388 -0
  337. package/docs/VERCEL_AI_SDK.md +209 -0
  338. package/docs/VISIBILITY_ADOPTION_PLAN.md +1005 -0
  339. package/docs/_config.yml +49 -0
  340. package/docs/ai-plugin.json +16 -0
  341. package/docs/api.html +513 -0
  342. package/docs/architecture-diagram.md +40 -0
  343. package/docs/benchmark-chart.png +0 -0
  344. package/docs/benchmark.html +387 -0
  345. package/docs/blog/routerarena-number-one.html +73 -0
  346. package/docs/cli-cheatsheet.md +339 -0
  347. package/docs/compare.md +109 -0
  348. package/docs/comparison-litellm.md +88 -0
  349. package/docs/comparison.md +108 -0
  350. package/docs/cost-chart-ascii.md +42 -0
  351. package/docs/cost-comparison-chart.svg +88 -0
  352. package/docs/curl-examples.md +247 -0
  353. package/docs/demo-auto.html +264 -0
  354. package/docs/demo.html +416 -0
  355. package/docs/geo/GENERATIVE_ENGINE_OPTIMIZATION.md +232 -0
  356. package/docs/index.html +507 -0
  357. package/docs/launch-content/LAUNCH_EXECUTION_CHECKLIST.md +421 -0
  358. package/docs/launch-content/README.md +457 -0
  359. package/docs/launch-content/assets/cost_comparison_100_tasks.png +0 -0
  360. package/docs/launch-content/assets/cumulative_savings.png +0 -0
  361. package/docs/launch-content/assets/parallel_speedup.png +0 -0
  362. package/docs/launch-content/assets/provider_pricing_comparison.png +0 -0
  363. package/docs/launch-content/assets/task_breakdown_comparison.png +0 -0
  364. package/docs/launch-content/generate_charts.py +313 -0
  365. package/docs/launch-content/hn_show_post.md +139 -0
  366. package/docs/launch-content/partner_outreach_templates.md +745 -0
  367. package/docs/launch-content/reddit_posts.md +467 -0
  368. package/docs/launch-content/twitter_thread.txt +460 -0
  369. package/{llms.txt.bak → docs/llms.txt} +6 -6
  370. package/docs/npm-downloads-chart.svg +43 -0
  371. package/docs/openapi.json +139 -0
  372. package/docs/openapi.yaml +1318 -0
  373. package/docs/quick-start.html +366 -0
  374. package/docs/robots.txt +52 -0
  375. package/docs/sitemap.xml +57 -0
  376. package/docs/styles.css +682 -0
  377. package/docs/well-known/ai-plugin.json +16 -0
  378. package/docs/wellknown/ai-plugin.json +16 -0
  379. package/docs-site/assets/og-banner.svg +194 -0
  380. package/docs-site/index.html +632 -0
  381. package/eval/README.md +46 -0
  382. package/eval/baselines/main.json +12 -0
  383. package/eval/benchmark_dataset.jsonl +16 -0
  384. package/eval/check_golden_routes.js +64 -0
  385. package/eval/datasets/catalog.json +33 -0
  386. package/eval/datasets/slices/cn_provider_reliability_v1.jsonl +3 -0
  387. package/eval/datasets/slices/cost_pressure_v1.jsonl +3 -0
  388. package/eval/datasets/slices/safety_guardrails_v1.jsonl +3 -0
  389. package/eval/evals.json +199 -0
  390. package/eval/fault_injection_thresholds.json +3 -0
  391. package/eval/generate_report.js +128 -0
  392. package/eval/golden_routes.json +114 -0
  393. package/eval/lib/experiment_registry.js +24 -0
  394. package/eval/run_eval.js +197 -0
  395. package/eval/run_fault_injection.js +201 -0
  396. package/eval/run_shadow_eval.js +85 -0
  397. package/eval/thresholds.json +9 -0
  398. package/examples/QUICKSTART.md +183 -0
  399. package/examples/README.md +61 -0
  400. package/examples/a3m-sdk.js +124 -0
  401. package/examples/basic-route.js +54 -0
  402. package/examples/chat-loop.js +202 -0
  403. package/examples/classify-then-route.js +102 -0
  404. package/examples/cost-compare.js +120 -0
  405. package/examples/ensemble.js +160 -0
  406. package/examples/whatsapp-telegram-bridge-demo.js +302 -0
  407. package/examples/whatsapp-telegram-bridge.js +269 -0
  408. package/hf-space/README.md +23 -0
  409. package/hf-space/app.py +240 -0
  410. package/hf-space/requirements.txt +1 -0
  411. package/huggingface_space/README.md +35 -0
  412. package/huggingface_space/app.py +126 -0
  413. package/huggingface_space/create_space.py +208 -0
  414. package/huggingface_space/requirements.txt +1 -0
  415. package/mcp-server/README.md +188 -0
  416. package/mcp-server/package.json +29 -0
  417. package/mcp-server/src/index.ts +744 -0
  418. package/mcp-server/tsconfig.json +19 -0
  419. package/openclaw-alexa-bridge/ALL_REMAINING_FIXES_PLAN.md +313 -0
  420. package/openclaw-alexa-bridge/REMAINING_FIXES_SUMMARY.md +277 -0
  421. package/openclaw-alexa-bridge/src/alexa_handler_no_tmlpd.js +1234 -0
  422. package/openclaw-alexa-bridge/test_fixes.js +77 -0
  423. package/package.json +73 -270
  424. package/playground/README.md +51 -0
  425. package/playground/codesandbox.json +12 -0
  426. package/playground/index.js +39 -0
  427. package/proxy/README.md +227 -0
  428. package/proxy/package-lock.json +831 -0
  429. package/proxy/package.json +17 -0
  430. package/proxy/rate-limit.js +145 -0
  431. package/proxy/rate-limit.test.js +311 -0
  432. package/proxy/server.js +970 -0
  433. package/python/README.md +102 -0
  434. package/python/a3m/__init__.py +6 -0
  435. package/python/a3m/client.py +190 -0
  436. package/python/a3m/models.py +40 -0
  437. package/python/a3m/sync_client.py +61 -0
  438. package/python/examples.py +53 -0
  439. package/python/integrations.py +330 -0
  440. package/python/pyproject.toml +23 -0
  441. package/python/setup.py +28 -0
  442. package/python/tmlpd.py +369 -0
  443. package/qna/REDDIT_GAP_ANALYSIS.md +299 -0
  444. package/qna/TMLPD_QNA.md +751 -0
  445. package/research/FINDING_001_safety.md +28 -0
  446. package/research/FINDING_002_error_diversity.md +32 -0
  447. package/research/FINDING_003_confidence_weighted_voting.md +32 -0
  448. package/research/FINDING_004_cross_model_semantic_detection.md +37 -0
  449. package/research/FINDING_005_knowledge_gap_orthogonality.md +34 -0
  450. package/research/HALLUCINATION_RESEARCH.md +27 -0
  451. package/research/PUBLISH_LOG.md +3 -0
  452. package/research/ensemble-voting.md +324 -0
  453. package/research/loss-functions.md +545 -0
  454. package/research-log.md +49 -0
  455. package/scripts/banner.js +29 -0
  456. package/scripts/benchmark-local-routerarena.ts +176 -0
  457. package/scripts/benchmark.js +145 -0
  458. package/scripts/benchmark.sh +61 -0
  459. package/scripts/compare-providers.sh +230 -0
  460. package/scripts/content-planner.js +25 -0
  461. package/scripts/create-labeled-benchmark.ts +105 -0
  462. package/scripts/cross_post.py +443 -0
  463. package/scripts/local-router-benchmark.ts +154 -0
  464. package/scripts/post-all.sh +41 -0
  465. package/scripts/publish_fcc.py +106 -0
  466. package/scripts/push-to-gitee.sh +25 -0
  467. package/scripts/routerarena_ensemble.js +144 -0
  468. package/scripts/routing-benchmark-v2.js +373 -0
  469. package/scripts/routing-benchmark-v3.js +118 -0
  470. package/scripts/routing-benchmark.js +462 -0
  471. package/scripts/run-labeled-benchmark.mjs +104 -0
  472. package/scripts/run-mmlu-benchmark.js +176 -0
  473. package/scripts/run-provider-benchmark.js +244 -0
  474. package/scripts/update-npm-badges.js +158 -0
  475. package/skill/SKILL.md +238 -0
  476. package/src/__tests__/integration/tmpld_integration.test.py +540 -0
  477. package/src/routing/advancedRouter.ts +1 -1
  478. package/src/skills/__tests__/skill_manager.test.ts +328 -0
  479. package/submissions/benchmarks/ALL_PLATFORMS_SUBMISSION.md +94 -0
  480. package/submissions/benchmarks/LLMROUTERBENCH_SUBMISSION.md +121 -0
  481. package/submissions/benchmarks/MMRBENCH_SUBMISSION.md +94 -0
  482. package/submissions/benchmarks/ROUTERARENA_UPDATE.md +83 -0
  483. package/submissions/benchmarks/ROUTERBENCH_SUBMISSION.md +225 -0
  484. package/test-council/1-structure-tests.test.js +353 -0
  485. package/test-council/1-structure-tests.test.ts +353 -0
  486. package/test-council/2-edge-case-tests.test.ts +361 -0
  487. package/test-council/3-performance-tests.test.ts +669 -0
  488. package/test-council/4-integration-tests.test.ts +391 -0
  489. package/test-council/5-agent-council-eval.test.ts +413 -0
  490. package/test-council/AGENT_COUNCIL_ARCHITECTURE.md +349 -0
  491. package/test-council/TEST_COUNCIL_REPORT.md +201 -0
  492. package/test-council/agents/edge-case-agent.ts +363 -0
  493. package/test-council/agents/performance-agent.ts +426 -0
  494. package/test-council/agents/structure-agent.ts +227 -0
  495. package/test-council/council.md +183 -0
  496. package/tests/__mocks__/tokenUtils.ts +8 -0
  497. package/tests/memory/episodicMemory.test.ts +227 -0
  498. package/tests/package-lock.json +1628 -0
  499. package/tests/package.json +18 -0
  500. package/tests/routing/ensembleVoting.test.ts +236 -0
  501. package/tests/routing/providerRetry.test.ts +360 -0
  502. package/tests/routing/queryTypePresets.test.ts +208 -0
  503. package/tests/security/guardrailEngine.test.ts +700 -0
  504. package/tests/tsconfig.json +21 -0
  505. package/tests/vitest.config.ts +18 -0
  506. package/tmlpd-pi-extension/README.md +66 -0
  507. package/tmlpd-pi-extension/dist/cache/prefixCache.d.ts +114 -0
  508. package/tmlpd-pi-extension/dist/cache/prefixCache.d.ts.map +1 -0
  509. package/tmlpd-pi-extension/dist/cache/prefixCache.js +285 -0
  510. package/tmlpd-pi-extension/dist/cache/prefixCache.js.map +1 -0
  511. package/tmlpd-pi-extension/dist/cache/responseCache.d.ts +58 -0
  512. package/tmlpd-pi-extension/dist/cache/responseCache.d.ts.map +1 -0
  513. package/tmlpd-pi-extension/dist/cache/responseCache.js +153 -0
  514. package/tmlpd-pi-extension/dist/cache/responseCache.js.map +1 -0
  515. package/tmlpd-pi-extension/dist/cli.js +59 -0
  516. package/tmlpd-pi-extension/dist/cost/costTracker.d.ts +95 -0
  517. package/tmlpd-pi-extension/dist/cost/costTracker.d.ts.map +1 -0
  518. package/tmlpd-pi-extension/dist/cost/costTracker.js +240 -0
  519. package/tmlpd-pi-extension/dist/cost/costTracker.js.map +1 -0
  520. package/tmlpd-pi-extension/dist/index.d.ts +723 -0
  521. package/tmlpd-pi-extension/dist/index.d.ts.map +1 -0
  522. package/tmlpd-pi-extension/dist/index.js +239 -0
  523. package/tmlpd-pi-extension/dist/index.js.map +1 -0
  524. package/tmlpd-pi-extension/dist/memory/episodicMemory.d.ts +82 -0
  525. package/tmlpd-pi-extension/dist/memory/episodicMemory.d.ts.map +1 -0
  526. package/tmlpd-pi-extension/dist/memory/episodicMemory.js +145 -0
  527. package/tmlpd-pi-extension/dist/memory/episodicMemory.js.map +1 -0
  528. package/tmlpd-pi-extension/dist/orchestration/haloOrchestrator.d.ts +102 -0
  529. package/tmlpd-pi-extension/dist/orchestration/haloOrchestrator.d.ts.map +1 -0
  530. package/tmlpd-pi-extension/dist/orchestration/haloOrchestrator.js +207 -0
  531. package/tmlpd-pi-extension/dist/orchestration/haloOrchestrator.js.map +1 -0
  532. package/tmlpd-pi-extension/dist/orchestration/mctsWorkflow.d.ts +85 -0
  533. package/tmlpd-pi-extension/dist/orchestration/mctsWorkflow.d.ts.map +1 -0
  534. package/tmlpd-pi-extension/dist/orchestration/mctsWorkflow.js +210 -0
  535. package/tmlpd-pi-extension/dist/orchestration/mctsWorkflow.js.map +1 -0
  536. package/tmlpd-pi-extension/dist/providers/localProvider.d.ts +102 -0
  537. package/tmlpd-pi-extension/dist/providers/localProvider.d.ts.map +1 -0
  538. package/tmlpd-pi-extension/dist/providers/localProvider.js +338 -0
  539. package/tmlpd-pi-extension/dist/providers/localProvider.js.map +1 -0
  540. package/tmlpd-pi-extension/dist/providers/registry.d.ts +55 -0
  541. package/tmlpd-pi-extension/dist/providers/registry.d.ts.map +1 -0
  542. package/tmlpd-pi-extension/dist/providers/registry.js +138 -0
  543. package/tmlpd-pi-extension/dist/providers/registry.js.map +1 -0
  544. package/tmlpd-pi-extension/dist/routing/advancedRouter.d.ts +68 -0
  545. package/tmlpd-pi-extension/dist/routing/advancedRouter.d.ts.map +1 -0
  546. package/tmlpd-pi-extension/dist/routing/advancedRouter.js +332 -0
  547. package/tmlpd-pi-extension/dist/routing/advancedRouter.js.map +1 -0
  548. package/tmlpd-pi-extension/dist/tools/tmlpdTools.d.ts +101 -0
  549. package/tmlpd-pi-extension/dist/tools/tmlpdTools.d.ts.map +1 -0
  550. package/tmlpd-pi-extension/dist/tools/tmlpdTools.js +368 -0
  551. package/tmlpd-pi-extension/dist/tools/tmlpdTools.js.map +1 -0
  552. package/tmlpd-pi-extension/dist/utils/batchProcessor.d.ts +96 -0
  553. package/tmlpd-pi-extension/dist/utils/batchProcessor.d.ts.map +1 -0
  554. package/tmlpd-pi-extension/dist/utils/batchProcessor.js +170 -0
  555. package/tmlpd-pi-extension/dist/utils/batchProcessor.js.map +1 -0
  556. package/tmlpd-pi-extension/dist/utils/compression.d.ts +61 -0
  557. package/tmlpd-pi-extension/dist/utils/compression.d.ts.map +1 -0
  558. package/tmlpd-pi-extension/dist/utils/compression.js +281 -0
  559. package/tmlpd-pi-extension/dist/utils/compression.js.map +1 -0
  560. package/tmlpd-pi-extension/dist/utils/reliability.d.ts +74 -0
  561. package/tmlpd-pi-extension/dist/utils/reliability.d.ts.map +1 -0
  562. package/tmlpd-pi-extension/dist/utils/reliability.js +177 -0
  563. package/tmlpd-pi-extension/dist/utils/reliability.js.map +1 -0
  564. package/tmlpd-pi-extension/dist/utils/speculativeDecoding.d.ts +117 -0
  565. package/tmlpd-pi-extension/dist/utils/speculativeDecoding.d.ts.map +1 -0
  566. package/tmlpd-pi-extension/dist/utils/speculativeDecoding.js +246 -0
  567. package/tmlpd-pi-extension/dist/utils/speculativeDecoding.js.map +1 -0
  568. package/tmlpd-pi-extension/dist/utils/tokenUtils.d.ts +50 -0
  569. package/tmlpd-pi-extension/dist/utils/tokenUtils.d.ts.map +1 -0
  570. package/tmlpd-pi-extension/dist/utils/tokenUtils.js +124 -0
  571. package/tmlpd-pi-extension/dist/utils/tokenUtils.js.map +1 -0
  572. package/tmlpd-pi-extension/examples/QUICKSTART.md +183 -0
  573. package/tmlpd-pi-extension/package-lock.json +79 -0
  574. package/tmlpd-pi-extension/package.json +172 -0
  575. package/tmlpd-pi-extension/python/examples.py +53 -0
  576. package/tmlpd-pi-extension/python/integrations.py +330 -0
  577. package/tmlpd-pi-extension/python/setup.py +28 -0
  578. package/tmlpd-pi-extension/python/tmlpd.py +369 -0
  579. package/tmlpd-pi-extension/qna/REDDIT_GAP_ANALYSIS.md +299 -0
  580. package/tmlpd-pi-extension/qna/TMLPD_QNA.md +751 -0
  581. package/tmlpd-pi-extension/skill/SKILL.md +238 -0
  582. package/tmlpd-pi-extension/src/cache/responseCache.ts +147 -0
  583. package/tmlpd-pi-extension/src/cost/costTracker.ts +302 -0
  584. package/tmlpd-pi-extension/src/index.ts +232 -0
  585. package/tmlpd-pi-extension/src/memory/episodicMemory.ts +257 -0
  586. package/tmlpd-pi-extension/src/orchestration/haloOrchestrator.ts +266 -0
  587. package/tmlpd-pi-extension/src/orchestration/mctsWorkflow.ts +262 -0
  588. package/tmlpd-pi-extension/src/providers/localProvider.ts +406 -0
  589. package/tmlpd-pi-extension/src/providers/registry.ts +164 -0
  590. package/tmlpd-pi-extension/src/routing/ensembleVoting.ts +159 -0
  591. package/tmlpd-pi-extension/src/routing/queryTypePresets.ts +136 -0
  592. package/tmlpd-pi-extension/src/tools/tmlpdTools.ts +433 -0
  593. package/tmlpd-pi-extension/src/utils/batchProcessor.ts +232 -0
  594. package/tmlpd-pi-extension/src/utils/compression.ts +325 -0
  595. package/tmlpd-pi-extension/src/utils/reliability.ts +221 -0
  596. package/tmlpd-pi-extension/src/utils/tokenUtils.ts +145 -0
  597. package/tmlpd-pi-extension/tsconfig.json +18 -0
  598. package/tsconfig.build.json +29 -0
  599. package/tsconfig.json +18 -0
  600. package/README.md.bak +0 -1185
  601. package/src/routing/advancedRouter.ts.bak +0 -650
  602. package/test.js.bak +0 -376
  603. /package/{llms-full.txt.bak → docs/llms-full.txt} +0 -0
@@ -0,0 +1,245 @@
1
+ {
2
+ "meta": {
3
+ "date": "2026-05-26T20:20:48.824Z",
4
+ "questions": 10
5
+ },
6
+ "results": {
7
+ "groq-llama-3.3-70b": {
8
+ "name": "Groq Llama 3.3 70B",
9
+ "successRate": 1,
10
+ "avgLatency": 325,
11
+ "avgOutputLen": 277,
12
+ "inputCostPer1M": 0,
13
+ "questions": [
14
+ {
15
+ "id": 1,
16
+ "success": true,
17
+ "latency": 262,
18
+ "content": "2 + 2 = 4.",
19
+ "status": 200
20
+ },
21
+ {
22
+ "id": 2,
23
+ "success": true,
24
+ "latency": 414,
25
+ "content": "**Checking Primality in Python**\n================================\n\nBelow is an example of a Python function that checks whether a given number is prime.\n\n```python\ndef is_prime(n: int) -> bool:\n \"\"\"\n Checks if a number is prime.\n\n Args:\n n (int): The number to check.\n\n Returns:\n bool: True if the number is prime, False otherwise.\n \"\"\"\n if n <= 1:\n return False\n if n == 2:\n return",
26
+ "status": 200
27
+ },
28
+ {
29
+ "id": 3,
30
+ "success": true,
31
+ "latency": 233,
32
+ "content": "An Application Programming Interface (API) is a set of defined rules and protocols that allows different software systems, applications, or services to communicate and exchange data with each other in a standardized and secure manner.",
33
+ "status": 200
34
+ },
35
+ {
36
+ "id": 4,
37
+ "success": true,
38
+ "latency": 430,
39
+ "content": "Climate change is a complex and multifaceted phenomenon, and there are several factors that contribute to it. The main causes of climate change can be divided into two categories: natural and human-induced.\n\n**Natural Causes:**\n\n1. **Volcanic Eruptions**: Volcanic eruptions can release large amounts of ash, sulfur dioxide, and other gases into the atmosphere, which can reflect sunlight and cool the planet.\n2. **Changes in Earth's Orbit**: Changes in Earth's orbit around the",
40
+ "status": 200
41
+ },
42
+ {
43
+ "id": 5,
44
+ "success": true,
45
+ "latency": 176,
46
+ "content": "Code flows like a stream\nLogic dancing on the screen\nBeauty in the bug",
47
+ "status": 200
48
+ },
49
+ {
50
+ "id": 6,
51
+ "success": true,
52
+ "latency": 541,
53
+ "content": "**Improving AI Models with Data**\n\nArtificial Intelligence (AI) models are only as good as the data they're trained on. The quality, quantity, and diversity of data have a direct impact on the performance and accuracy of AI models. Here's why data is crucial for improving AI models:\n\n* **Training and Validation**: AI models learn from data by identifying patterns, relationships, and trends. The more data available, the better the model can learn and generalize to new, unseen situations.\n*",
54
+ "status": 200
55
+ },
56
+ {
57
+ "id": 7,
58
+ "success": true,
59
+ "latency": 144,
60
+ "content": "1. Java\n2. Python\n3. C++",
61
+ "status": 200
62
+ },
63
+ {
64
+ "id": 8,
65
+ "success": true,
66
+ "latency": 482,
67
+ "content": "**Machine Learning Overview**\n===============\n\nMachine learning (ML) is a subset of artificial intelligence (AI) that involves the use of algorithms and statistical models to enable machines to perform tasks without being explicitly programmed. It allows systems to learn from data, identify patterns, and make decisions or predictions based on that data.\n\n**Key Characteristics**\n--------------------\n\n1. **Data-Driven**: Machine learning relies on large amounts of data to learn and improve its performance.\n2. **Algorithm-Based**: ML uses",
68
+ "status": 200
69
+ },
70
+ {
71
+ "id": 9,
72
+ "success": true,
73
+ "latency": 417,
74
+ "content": "**Reversing a String in Python**\n=====================================\n\nYou can reverse a string in Python using slicing. Here is a simple function that accomplishes this:\n\n```python\ndef reverse_string(input_str):\n \"\"\"\n Reverses the input string.\n\n Args:\n input_str (str): The string to be reversed.\n\n Returns:\n str: The reversed string.\n \"\"\"\n return input_str[::-1]\n\n# Example usage:\nif __name__ == \"__main__\":\n input_str",
75
+ "status": 200
76
+ },
77
+ {
78
+ "id": 10,
79
+ "success": true,
80
+ "latency": 154,
81
+ "content": "The capital of Japan is Tokyo.",
82
+ "status": 200
83
+ }
84
+ ]
85
+ },
86
+ "groq-llama-3.1-8b": {
87
+ "name": "Groq Llama 3.1 8B",
88
+ "successRate": 1,
89
+ "avgLatency": 286,
90
+ "avgOutputLen": 280,
91
+ "inputCostPer1M": 0,
92
+ "questions": [
93
+ {
94
+ "id": 1,
95
+ "success": true,
96
+ "latency": 364,
97
+ "content": "2 + 2 = 4.",
98
+ "status": 200
99
+ },
100
+ {
101
+ "id": 2,
102
+ "success": true,
103
+ "latency": 319,
104
+ "content": "**Prime Number Checker Function**\n=====================================\n\nHere's a Python function to check if a given number is prime or not.\n\n```python\ndef is_prime(n):\n \"\"\"\n Checks if a number is prime.\n\n Args:\n n (int): The number to check.\n\n Returns:\n bool: True if the number is prime, False otherwise.\n \"\"\"\n if n <= 1:\n return False # Numbers less than or equal to 1 are not prime.\n for",
105
+ "status": 200
106
+ },
107
+ {
108
+ "id": 3,
109
+ "success": true,
110
+ "latency": 189,
111
+ "content": "An API (Application Programming Interface) is a set of defined rules and protocols that enables different software systems to communicate with each other, exchanging data and functionality to achieve a specific task or outcome.",
112
+ "status": 200
113
+ },
114
+ {
115
+ "id": 4,
116
+ "success": true,
117
+ "latency": 371,
118
+ "content": "Climate change is a complex issue with multiple causes, but some of the main contributors include:\n\n1. **Greenhouse gases**: The burning of fossil fuels such as coal, oil, and gas releases carbon dioxide (CO2), methane (CH4), and other gases that trap heat in the atmosphere, leading to global warming. The main greenhouse gases responsible for climate change are:\n\t* Carbon dioxide (CO2): 65% of human-caused greenhouse gas emissions.\n\t* Methane (CH",
119
+ "status": 200
120
+ },
121
+ {
122
+ "id": 5,
123
+ "success": true,
124
+ "latency": 193,
125
+ "content": "Code flows like the sea\nPuzzles solved in digital\nSilent, dark delight",
126
+ "status": 200
127
+ },
128
+ {
129
+ "id": 6,
130
+ "success": true,
131
+ "latency": 396,
132
+ "content": "**Summary:**\n\nAI models, a key component of Artificial Intelligence, improve significantly with access to a large and diverse dataset. The quality and quantity of the data play a crucial role in enhancing the performance, accuracy, and efficiency of AI models.\n\nHere are some key points summarizing the importance of data in AI model improvement:\n\n1. **Training and Learning**: AI models learn from data by identifying patterns, relationships, and trends. The more data provided, the better the model can learn and improve.\n",
133
+ "status": 200
134
+ },
135
+ {
136
+ "id": 7,
137
+ "success": true,
138
+ "latency": 149,
139
+ "content": "Here are three programming languages:\n\n1. Java\n2. Python\n3. C++",
140
+ "status": 200
141
+ },
142
+ {
143
+ "id": 8,
144
+ "success": true,
145
+ "latency": 273,
146
+ "content": "Machine learning (ML) is a subset of artificial intelligence (AI) that involves the use of algorithms and statistical models to enable computers to learn from data, make decisions, and improve their performance on a task without being explicitly programmed. In other words, machine learning allows computers to learn from experience and improve their accuracy over time.\n\nMachine learning typically involves the following steps:\n\n1. **Data collection**: Gathering a large dataset relevant to the problem you want to solve.\n2. **Model training**: Using the",
147
+ "status": 200
148
+ },
149
+ {
150
+ "id": 9,
151
+ "success": true,
152
+ "latency": 476,
153
+ "content": "**Reversing a String in Python**\n=====================================\n\nYou can reverse a string in Python using the slicing feature of the language. Here's an example:\n\n```python\ndef reverse_string(s):\n \"\"\"\n Reverse a string.\n\n Args:\n s (str): The string to be reversed.\n\n Returns:\n str: The reversed string.\n \"\"\"\n return s[::-1]\n\n# Example usage:\nprint(reverse_string(\"Hello World\")) # Output: \"dlroW olle",
154
+ "status": 200
155
+ },
156
+ {
157
+ "id": 10,
158
+ "success": true,
159
+ "latency": 129,
160
+ "content": "The capital of Japan is Tokyo.",
161
+ "status": 200
162
+ }
163
+ ]
164
+ },
165
+ "groq-qwen-3-32b": {
166
+ "name": "Groq Qwen 3 32B",
167
+ "successRate": 1,
168
+ "avgLatency": 459,
169
+ "avgOutputLen": 454,
170
+ "inputCostPer1M": 0,
171
+ "questions": [
172
+ {
173
+ "id": 1,
174
+ "success": true,
175
+ "latency": 648,
176
+ "content": "<think>\nOkay, so the question is, What is 2+2? Hmm, that's pretty straightforward. But let me make sure I'm not missing anything. First, let's recall basic addition. Adding two numbers means combining their quantities. So, two plus two should be four. But wait, is there any context where this might not be the case? Like, are we talking about regular integers here? I don't think so. The user didn't specify anything unusual, so it",
177
+ "status": 200
178
+ },
179
+ {
180
+ "id": 2,
181
+ "success": true,
182
+ "latency": 307,
183
+ "content": "<think>\nOkay, I need to write a Python function to check if a number is prime. Let me think about how to approach this. \n\nFirst, what's a prime number? A prime number is a number greater than 1 that has no divisors other than 1 and itself. So numbers less than 2 aren't prime. For example, 2 is prime, 3 is prime, but 4 is not because it's divisible by 2.\n\nSo the function should return",
184
+ "status": 200
185
+ },
186
+ {
187
+ "id": 3,
188
+ "success": true,
189
+ "latency": 417,
190
+ "content": "<think>\nOkay, I need to explain what an API is in one sentence. Let me start by recalling what I know. API stands for Application Programming Interface. From what I've heard, it's a way for different software applications to communicate with each other. So, maybe something like, \"An API is a set of protocols and tools that allow different software applications to communicate with each other.\" Wait, does that cover it?\n\nLet me check another angle. APIs act as intermediaries between different systems",
191
+ "status": 200
192
+ },
193
+ {
194
+ "id": 4,
195
+ "success": true,
196
+ "latency": 380,
197
+ "content": "<think>\nOkay, I need to figure out what causes climate change. Let's start by recalling what I know. Climate change is when the Earth's average temperature rises over time, right? But what actually causes this? I've heard about greenhouse gases being a major factor. Maybe things like carbon dioxide (CO2) and methane? I think cars, factories, and burning fossil fuels like coal, oil, and natural gas release a lot of CO2. That probably traps heat in the atmosphere.",
198
+ "status": 200
199
+ },
200
+ {
201
+ "id": 5,
202
+ "success": true,
203
+ "latency": 553,
204
+ "content": "<think>\nOkay, I need to write a haiku about programming. Let me start by recalling what a haiku is. It's a traditional Japanese poem with three lines. The structure is 5 syllables in the first line, 7 in the second, and 5 in the third. So, 5-7-5.\n\nFirst, I should brainstorm words and concepts related to programming. Words like code, debug, logic, syntax, loops, algorithms, bugs, servers, maybe",
205
+ "status": 200
206
+ },
207
+ {
208
+ "id": 6,
209
+ "success": true,
210
+ "latency": 518,
211
+ "content": "<think>\nOkay, the user wants a summary of \"AI models improve with data.\" Let me start by understanding the core idea here. The main point is that more data leads to better AI performance. But I need to make sure to cover the key aspects.\n\nFirst, I should mention that data is essential for training AI models. Then, explain how additional data helps the model learn patterns and generalize better. Maybe include types of data like diverse and high-quality examples. Also, data expansion techniques like data",
212
+ "status": 200
213
+ },
214
+ {
215
+ "id": 7,
216
+ "success": true,
217
+ "latency": 518,
218
+ "content": "<think>\nOkay, the user wants a list of three programming languages. Let me think about which ones to mention. Popular ones like Python, JavaScript, and Java come to mind. Python is great for beginners because of its readability. JavaScript is essential for web development, both front-end and with Node.js for back-end. Java has been around a long time and is widely used in enterprise applications. Alternatively, I could include C++ or C# for systems programming or game development. Let me make sure",
219
+ "status": 200
220
+ },
221
+ {
222
+ "id": 8,
223
+ "success": true,
224
+ "latency": 464,
225
+ "content": "<think>\nOkay, so the user is asking \"What is machine learning?\" Let me start by recalling what I know. Machine learning is a subset of artificial intelligence, right? But I need to explain it clearly without jargon. Maybe start with the basic definition: it's about making computers learn from data without being explicitly programmed.\n\nWait, how does that work? I should mention algorithms that improve with experience. Maybe use examples like email spam filters or recommendation systems. Oh, and there are different types",
226
+ "status": 200
227
+ },
228
+ {
229
+ "id": 9,
230
+ "success": true,
231
+ "latency": 368,
232
+ "content": "<think>\nOkay, I need to figure out how to reverse a string in Python. Let me think... Hmm, I remember that strings in Python are immutable, so maybe I need to convert it into a list first? Wait, but there's probably a simpler way. Oh right! String slicing can do that.\n\nWait, how does slicing work again? Like, the syntax is [start:stop:step]. So if I want to reverse it, I can set the step to -1.",
233
+ "status": 200
234
+ },
235
+ {
236
+ "id": 10,
237
+ "success": true,
238
+ "latency": 415,
239
+ "content": "<think>\nOkay, the user is asking for the capital of Japan. Let me start by recalling what I know. Japan is an island nation in East Asia. Its capital is... hmm, I think it's Tokyo. But wait, wasn't there a time when the capital was Kyoto or something else? Let me verify.\n\nI remember that Japan used to have Kyoto as its capital for a long time, especially during the feudal era. But after the Meiji Restoration in the late 19th",
240
+ "status": 200
241
+ }
242
+ ]
243
+ }
244
+ }
245
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "timestamp": "2026-06-03T21:05:16.421Z",
3
+ "version": "2.14.26",
4
+ "queries": 200,
5
+ "exact_accuracy": 67,
6
+ "adjacent_accuracy": 96,
7
+ "over_routed": 13,
8
+ "under_routed": 53,
9
+ "cost_savings_vs_premium": 62.9,
10
+ "by_tier": {
11
+ "free": {
12
+ "correct": 48,
13
+ "total": 50
14
+ },
15
+ "cheap": {
16
+ "correct": 45,
17
+ "total": 60
18
+ },
19
+ "mid": {
20
+ "correct": 18,
21
+ "total": 50
22
+ },
23
+ "premium": {
24
+ "correct": 23,
25
+ "total": 40
26
+ }
27
+ },
28
+ "confusion": {
29
+ "free": {
30
+ "free": 48,
31
+ "cheap": 2,
32
+ "mid": 0,
33
+ "premium": 0
34
+ },
35
+ "cheap": {
36
+ "free": 13,
37
+ "cheap": 45,
38
+ "mid": 1,
39
+ "premium": 1
40
+ },
41
+ "mid": {
42
+ "free": 1,
43
+ "cheap": 22,
44
+ "mid": 18,
45
+ "premium": 9
46
+ },
47
+ "premium": {
48
+ "free": 2,
49
+ "cheap": 4,
50
+ "mid": 11,
51
+ "premium": 23
52
+ }
53
+ }
54
+ }
@@ -0,0 +1,121 @@
1
+ # Architecture Vote
2
+
3
+ **Project:** A3M Router Architecture Analysis
4
+ **Date:** 2026-06-03
5
+ **Agents:** 3 (Architecture, Performance, Test Coverage)
6
+ **Goal:** Identify top 3 improvements via council vote
7
+
8
+ ---
9
+
10
+ ## Architecture Vote
11
+
12
+ ### Finding 1: BROKEN MAIN ENTRY POINT (Critical)
13
+
14
+ **Files:**
15
+ - `src/index.ts` (lines 63, 112)
16
+ - `src/routing/advancedRouter.ts` (MISSING)
17
+ - `src/cost/costTracker.ts` (MISSING)
18
+
19
+ **Problem:** The main public API (`index.ts`) exports from modules that do not exist:
20
+ ```typescript
21
+ // Line 63 - MODULE NOT FOUND
22
+ export { CostTracker } from './cost/costTracker';
23
+
24
+ // Lines 110-112 - MODULE NOT FOUND
25
+ import { CostTracker } from './cost/costTracker';
26
+ ```
27
+
28
+ The `routing/advancedRouter.ts` is imported but never created - only `universal_router.py` (Python) exists.
29
+
30
+ **Solution:**
31
+ 1. Create `src/routing/advancedRouter.ts` as TypeScript wrapper around Python router, OR
32
+ 2. Consolidate routing into existing TypeScript modules (`crossModelValidation.ts`, `providerRetry.ts`)
33
+ 3. Replace missing `CostTracker` with existing `costAnalytics.ts` (already has full functionality)
34
+
35
+ **Deletion test:** FIXING SCATTERS complexity - deleting the broken exports would make the module load but lose public API surface. Must fix the imports properly.
36
+
37
+ ---
38
+
39
+ ### Finding 2: ROUTING LOGIC DUALITY (Python/TypeScript Boundary Leak)
40
+
41
+ **Files:**
42
+ - `src/routing/universal_router.py` (Python - learned routing, model profiles, online learning)
43
+ - `src/routing/providerRetry.ts` (TypeScript - thin wrapper)
44
+ - `src/ensemble.ts` (TypeScript - parallel execution, but assumes router works)
45
+ - `src/index.ts` (broken export chain)
46
+
47
+ **Problem:** The routing engine is split across two languages with no clear seam:
48
+ - `UniversalModelRouter` (Python) has all the ML logic: learned profiles, quality prediction, online learning
49
+ - TypeScript has fragments: `crossModelValidation.ts` (validator), `providerRetry.ts` (retry), `providerHealth.ts` (health)
50
+ - `ensemble.ts` calls `router.chat()` but router is undefined in TypeScript
51
+
52
+ The boundary leaks: `ensemble.ts` needs a router but can't access the Python `UniversalModelRouter` from TypeScript.
53
+
54
+ **Solution:**
55
+ 1. Implement routing logic in TypeScript for tight integration with ensemble
56
+ 2. Keep `universal_router.py` as optional optimization, not required
57
+ 3. Create `src/routing/index.ts` that exports unified routing interface
58
+
59
+ **Deletion test:** CONCENTRATES complexity - currently routing logic is scattered across 4+ files in 2 languages. Consolidation would reduce cognitive load.
60
+
61
+ ---
62
+
63
+ ### Finding 3: MEMORY SYSTEM FRAGMENTATION (6 implementations, no clear hierarchy)
64
+
65
+ **Files:**
66
+ - `src/memory/memoryTree.ts` (TypeScript, main)
67
+ - `src/memory/semantic_memory.py` (Python, ChromaDB optional)
68
+ - `src/memory/agentic_memory.py` (Python)
69
+ - `src/memory/working_memory.py` (Python)
70
+ - `src/memory/simple_memory.py` (Python)
71
+ - `src/memory/obsidianVault.ts` (TypeScript, export only)
72
+
73
+ **Problem:** 6 memory implementations with unclear purpose:
74
+ - No abstract base class or interface
75
+ - `MemoryTree.ts` has 3KB chunking, but Python memories have different semantics
76
+ - `semantic_memory.py` mentions "Memoria framework (arXiv:2512.12686)" but not integrated
77
+ - No clear path for when to use which memory
78
+
79
+ **Solution:**
80
+ 1. Create abstract `MemoryStore` interface in TypeScript
81
+ 2. Implement as `LocalMemoryStore` (current MemoryTree) and `SemanticMemoryStore` (current semantic_memory.py)
82
+ 3. Drop `agentic_memory.py`, `working_memory.py`, `simple_memory.py` if unused or consolidate
83
+
84
+ **Deletion test:** CONCENTRATES complexity - consolidating 6 memory implementations into 2 clear abstractions reduces the surface area significantly.
85
+
86
+ ---
87
+
88
+ ### Finding 4: PROVIDER CONFIG TIGHT COUPLING (47+ providers baked in)
89
+
90
+ **Files:**
91
+ - `src/providers/providerConfig.ts` (1000+ lines of hardcoded provider definitions)
92
+
93
+ **Problem:** 47+ providers are baked into a single 1000+ line file with no abstraction:
94
+ - Adding/removing providers requires modifying core code
95
+ - Provider-specific logic (format: openai/anthropic/google) is duplicated per-provider
96
+ - No plugin architecture for third-party providers
97
+
98
+ **Solution:**
99
+ 1. Create `ProviderAdapter` interface for API format handling (OpenAI, Anthropic, Google)
100
+ 2. Move provider definitions to `providers/` as individual files
101
+ 3. Implement registry pattern with hot-reload from config files
102
+
103
+ **Deletion test:** CONCENTRATES complexity - but splitting 1000 lines into 47 files creates new complexity. Better to create adapters and keep definitions data-driven.
104
+
105
+ ---
106
+
107
+ ## Vote: Priority Ranking
108
+
109
+ **I vote for Finding #1 (Broken Main Entry Point) as highest priority.**
110
+
111
+ **Rationale:** This is the only finding that currently BREAKS the build. The other findings are architectural debt, but Finding 1 prevents the public API from loading at all. No amount of internal refactoring matters if `import { A3MRouter } from 'adaptive-memory-multi-model-router'` fails.
112
+
113
+ **Implementation order:**
114
+ 1. **P0:** Fix broken imports in `src/index.ts`
115
+ 2. **P1:** Unify routing across Python/TypeScript boundary
116
+ 3. **P2:** Consolidate memory system into 2 clear implementations
117
+ 4. **P3:** Extract provider adapters from hardcoded config
118
+
119
+ ---
120
+
121
+ *Submitted by: Architecture Agent*
@@ -0,0 +1,93 @@
1
+ ## Test Coverage Vote
2
+
3
+ ### Finding 1: GuardrailEngine Has Zero Tests (CRITICAL)
4
+ - **Files:** `src/security/guardrails.ts` (500+ lines)
5
+ - **Problem:** Critical security module has NO tests despite handling:
6
+ - Prompt injection detection (DAN, jailbreak, ignore instructions)
7
+ - PII redaction (emails, phones, SSN, credit cards, API keys)
8
+ - Content filtering (violence, hate, self-harm)
9
+ - Output validation and hallucination detection
10
+ - **Solution:** Add comprehensive tests for:
11
+ - Each prompt injection pattern detection
12
+ - PII redaction for all types
13
+ - Content filter thresholds
14
+ - GuardrailEngine.checkInput() and checkOutput() full paths
15
+ - Custom guardrail registration
16
+ - Blocklist management
17
+ - **Tests gained:** ~25 tests covering security-critical paths
18
+
19
+ ### Finding 2: EnsembleOrchestrator Has Zero Tests (CORE P0)
20
+ - **Files:** `src/ensemble.ts`, `tests/routing/ensembleVoting.test.ts` (partial)
21
+ - **Problem:** Core P0 feature (parallel multi-LLM execution with result merging) has only partial tests in `tests/routing/`. The `EnsembleOrchestrator` class is NOT tested, and these critical paths are missing:
22
+ - Actual provider calls (mocked in ensembleVoting.test.ts)
23
+ - Majority voting strategy
24
+ - Weighted voting strategy
25
+ - Conservative strategy with uncertainty detection
26
+ - All-providers-fail error handling
27
+ - **Solution:** Add integration tests for EnsembleOrchestrator with:
28
+ - Mock providers returning different answers
29
+ - Strategy-specific voting logic
30
+ - Confidence scoring accuracy
31
+ - Reasoning generation
32
+ - **Tests gained:** ~15 tests for the unique differentiator
33
+
34
+ ### Finding 3: CostAnalytics Has Zero Tests (BUSINESS-CRITICAL)
35
+ - **Files:** `src/analytics/costAnalytics.ts`
36
+ - **Problem:** Cost tracking and savings calculation has no tests:
37
+ - No verification of savings calculation against known baselines
38
+ - No tests for BASELINE_COSTS accuracy
39
+ - No export format tests (JSON/CSV)
40
+ - No period filtering (hour/day/week/month)
41
+ - No auto-rotation when maxRecords exceeded
42
+ - **Solution:** Add tests for:
43
+ - Savings calculation accuracy (compare against known costs)
44
+ - Period filtering correctness
45
+ - Export format validation
46
+ - Provider/query type breakdown accuracy
47
+ - **Tests gained:** ~12 tests for cost accuracy
48
+
49
+ ### Finding 4: SDK Class (A3MRouter) Has Only Structure Tests
50
+ - **Files:** `src/sdk.ts`, `test-council/1-structure-tests.test.ts`
51
+ - **Problem:** SDK wrapper has basic type-checking but no behavioral tests:
52
+ - No tests for route() behavior
53
+ - No tests for analyze() feature extraction
54
+ - No tests for tier classification thresholds
55
+ - No tests for recommend() method
56
+ - **Solution:** Add behavioral tests verifying:
57
+ - Route decisions match expected patterns
58
+ - Feature extraction accuracy
59
+ - Tier classification boundaries (free/cheap/mid/premium)
60
+ - Batch routing consistency
61
+ - **Tests gained:** ~10 tests
62
+
63
+ ### Finding 5: Observability Middleware Not Tested
64
+ - **Files:** `src/observability/middleware.ts`
65
+ - **Problem:** Middleware components not tested:
66
+ - observabilityMiddleware not tested
67
+ - budgetAlertMiddleware not tested
68
+ - Integration with Express/Fastify not tested
69
+ - **Solution:** Add middleware tests verifying:
70
+ - Request/response interception
71
+ - Header injection
72
+ - Budget alert triggers
73
+ - Error propagation
74
+ - **Tests gained:** ~8 tests
75
+
76
+ ---
77
+
78
+ ## Vote
79
+
80
+ **I vote for Finding #1 (GuardrailEngine) as highest priority.**
81
+
82
+ ### Rationale:
83
+ 1. **Security-critical code without tests = production risk** - Prompt injection and PII handling bugs can leak sensitive data or bypass safety
84
+ 2. **Measurable impact** - Every user query goes through guardrails before routing
85
+ 3. **Clear scope** - 500+ lines with well-defined functions that are easy to test
86
+ 4. **Existing patterns** - The providerRetry.test.ts shows how to structure similar complex tests
87
+
88
+ ### Implementation estimate:
89
+ - **GuardrailEngine:** ~3 hours for comprehensive tests
90
+ - **EnsembleOrchestrator:** ~2 hours
91
+ - **CostAnalytics:** ~1.5 hours
92
+ - **SDK:** ~1 hour
93
+ - **Middleware:** ~1 hour
@@ -0,0 +1,92 @@
1
+ {
2
+ "description": "Adaptive benchmark — tier labels based on router's actual complexity scoring and available provider landscape",
3
+ "providerContext": {
4
+ "free": ["ollama/*", "google/gemini-1.5-flash", "commandcode/*", "openrouter/*:free"],
5
+ "cheap": ["minimax/*"],
6
+ "mid": ["mistral/*", "cerebras/*", "groq/*", "meta-llama/llama-3.1-70b-instruct"],
7
+ "premium": ["google/gemini-pro-1.5", "mistralai/mistral-large", "openai/*", "anthropic/*"]
8
+ },
9
+ "queries": [
10
+ {"query": "What is 2+2?", "expectedTier": "free", "complexityRange": [0, 0.15]},
11
+ {"query": "What is the capital of France?", "expectedTier": "free", "complexityRange": [0, 0.15]},
12
+ {"query": "How do you say hello in Spanish?", "expectedTier": "free", "complexityRange": [0, 0.15]},
13
+ {"query": "Convert 100 Celsius to Fahrenheit", "expectedTier": "free", "complexityRange": [0, 0.15]},
14
+ {"query": "What is the largest planet in the solar system?", "expectedTier": "free", "complexityRange": [0, 0.15]},
15
+ {"query": "How many ounces in a pound?", "expectedTier": "free", "complexityRange": [0, 0.15]},
16
+ {"query": "What is the speed of light?", "expectedTier": "free", "complexityRange": [0, 0.15]},
17
+ {"query": "Who wrote Romeo and Juliet?", "expectedTier": "free", "complexityRange": [0, 0.15]},
18
+ {"query": "What is photosynthesis?", "expectedTier": "free", "complexityRange": [0, 0.15]},
19
+ {"query": "What is the square root of 144?", "expectedTier": "free", "complexityRange": [0, 0.15]},
20
+ {"query": "Name three primary colors", "expectedTier": "free", "complexityRange": [0, 0.15]},
21
+ {"query": "What is the chemical symbol for gold?", "expectedTier": "free", "complexityRange": [0, 0.15]},
22
+ {"query": "How many continents are there?", "expectedTier": "free", "complexityRange": [0, 0.15]},
23
+ {"query": "What is gravity?", "expectedTier": "free", "complexityRange": [0, 0.15]},
24
+ {"query": "Define ubiquitous", "expectedTier": "free", "complexityRange": [0, 0.15]},
25
+ {"query": "What does benevolent mean?", "expectedTier": "free", "complexityRange": [0, 0.15]},
26
+ {"query": "How many bytes in a kilobyte?", "expectedTier": "free", "complexityRange": [0, 0.15]},
27
+ {"query": "What is H2O commonly known as?", "expectedTier": "free", "complexityRange": [0, 0.15]},
28
+ {"query": "Translate good morning to French", "expectedTier": "free", "complexityRange": [0, 0.15]},
29
+ {"query": "What is the time in Tokyo?", "expectedTier": "free", "complexityRange": [0, 0.15]},
30
+ {"query": "Write a Python function to sort a list", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
31
+ {"query": "Explain the difference between TCP and UDP", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
32
+ {"query": "Write a SQL query to find duplicate records", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
33
+ {"query": "Create a REST API endpoint in Express.js", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
34
+ {"query": "Explain Docker containers vs virtual machines", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
35
+ {"query": "Write a regex to validate email addresses", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
36
+ {"query": "How do I reverse a string in JavaScript?", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
37
+ {"query": "Write a for loop in Python", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
38
+ {"query": "What is the difference between let and const in JavaScript?", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
39
+ {"query": "Explain what an API is to a non-technical person", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
40
+ {"query": "How do I center a div in CSS?", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
41
+ {"query": "Write a basic HTML form", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
42
+ {"query": "Explain git merge vs rebase", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
43
+ {"query": "What is a RESTful API?", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
44
+ {"query": "How do I read a file in Node.js?", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
45
+ {"query": "Write a simple unit test in Jest", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
46
+ {"query": "Explain what a database index does", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
47
+ {"query": "How do I parse JSON in Python?", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
48
+ {"query": "Write a Python script to send an email", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
49
+ {"query": "Create a simple login form in HTML/CSS", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
50
+ {"query": "How do I make an HTTP request in JavaScript?", "expectedTier": "cheap", "complexityRange": [0.1, 0.4]},
51
+ {"query": "Design a REST API for a blog with users, posts, and comments", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
52
+ {"query": "Explain how OAuth 2.0 authentication works", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
53
+ {"query": "Design a rate limiting system for a web API", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
54
+ {"query": "How would you implement a caching layer for a web application", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
55
+ {"query": "Compare and contrast SQL and NoSQL databases", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
56
+ {"query": "Design a user authentication system with JWT tokens", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
57
+ {"query": "Explain the CAP theorem and its implications", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
58
+ {"query": "How do you design a URL shortening service like bit.ly?", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
59
+ {"query": "Design a real-time notification system", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
60
+ {"query": "Explain the pros and cons of microservices vs monolith", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
61
+ {"query": "How would you implement search functionality in a web application", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
62
+ {"query": "Design a payment processing system", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
63
+ {"query": "Explain how blockchain achieves consensus", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
64
+ {"query": "Design a multi-tenant SaaS architecture", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
65
+ {"query": "How do you handle database migrations in production?", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
66
+ {"query": "Design a logging and monitoring system", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
67
+ {"query": "Explain load balancing algorithms", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
68
+ {"query": "How would you design a file upload system?", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
69
+ {"query": "Design a chat application with WebSockets", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
70
+ {"query": "Explain event-driven architecture patterns", "expectedTier": "mid", "complexityRange": [0.4, 0.7]},
71
+ {"query": "Design a distributed system that handles 10 million transactions per second", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
72
+ {"query": "Architect a real-time collaboration system like Google Docs", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
73
+ {"query": "Design a machine learning pipeline from data ingestion to model serving", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
74
+ {"query": "Create a comprehensive technical design for a social media platform", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
75
+ {"query": "Design a zero-downtime deployment strategy for a distributed system", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
76
+ {"query": "Architect a system that processes streaming data with sub-second latency", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
77
+ {"query": "Design a fraud detection system using machine learning", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
78
+ {"query": "Create an architecture for a global CDN with edge computing", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
79
+ {"query": "Design a multi-region active-active database architecture", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
80
+ {"query": "Architect a system for real-time video transcoding at scale", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
81
+ {"query": "Design a privacy-preserving data analytics system", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
82
+ {"query": "Create a comprehensive security architecture for a financial platform", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
83
+ {"query": "Design a system that handles 1 billion events per day", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
84
+ {"query": "Architect a serverless system with consistent performance under load", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
85
+ {"query": "Design a data warehouse architecture for petabyte-scale analytics", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
86
+ {"query": "Create a multi-cloud hybrid architecture strategy", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
87
+ {"query": "Design a system for real-time anomaly detection in financial transactions", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
88
+ {"query": "Architect a mesh network for IoT at scale", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
89
+ {"query": "Design a comprehensive disaster recovery strategy for a global platform", "expectedTier": "premium", "complexityRange": [0.6, 1.0]},
90
+ {"query": "Create an architecture for autonomous vehicle sensor fusion", "expectedTier": "premium", "complexityRange": [0.6, 1.0]}
91
+ ]
92
+ }