codehere 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of codehere might be problematic. Click here for more details.

Files changed (603) hide show
  1. package/README.md +51 -25
  2. package/dist/agents/base.d.ts +107 -0
  3. package/dist/agents/base.d.ts.map +1 -0
  4. package/dist/agents/base.js +101 -0
  5. package/dist/agents/base.js.map +1 -0
  6. package/dist/agents/orchestrator-model-driven.d.ts +41 -0
  7. package/dist/agents/orchestrator-model-driven.d.ts.map +1 -0
  8. package/dist/agents/orchestrator-model-driven.js +141 -0
  9. package/dist/agents/orchestrator-model-driven.js.map +1 -0
  10. package/dist/agents/react-orchestrator-agent.d.ts +15 -0
  11. package/dist/agents/react-orchestrator-agent.d.ts.map +1 -0
  12. package/dist/agents/react-orchestrator-agent.js +54 -0
  13. package/dist/agents/react-orchestrator-agent.js.map +1 -0
  14. package/dist/application/agents/execution-agent.d.ts +68 -0
  15. package/dist/application/agents/execution-agent.d.ts.map +1 -0
  16. package/dist/application/agents/execution-agent.js +299 -0
  17. package/dist/application/agents/execution-agent.js.map +1 -0
  18. package/dist/application/agents/multi-agent-orchestrator.d.ts +64 -0
  19. package/dist/application/agents/multi-agent-orchestrator.d.ts.map +1 -0
  20. package/dist/application/agents/multi-agent-orchestrator.js +209 -0
  21. package/dist/application/agents/multi-agent-orchestrator.js.map +1 -0
  22. package/dist/application/agents/planning-agent.d.ts +61 -0
  23. package/dist/application/agents/planning-agent.d.ts.map +1 -0
  24. package/dist/application/agents/planning-agent.js +357 -0
  25. package/dist/application/agents/planning-agent.js.map +1 -0
  26. package/dist/application/agents/validation-agent.d.ts +64 -0
  27. package/dist/application/agents/validation-agent.d.ts.map +1 -0
  28. package/dist/application/agents/validation-agent.js +182 -0
  29. package/dist/application/agents/validation-agent.js.map +1 -0
  30. package/dist/application/architectures/plan-and-act.d.ts +94 -0
  31. package/dist/application/architectures/plan-and-act.d.ts.map +1 -0
  32. package/dist/application/architectures/plan-and-act.js +242 -0
  33. package/dist/application/architectures/plan-and-act.js.map +1 -0
  34. package/dist/application/index.d.ts +12 -0
  35. package/dist/application/index.d.ts.map +1 -0
  36. package/dist/application/index.js +12 -0
  37. package/dist/application/index.js.map +1 -0
  38. package/dist/application/services/agent-factory.d.ts +9 -0
  39. package/dist/application/services/agent-factory.d.ts.map +1 -0
  40. package/dist/application/services/agent-factory.js +28 -0
  41. package/dist/application/services/agent-factory.js.map +1 -0
  42. package/dist/application/services/dependency-container.d.ts +140 -0
  43. package/dist/application/services/dependency-container.d.ts.map +1 -0
  44. package/dist/application/services/dependency-container.js +402 -0
  45. package/dist/application/services/dependency-container.js.map +1 -0
  46. package/dist/application/services/git-context-service.d.ts +30 -0
  47. package/dist/application/services/git-context-service.d.ts.map +1 -0
  48. package/dist/application/services/git-context-service.js +83 -0
  49. package/dist/application/services/git-context-service.js.map +1 -0
  50. package/dist/application/services/intelligent-router.d.ts +74 -0
  51. package/dist/application/services/intelligent-router.d.ts.map +1 -0
  52. package/dist/application/services/intelligent-router.js +711 -0
  53. package/dist/application/services/intelligent-router.js.map +1 -0
  54. package/dist/application/services/tool-executor-service.d.ts +14 -0
  55. package/dist/application/services/tool-executor-service.d.ts.map +1 -0
  56. package/dist/application/services/tool-executor-service.js +94 -0
  57. package/dist/application/services/tool-executor-service.js.map +1 -0
  58. package/dist/application/use-cases/ask-question-use-case.d.ts +36 -0
  59. package/dist/application/use-cases/ask-question-use-case.d.ts.map +1 -0
  60. package/dist/application/use-cases/ask-question-use-case.js +150 -0
  61. package/dist/application/use-cases/ask-question-use-case.js.map +1 -0
  62. package/dist/application/use-cases/edit-file-use-case.d.ts +76 -0
  63. package/dist/application/use-cases/edit-file-use-case.d.ts.map +1 -0
  64. package/dist/application/use-cases/edit-file-use-case.js +685 -0
  65. package/dist/application/use-cases/edit-file-use-case.js.map +1 -0
  66. package/dist/application/use-cases/explain-file-use-case.d.ts +21 -0
  67. package/dist/application/use-cases/explain-file-use-case.d.ts.map +1 -0
  68. package/dist/application/use-cases/explain-file-use-case.js +50 -0
  69. package/dist/application/use-cases/explain-file-use-case.js.map +1 -0
  70. package/dist/application/use-cases/index-codebase-use-case.d.ts +46 -0
  71. package/dist/application/use-cases/index-codebase-use-case.d.ts.map +1 -0
  72. package/dist/application/use-cases/index-codebase-use-case.js +113 -0
  73. package/dist/application/use-cases/index-codebase-use-case.js.map +1 -0
  74. package/dist/application/use-cases/planning-use-case.d.ts +46 -0
  75. package/dist/application/use-cases/planning-use-case.d.ts.map +1 -0
  76. package/dist/application/use-cases/planning-use-case.js +267 -0
  77. package/dist/application/use-cases/planning-use-case.js.map +1 -0
  78. package/dist/application/use-cases/react-orchestration-use-case.d.ts +51 -0
  79. package/dist/application/use-cases/react-orchestration-use-case.d.ts.map +1 -0
  80. package/dist/application/use-cases/react-orchestration-use-case.js +325 -0
  81. package/dist/application/use-cases/react-orchestration-use-case.js.map +1 -0
  82. package/dist/application/use-cases/reflexion-use-case.d.ts +24 -0
  83. package/dist/application/use-cases/reflexion-use-case.d.ts.map +1 -0
  84. package/dist/application/use-cases/reflexion-use-case.js +30 -0
  85. package/dist/application/use-cases/reflexion-use-case.js.map +1 -0
  86. package/dist/application/workflows/deterministic-workflows.d.ts +61 -0
  87. package/dist/application/workflows/deterministic-workflows.d.ts.map +1 -0
  88. package/dist/application/workflows/deterministic-workflows.js +189 -0
  89. package/dist/application/workflows/deterministic-workflows.js.map +1 -0
  90. package/dist/cache.d.ts.map +1 -1
  91. package/dist/cache.js +1 -3
  92. package/dist/cache.js.map +1 -1
  93. package/dist/chat.js +10 -10
  94. package/dist/chat.js.map +1 -1
  95. package/dist/docs.d.ts.map +1 -1
  96. package/dist/docs.js +1 -2
  97. package/dist/docs.js.map +1 -1
  98. package/dist/domain/entities/code-chunk.d.ts +26 -0
  99. package/dist/domain/entities/code-chunk.d.ts.map +1 -0
  100. package/dist/domain/entities/code-chunk.js +6 -0
  101. package/dist/domain/entities/code-chunk.js.map +1 -0
  102. package/dist/domain/entities/decision.d.ts +37 -0
  103. package/dist/domain/entities/decision.d.ts.map +1 -0
  104. package/dist/domain/entities/decision.js +9 -0
  105. package/dist/domain/entities/decision.js.map +1 -0
  106. package/dist/domain/entities/edit.d.ts +35 -0
  107. package/dist/domain/entities/edit.d.ts.map +1 -0
  108. package/dist/domain/entities/edit.js +6 -0
  109. package/dist/domain/entities/edit.js.map +1 -0
  110. package/dist/domain/entities/knowledge-node.d.ts +83 -0
  111. package/dist/domain/entities/knowledge-node.d.ts.map +1 -0
  112. package/dist/domain/entities/knowledge-node.js +9 -0
  113. package/dist/domain/entities/knowledge-node.js.map +1 -0
  114. package/dist/domain/entities/knowledge-preservation.d.ts +42 -0
  115. package/dist/domain/entities/knowledge-preservation.d.ts.map +1 -0
  116. package/dist/domain/entities/knowledge-preservation.js +10 -0
  117. package/dist/domain/entities/knowledge-preservation.js.map +1 -0
  118. package/dist/domain/entities/memory.d.ts +36 -0
  119. package/dist/domain/entities/memory.d.ts.map +1 -0
  120. package/dist/domain/entities/memory.js +6 -0
  121. package/dist/domain/entities/memory.js.map +1 -0
  122. package/dist/domain/entities/pattern.d.ts +49 -0
  123. package/dist/domain/entities/pattern.d.ts.map +1 -0
  124. package/dist/domain/entities/pattern.js +7 -0
  125. package/dist/domain/entities/pattern.js.map +1 -0
  126. package/dist/domain/entities/plan.d.ts +42 -0
  127. package/dist/domain/entities/plan.d.ts.map +1 -0
  128. package/dist/domain/entities/plan.js +6 -0
  129. package/dist/domain/entities/plan.js.map +1 -0
  130. package/dist/domain/entities/query.d.ts +17 -0
  131. package/dist/domain/entities/query.d.ts.map +1 -0
  132. package/dist/domain/entities/query.js +6 -0
  133. package/dist/domain/entities/query.js.map +1 -0
  134. package/dist/domain/index.d.ts +16 -0
  135. package/dist/domain/index.d.ts.map +1 -0
  136. package/dist/domain/index.js +19 -0
  137. package/dist/domain/index.js.map +1 -0
  138. package/dist/domain/interfaces/ai-service.interface.d.ts +62 -0
  139. package/dist/domain/interfaces/ai-service.interface.d.ts.map +1 -0
  140. package/dist/domain/interfaces/ai-service.interface.js +6 -0
  141. package/dist/domain/interfaces/ai-service.interface.js.map +1 -0
  142. package/dist/domain/interfaces/code-analyzer.interface.d.ts +38 -0
  143. package/dist/domain/interfaces/code-analyzer.interface.d.ts.map +1 -0
  144. package/dist/domain/interfaces/code-analyzer.interface.js +6 -0
  145. package/dist/domain/interfaces/code-analyzer.interface.js.map +1 -0
  146. package/dist/domain/interfaces/decision-repository.interface.d.ts +51 -0
  147. package/dist/domain/interfaces/decision-repository.interface.d.ts.map +1 -0
  148. package/dist/domain/interfaces/decision-repository.interface.js +9 -0
  149. package/dist/domain/interfaces/decision-repository.interface.js.map +1 -0
  150. package/dist/domain/interfaces/embedding-repository.interface.d.ts +28 -0
  151. package/dist/domain/interfaces/embedding-repository.interface.d.ts.map +1 -0
  152. package/dist/domain/interfaces/embedding-repository.interface.js +6 -0
  153. package/dist/domain/interfaces/embedding-repository.interface.js.map +1 -0
  154. package/dist/domain/interfaces/knowledge-graph-repository.interface.d.ts +91 -0
  155. package/dist/domain/interfaces/knowledge-graph-repository.interface.d.ts.map +1 -0
  156. package/dist/domain/interfaces/knowledge-graph-repository.interface.js +9 -0
  157. package/dist/domain/interfaces/knowledge-graph-repository.interface.js.map +1 -0
  158. package/dist/domain/interfaces/knowledge-preservation-repository.interface.d.ts +50 -0
  159. package/dist/domain/interfaces/knowledge-preservation-repository.interface.d.ts.map +1 -0
  160. package/dist/domain/interfaces/knowledge-preservation-repository.interface.js +8 -0
  161. package/dist/domain/interfaces/knowledge-preservation-repository.interface.js.map +1 -0
  162. package/dist/domain/interfaces/memory-repository.interface.d.ts +49 -0
  163. package/dist/domain/interfaces/memory-repository.interface.d.ts.map +1 -0
  164. package/dist/domain/interfaces/memory-repository.interface.js +6 -0
  165. package/dist/domain/interfaces/memory-repository.interface.js.map +1 -0
  166. package/dist/domain/interfaces/pattern-repository.interface.d.ts +48 -0
  167. package/dist/domain/interfaces/pattern-repository.interface.d.ts.map +1 -0
  168. package/dist/domain/interfaces/pattern-repository.interface.js +6 -0
  169. package/dist/domain/interfaces/pattern-repository.interface.js.map +1 -0
  170. package/dist/domain/interfaces/verification-service.interface.d.ts +20 -0
  171. package/dist/domain/interfaces/verification-service.interface.d.ts.map +1 -0
  172. package/dist/domain/interfaces/verification-service.interface.js +6 -0
  173. package/dist/domain/interfaces/verification-service.interface.js.map +1 -0
  174. package/dist/domain/services/codebase-detector.d.ts +18 -0
  175. package/dist/domain/services/codebase-detector.d.ts.map +1 -0
  176. package/dist/domain/services/codebase-detector.js +91 -0
  177. package/dist/domain/services/codebase-detector.js.map +1 -0
  178. package/dist/domain/services/cross-team-pattern-sharing.d.ts +65 -0
  179. package/dist/domain/services/cross-team-pattern-sharing.d.ts.map +1 -0
  180. package/dist/domain/services/cross-team-pattern-sharing.js +125 -0
  181. package/dist/domain/services/cross-team-pattern-sharing.js.map +1 -0
  182. package/dist/domain/services/decision-recorder.d.ts +76 -0
  183. package/dist/domain/services/decision-recorder.d.ts.map +1 -0
  184. package/dist/domain/services/decision-recorder.js +223 -0
  185. package/dist/domain/services/decision-recorder.js.map +1 -0
  186. package/dist/domain/services/decision-retriever.d.ts +75 -0
  187. package/dist/domain/services/decision-retriever.d.ts.map +1 -0
  188. package/dist/domain/services/decision-retriever.js +133 -0
  189. package/dist/domain/services/decision-retriever.js.map +1 -0
  190. package/dist/domain/services/graded-memory-activation.d.ts +37 -0
  191. package/dist/domain/services/graded-memory-activation.d.ts.map +1 -0
  192. package/dist/domain/services/graded-memory-activation.js +69 -0
  193. package/dist/domain/services/graded-memory-activation.js.map +1 -0
  194. package/dist/domain/services/knowledge-access.d.ts +63 -0
  195. package/dist/domain/services/knowledge-access.d.ts.map +1 -0
  196. package/dist/domain/services/knowledge-access.js +132 -0
  197. package/dist/domain/services/knowledge-access.js.map +1 -0
  198. package/dist/domain/services/knowledge-extractor.d.ts +54 -0
  199. package/dist/domain/services/knowledge-extractor.d.ts.map +1 -0
  200. package/dist/domain/services/knowledge-extractor.js +247 -0
  201. package/dist/domain/services/knowledge-extractor.js.map +1 -0
  202. package/dist/domain/services/knowledge-graph-builder.d.ts +70 -0
  203. package/dist/domain/services/knowledge-graph-builder.d.ts.map +1 -0
  204. package/dist/domain/services/knowledge-graph-builder.js +268 -0
  205. package/dist/domain/services/knowledge-graph-builder.js.map +1 -0
  206. package/dist/domain/services/knowledge-graph-query.d.ts +69 -0
  207. package/dist/domain/services/knowledge-graph-query.d.ts.map +1 -0
  208. package/dist/domain/services/knowledge-graph-query.js +187 -0
  209. package/dist/domain/services/knowledge-graph-query.js.map +1 -0
  210. package/dist/domain/services/memory-retriever.d.ts +30 -0
  211. package/dist/domain/services/memory-retriever.d.ts.map +1 -0
  212. package/dist/domain/services/memory-retriever.js +82 -0
  213. package/dist/domain/services/memory-retriever.js.map +1 -0
  214. package/dist/domain/services/memory-synthesizer.d.ts +57 -0
  215. package/dist/domain/services/memory-synthesizer.d.ts.map +1 -0
  216. package/dist/domain/services/memory-synthesizer.js +91 -0
  217. package/dist/domain/services/memory-synthesizer.js.map +1 -0
  218. package/dist/domain/services/pattern-extractor.d.ts +108 -0
  219. package/dist/domain/services/pattern-extractor.d.ts.map +1 -0
  220. package/dist/domain/services/pattern-extractor.js +442 -0
  221. package/dist/domain/services/pattern-extractor.js.map +1 -0
  222. package/dist/domain/services/query-intent-classifier.d.ts +16 -0
  223. package/dist/domain/services/query-intent-classifier.d.ts.map +1 -0
  224. package/dist/domain/services/query-intent-classifier.js +140 -0
  225. package/dist/domain/services/query-intent-classifier.js.map +1 -0
  226. package/dist/domain/services/react-loop.d.ts +44 -0
  227. package/dist/domain/services/react-loop.d.ts.map +1 -0
  228. package/dist/domain/services/react-loop.js +110 -0
  229. package/dist/domain/services/react-loop.js.map +1 -0
  230. package/dist/edit.d.ts +0 -12
  231. package/dist/edit.d.ts.map +1 -1
  232. package/dist/edit.js +76 -351
  233. package/dist/edit.js.map +1 -1
  234. package/dist/embed.d.ts +0 -4
  235. package/dist/embed.d.ts.map +1 -1
  236. package/dist/embed.js +100 -174
  237. package/dist/embed.js.map +1 -1
  238. package/dist/error-handler.d.ts +1 -0
  239. package/dist/error-handler.d.ts.map +1 -1
  240. package/dist/error-handler.js +46 -3
  241. package/dist/error-handler.js.map +1 -1
  242. package/dist/index.js +228 -231
  243. package/dist/index.js.map +1 -1
  244. package/dist/infrastructure/ai/cohere-ai-service.d.ts +54 -0
  245. package/dist/infrastructure/ai/cohere-ai-service.d.ts.map +1 -0
  246. package/dist/infrastructure/ai/cohere-ai-service.js +547 -0
  247. package/dist/infrastructure/ai/cohere-ai-service.js.map +1 -0
  248. package/dist/infrastructure/ai/command-r-evaluation.d.ts +42 -0
  249. package/dist/infrastructure/ai/command-r-evaluation.d.ts.map +1 -0
  250. package/dist/infrastructure/ai/command-r-evaluation.js +206 -0
  251. package/dist/infrastructure/ai/command-r-evaluation.js.map +1 -0
  252. package/dist/infrastructure/ai/model-config.d.ts +47 -0
  253. package/dist/infrastructure/ai/model-config.d.ts.map +1 -0
  254. package/dist/infrastructure/ai/model-config.js +84 -0
  255. package/dist/infrastructure/ai/model-config.js.map +1 -0
  256. package/dist/infrastructure/cache/embedding-cache.d.ts +46 -0
  257. package/dist/infrastructure/cache/embedding-cache.d.ts.map +1 -0
  258. package/dist/infrastructure/cache/embedding-cache.js +104 -0
  259. package/dist/infrastructure/cache/embedding-cache.js.map +1 -0
  260. package/dist/infrastructure/chunking/ast-code-chunker.d.ts +12 -0
  261. package/dist/infrastructure/chunking/ast-code-chunker.d.ts.map +1 -0
  262. package/dist/infrastructure/chunking/ast-code-chunker.js +19 -0
  263. package/dist/infrastructure/chunking/ast-code-chunker.js.map +1 -0
  264. package/dist/infrastructure/chunking/code-aware-chunker.d.ts +63 -0
  265. package/dist/infrastructure/chunking/code-aware-chunker.d.ts.map +1 -0
  266. package/dist/infrastructure/chunking/code-aware-chunker.js +397 -0
  267. package/dist/infrastructure/chunking/code-aware-chunker.js.map +1 -0
  268. package/dist/infrastructure/config/config-manager.d.ts +79 -0
  269. package/dist/infrastructure/config/config-manager.d.ts.map +1 -0
  270. package/dist/infrastructure/config/config-manager.js +162 -0
  271. package/dist/infrastructure/config/config-manager.js.map +1 -0
  272. package/dist/infrastructure/cost/cost-tracker.d.ts +90 -0
  273. package/dist/infrastructure/cost/cost-tracker.d.ts.map +1 -0
  274. package/dist/infrastructure/cost/cost-tracker.js +353 -0
  275. package/dist/infrastructure/cost/cost-tracker.js.map +1 -0
  276. package/dist/infrastructure/file-scanner/file-scanner.d.ts +31 -0
  277. package/dist/infrastructure/file-scanner/file-scanner.d.ts.map +1 -0
  278. package/dist/infrastructure/file-scanner/file-scanner.js +106 -0
  279. package/dist/infrastructure/file-scanner/file-scanner.js.map +1 -0
  280. package/dist/infrastructure/governance/nist-ai-rmf.d.ts +107 -0
  281. package/dist/infrastructure/governance/nist-ai-rmf.d.ts.map +1 -0
  282. package/dist/infrastructure/governance/nist-ai-rmf.js +294 -0
  283. package/dist/infrastructure/governance/nist-ai-rmf.js.map +1 -0
  284. package/dist/infrastructure/governance/policy-as-code.d.ts +90 -0
  285. package/dist/infrastructure/governance/policy-as-code.d.ts.map +1 -0
  286. package/dist/infrastructure/governance/policy-as-code.js +244 -0
  287. package/dist/infrastructure/governance/policy-as-code.js.map +1 -0
  288. package/dist/infrastructure/governance/prompt-to-code-lineage.d.ts +138 -0
  289. package/dist/infrastructure/governance/prompt-to-code-lineage.d.ts.map +1 -0
  290. package/dist/infrastructure/governance/prompt-to-code-lineage.js +241 -0
  291. package/dist/infrastructure/governance/prompt-to-code-lineage.js.map +1 -0
  292. package/dist/infrastructure/index.d.ts +7 -0
  293. package/dist/infrastructure/index.d.ts.map +1 -0
  294. package/dist/infrastructure/index.js +7 -0
  295. package/dist/infrastructure/index.js.map +1 -0
  296. package/dist/infrastructure/observability/execution-tracer.d.ts +105 -0
  297. package/dist/infrastructure/observability/execution-tracer.d.ts.map +1 -0
  298. package/dist/infrastructure/observability/execution-tracer.js +190 -0
  299. package/dist/infrastructure/observability/execution-tracer.js.map +1 -0
  300. package/dist/infrastructure/observability/prompt-versioner.d.ts +67 -0
  301. package/dist/infrastructure/observability/prompt-versioner.d.ts.map +1 -0
  302. package/dist/infrastructure/observability/prompt-versioner.js +145 -0
  303. package/dist/infrastructure/observability/prompt-versioner.js.map +1 -0
  304. package/dist/infrastructure/protocols/a2a-metadata.d.ts +278 -0
  305. package/dist/infrastructure/protocols/a2a-metadata.d.ts.map +1 -0
  306. package/dist/infrastructure/protocols/a2a-metadata.js +137 -0
  307. package/dist/infrastructure/protocols/a2a-metadata.js.map +1 -0
  308. package/dist/infrastructure/protocols/a2a-protocol.d.ts +132 -0
  309. package/dist/infrastructure/protocols/a2a-protocol.d.ts.map +1 -0
  310. package/dist/infrastructure/protocols/a2a-protocol.js +314 -0
  311. package/dist/infrastructure/protocols/a2a-protocol.js.map +1 -0
  312. package/dist/infrastructure/protocols/mcp-oauth.d.ts +91 -0
  313. package/dist/infrastructure/protocols/mcp-oauth.d.ts.map +1 -0
  314. package/dist/infrastructure/protocols/mcp-oauth.js +184 -0
  315. package/dist/infrastructure/protocols/mcp-oauth.js.map +1 -0
  316. package/dist/infrastructure/protocols/mcp-server.d.ts +126 -0
  317. package/dist/infrastructure/protocols/mcp-server.d.ts.map +1 -0
  318. package/dist/infrastructure/protocols/mcp-server.js +333 -0
  319. package/dist/infrastructure/protocols/mcp-server.js.map +1 -0
  320. package/dist/infrastructure/protocols/streaming-handler.d.ts +57 -0
  321. package/dist/infrastructure/protocols/streaming-handler.d.ts.map +1 -0
  322. package/dist/infrastructure/protocols/streaming-handler.js +103 -0
  323. package/dist/infrastructure/protocols/streaming-handler.js.map +1 -0
  324. package/dist/infrastructure/security/ai-sast-scanner.d.ts +55 -0
  325. package/dist/infrastructure/security/ai-sast-scanner.d.ts.map +1 -0
  326. package/dist/infrastructure/security/ai-sast-scanner.js +163 -0
  327. package/dist/infrastructure/security/ai-sast-scanner.js.map +1 -0
  328. package/dist/infrastructure/security/docker-sandbox.d.ts +57 -0
  329. package/dist/infrastructure/security/docker-sandbox.d.ts.map +1 -0
  330. package/dist/infrastructure/security/docker-sandbox.js +178 -0
  331. package/dist/infrastructure/security/docker-sandbox.js.map +1 -0
  332. package/dist/infrastructure/security/enhanced-security-gate.d.ts +51 -0
  333. package/dist/infrastructure/security/enhanced-security-gate.d.ts.map +1 -0
  334. package/dist/infrastructure/security/enhanced-security-gate.js +92 -0
  335. package/dist/infrastructure/security/enhanced-security-gate.js.map +1 -0
  336. package/dist/infrastructure/security/input-validator.d.ts +33 -0
  337. package/dist/infrastructure/security/input-validator.d.ts.map +1 -0
  338. package/dist/infrastructure/security/input-validator.js +152 -0
  339. package/dist/infrastructure/security/input-validator.js.map +1 -0
  340. package/dist/infrastructure/security/license-scanner.d.ts +55 -0
  341. package/dist/infrastructure/security/license-scanner.d.ts.map +1 -0
  342. package/dist/infrastructure/security/license-scanner.js +167 -0
  343. package/dist/infrastructure/security/license-scanner.js.map +1 -0
  344. package/dist/infrastructure/security/provider-bias-detector.d.ts +53 -0
  345. package/dist/infrastructure/security/provider-bias-detector.d.ts.map +1 -0
  346. package/dist/infrastructure/security/provider-bias-detector.js +164 -0
  347. package/dist/infrastructure/security/provider-bias-detector.js.map +1 -0
  348. package/dist/infrastructure/security/sandbox-executor.d.ts +34 -0
  349. package/dist/infrastructure/security/sandbox-executor.d.ts.map +1 -0
  350. package/dist/infrastructure/security/sandbox-executor.js +64 -0
  351. package/dist/infrastructure/security/sandbox-executor.js.map +1 -0
  352. package/dist/infrastructure/storage/memory-stream-service.d.ts +47 -0
  353. package/dist/infrastructure/storage/memory-stream-service.d.ts.map +1 -0
  354. package/dist/infrastructure/storage/memory-stream-service.js +204 -0
  355. package/dist/infrastructure/storage/memory-stream-service.js.map +1 -0
  356. package/dist/infrastructure/storage/sqlite-decision-repository.d.ts +29 -0
  357. package/dist/infrastructure/storage/sqlite-decision-repository.d.ts.map +1 -0
  358. package/dist/infrastructure/storage/sqlite-decision-repository.js +232 -0
  359. package/dist/infrastructure/storage/sqlite-decision-repository.js.map +1 -0
  360. package/dist/infrastructure/storage/sqlite-embedding-repository.d.ts +24 -0
  361. package/dist/infrastructure/storage/sqlite-embedding-repository.d.ts.map +1 -0
  362. package/dist/infrastructure/storage/sqlite-embedding-repository.js +162 -0
  363. package/dist/infrastructure/storage/sqlite-embedding-repository.js.map +1 -0
  364. package/dist/infrastructure/storage/sqlite-knowledge-graph-repository.d.ts +41 -0
  365. package/dist/infrastructure/storage/sqlite-knowledge-graph-repository.d.ts.map +1 -0
  366. package/dist/infrastructure/storage/sqlite-knowledge-graph-repository.js +417 -0
  367. package/dist/infrastructure/storage/sqlite-knowledge-graph-repository.js.map +1 -0
  368. package/dist/infrastructure/storage/sqlite-knowledge-preservation-repository.d.ts +29 -0
  369. package/dist/infrastructure/storage/sqlite-knowledge-preservation-repository.d.ts.map +1 -0
  370. package/dist/infrastructure/storage/sqlite-knowledge-preservation-repository.js +230 -0
  371. package/dist/infrastructure/storage/sqlite-knowledge-preservation-repository.js.map +1 -0
  372. package/dist/infrastructure/storage/sqlite-memory-repository.d.ts +40 -0
  373. package/dist/infrastructure/storage/sqlite-memory-repository.d.ts.map +1 -0
  374. package/dist/infrastructure/storage/sqlite-memory-repository.js +229 -0
  375. package/dist/infrastructure/storage/sqlite-memory-repository.js.map +1 -0
  376. package/dist/infrastructure/storage/sqlite-pattern-repository.d.ts +25 -0
  377. package/dist/infrastructure/storage/sqlite-pattern-repository.d.ts.map +1 -0
  378. package/dist/infrastructure/storage/sqlite-pattern-repository.js +249 -0
  379. package/dist/infrastructure/storage/sqlite-pattern-repository.js.map +1 -0
  380. package/dist/infrastructure/ux/appropriate-friction.d.ts +77 -0
  381. package/dist/infrastructure/ux/appropriate-friction.d.ts.map +1 -0
  382. package/dist/infrastructure/ux/appropriate-friction.js +213 -0
  383. package/dist/infrastructure/ux/appropriate-friction.js.map +1 -0
  384. package/dist/infrastructure/ux/bi-directional-learning.d.ts +109 -0
  385. package/dist/infrastructure/ux/bi-directional-learning.d.ts.map +1 -0
  386. package/dist/infrastructure/ux/bi-directional-learning.js +200 -0
  387. package/dist/infrastructure/ux/bi-directional-learning.js.map +1 -0
  388. package/dist/infrastructure/ux/expectation-management.d.ts +65 -0
  389. package/dist/infrastructure/ux/expectation-management.d.ts.map +1 -0
  390. package/dist/infrastructure/ux/expectation-management.js +193 -0
  391. package/dist/infrastructure/ux/expectation-management.js.map +1 -0
  392. package/dist/infrastructure/ux/hitl-validation.d.ts +104 -0
  393. package/dist/infrastructure/ux/hitl-validation.d.ts.map +1 -0
  394. package/dist/infrastructure/ux/hitl-validation.js +211 -0
  395. package/dist/infrastructure/ux/hitl-validation.js.map +1 -0
  396. package/dist/infrastructure/ux/progressive-disclosure.d.ts +84 -0
  397. package/dist/infrastructure/ux/progressive-disclosure.d.ts.map +1 -0
  398. package/dist/infrastructure/ux/progressive-disclosure.js +235 -0
  399. package/dist/infrastructure/ux/progressive-disclosure.js.map +1 -0
  400. package/dist/infrastructure/ux/team-standards.d.ts +94 -0
  401. package/dist/infrastructure/ux/team-standards.d.ts.map +1 -0
  402. package/dist/infrastructure/ux/team-standards.js +196 -0
  403. package/dist/infrastructure/ux/team-standards.js.map +1 -0
  404. package/dist/infrastructure/verification/verification-service.d.ts +12 -0
  405. package/dist/infrastructure/verification/verification-service.d.ts.map +1 -0
  406. package/dist/infrastructure/verification/verification-service.js +47 -0
  407. package/dist/infrastructure/verification/verification-service.js.map +1 -0
  408. package/dist/infrastructure/xai/attention-visualizer.d.ts +73 -0
  409. package/dist/infrastructure/xai/attention-visualizer.d.ts.map +1 -0
  410. package/dist/infrastructure/xai/attention-visualizer.js +174 -0
  411. package/dist/infrastructure/xai/attention-visualizer.js.map +1 -0
  412. package/dist/infrastructure/xai/cot-visualizer.d.ts +105 -0
  413. package/dist/infrastructure/xai/cot-visualizer.d.ts.map +1 -0
  414. package/dist/infrastructure/xai/cot-visualizer.js +239 -0
  415. package/dist/infrastructure/xai/cot-visualizer.js.map +1 -0
  416. package/dist/infrastructure/xai/decision-tree-log.d.ts +104 -0
  417. package/dist/infrastructure/xai/decision-tree-log.d.ts.map +1 -0
  418. package/dist/infrastructure/xai/decision-tree-log.js +216 -0
  419. package/dist/infrastructure/xai/decision-tree-log.js.map +1 -0
  420. package/dist/infrastructure/xai/interactive-xai.d.ts +106 -0
  421. package/dist/infrastructure/xai/interactive-xai.d.ts.map +1 -0
  422. package/dist/infrastructure/xai/interactive-xai.js +262 -0
  423. package/dist/infrastructure/xai/interactive-xai.js.map +1 -0
  424. package/dist/infrastructure/xai/uncertainty-quantifier.d.ts +80 -0
  425. package/dist/infrastructure/xai/uncertainty-quantifier.d.ts.map +1 -0
  426. package/dist/infrastructure/xai/uncertainty-quantifier.js +201 -0
  427. package/dist/infrastructure/xai/uncertainty-quantifier.js.map +1 -0
  428. package/dist/intelligent-retrieval.d.ts.map +1 -1
  429. package/dist/intelligent-retrieval.js +8 -1
  430. package/dist/intelligent-retrieval.js.map +1 -1
  431. package/dist/intent/classifier.d.ts +6 -0
  432. package/dist/intent/classifier.d.ts.map +1 -0
  433. package/dist/intent/classifier.js +2 -0
  434. package/dist/intent/classifier.js.map +1 -0
  435. package/dist/intent/context.d.ts +4 -0
  436. package/dist/intent/context.d.ts.map +1 -0
  437. package/dist/intent/context.js +2 -0
  438. package/dist/intent/context.js.map +1 -0
  439. package/dist/iterative-refinement.d.ts.map +1 -1
  440. package/dist/iterative-refinement.js +20 -3
  441. package/dist/iterative-refinement.js.map +1 -1
  442. package/dist/learning.d.ts.map +1 -1
  443. package/dist/learning.js +1 -2
  444. package/dist/learning.js.map +1 -1
  445. package/dist/monitoring.d.ts.map +1 -1
  446. package/dist/monitoring.js +1 -2
  447. package/dist/monitoring.js.map +1 -1
  448. package/dist/parallel-processor.d.ts +3 -2
  449. package/dist/parallel-processor.d.ts.map +1 -1
  450. package/dist/parallel-processor.js +183 -56
  451. package/dist/parallel-processor.js.map +1 -1
  452. package/dist/presentation/cli/commands/ask-command.d.ts +8 -0
  453. package/dist/presentation/cli/commands/ask-command.d.ts.map +1 -0
  454. package/dist/presentation/cli/commands/ask-command.js +133 -0
  455. package/dist/presentation/cli/commands/ask-command.js.map +1 -0
  456. package/dist/presentation/cli/commands/config-command.d.ts +9 -0
  457. package/dist/presentation/cli/commands/config-command.d.ts.map +1 -0
  458. package/dist/presentation/cli/commands/config-command.js +123 -0
  459. package/dist/presentation/cli/commands/config-command.js.map +1 -0
  460. package/dist/presentation/cli/commands/cost-command.d.ts +8 -0
  461. package/dist/presentation/cli/commands/cost-command.d.ts.map +1 -0
  462. package/dist/presentation/cli/commands/cost-command.js +191 -0
  463. package/dist/presentation/cli/commands/cost-command.js.map +1 -0
  464. package/dist/presentation/cli/commands/decision-command.d.ts +12 -0
  465. package/dist/presentation/cli/commands/decision-command.d.ts.map +1 -0
  466. package/dist/presentation/cli/commands/decision-command.js +207 -0
  467. package/dist/presentation/cli/commands/decision-command.js.map +1 -0
  468. package/dist/presentation/cli/commands/help-command.d.ts +9 -0
  469. package/dist/presentation/cli/commands/help-command.d.ts.map +1 -0
  470. package/dist/presentation/cli/commands/help-command.js +281 -0
  471. package/dist/presentation/cli/commands/help-command.js.map +1 -0
  472. package/dist/presentation/cli/commands/knowledge-command.d.ts +13 -0
  473. package/dist/presentation/cli/commands/knowledge-command.d.ts.map +1 -0
  474. package/dist/presentation/cli/commands/knowledge-command.js +129 -0
  475. package/dist/presentation/cli/commands/knowledge-command.js.map +1 -0
  476. package/dist/presentation/cli/commands/learning-dashboard-command.d.ts +8 -0
  477. package/dist/presentation/cli/commands/learning-dashboard-command.d.ts.map +1 -0
  478. package/dist/presentation/cli/commands/learning-dashboard-command.js +183 -0
  479. package/dist/presentation/cli/commands/learning-dashboard-command.js.map +1 -0
  480. package/dist/presentation/cli/commands/orchestrate-command.d.ts +8 -0
  481. package/dist/presentation/cli/commands/orchestrate-command.d.ts.map +1 -0
  482. package/dist/presentation/cli/commands/orchestrate-command.js +112 -0
  483. package/dist/presentation/cli/commands/orchestrate-command.js.map +1 -0
  484. package/dist/presentation/cli/commands/plan-command.d.ts +8 -0
  485. package/dist/presentation/cli/commands/plan-command.d.ts.map +1 -0
  486. package/dist/presentation/cli/commands/plan-command.js +114 -0
  487. package/dist/presentation/cli/commands/plan-command.js.map +1 -0
  488. package/dist/presentation/cli/commands/react-command.d.ts +8 -0
  489. package/dist/presentation/cli/commands/react-command.d.ts.map +1 -0
  490. package/dist/presentation/cli/commands/react-command.js +99 -0
  491. package/dist/presentation/cli/commands/react-command.js.map +1 -0
  492. package/dist/presentation/cli/commands/setup-command.d.ts +10 -0
  493. package/dist/presentation/cli/commands/setup-command.d.ts.map +1 -0
  494. package/dist/presentation/cli/commands/setup-command.js +231 -0
  495. package/dist/presentation/cli/commands/setup-command.js.map +1 -0
  496. package/dist/presentation/cli/commands/smart-command.d.ts +6 -0
  497. package/dist/presentation/cli/commands/smart-command.d.ts.map +1 -0
  498. package/dist/presentation/cli/commands/smart-command.js +212 -0
  499. package/dist/presentation/cli/commands/smart-command.js.map +1 -0
  500. package/dist/presentation/cli/commands/trace-command.d.ts +8 -0
  501. package/dist/presentation/cli/commands/trace-command.d.ts.map +1 -0
  502. package/dist/presentation/cli/commands/trace-command.js +125 -0
  503. package/dist/presentation/cli/commands/trace-command.js.map +1 -0
  504. package/dist/presentation/cli/commands/undo-command.d.ts +8 -0
  505. package/dist/presentation/cli/commands/undo-command.d.ts.map +1 -0
  506. package/dist/presentation/cli/commands/undo-command.js +141 -0
  507. package/dist/presentation/cli/commands/undo-command.js.map +1 -0
  508. package/dist/presentation/cli/error-display.d.ts +23 -0
  509. package/dist/presentation/cli/error-display.d.ts.map +1 -0
  510. package/dist/presentation/cli/error-display.js +122 -0
  511. package/dist/presentation/cli/error-display.js.map +1 -0
  512. package/dist/refactor.d.ts.map +1 -1
  513. package/dist/refactor.js +2 -4
  514. package/dist/refactor.js.map +1 -1
  515. package/dist/search.d.ts.map +1 -1
  516. package/dist/search.js +2 -63
  517. package/dist/search.js.map +1 -1
  518. package/dist/session.d.ts.map +1 -1
  519. package/dist/session.js +52 -3
  520. package/dist/session.js.map +1 -1
  521. package/dist/testgen.d.ts.map +1 -1
  522. package/dist/testgen.js +1 -2
  523. package/dist/testgen.js.map +1 -1
  524. package/dist/tools/bash.d.ts +53 -0
  525. package/dist/tools/bash.d.ts.map +1 -0
  526. package/dist/tools/bash.js +213 -0
  527. package/dist/tools/bash.js.map +1 -0
  528. package/dist/tools/edit.d.ts +48 -0
  529. package/dist/tools/edit.d.ts.map +1 -0
  530. package/dist/tools/edit.js +235 -0
  531. package/dist/tools/edit.js.map +1 -0
  532. package/dist/tools/executor.d.ts +29 -0
  533. package/dist/tools/executor.d.ts.map +1 -0
  534. package/dist/tools/executor.js +153 -0
  535. package/dist/tools/executor.js.map +1 -0
  536. package/dist/tools/git-tool.d.ts +87 -0
  537. package/dist/tools/git-tool.d.ts.map +1 -0
  538. package/dist/tools/git-tool.js +292 -0
  539. package/dist/tools/git-tool.js.map +1 -0
  540. package/dist/tools/parser.d.ts +33 -0
  541. package/dist/tools/parser.d.ts.map +1 -0
  542. package/dist/tools/parser.js +158 -0
  543. package/dist/tools/parser.js.map +1 -0
  544. package/dist/tools/registry.d.ts +74 -0
  545. package/dist/tools/registry.d.ts.map +1 -0
  546. package/dist/tools/registry.js +302 -0
  547. package/dist/tools/registry.js.map +1 -0
  548. package/dist/tools/search.d.ts +41 -0
  549. package/dist/tools/search.d.ts.map +1 -0
  550. package/dist/tools/search.js +100 -0
  551. package/dist/tools/search.js.map +1 -0
  552. package/dist/ui.d.ts.map +1 -1
  553. package/dist/ui.js +4 -2
  554. package/dist/ui.js.map +1 -1
  555. package/dist/utils/check-api-status.d.ts +12 -0
  556. package/dist/utils/check-api-status.d.ts.map +1 -0
  557. package/dist/utils/check-api-status.js +82 -0
  558. package/dist/utils/check-api-status.js.map +1 -0
  559. package/dist/utils/diff-parser.d.ts +22 -0
  560. package/dist/utils/diff-parser.d.ts.map +1 -0
  561. package/dist/utils/diff-parser.js +160 -0
  562. package/dist/utils/diff-parser.js.map +1 -0
  563. package/dist/utils/logger.d.ts +34 -0
  564. package/dist/utils/logger.d.ts.map +1 -0
  565. package/dist/utils/logger.js +56 -0
  566. package/dist/utils/logger.js.map +1 -0
  567. package/dist/utils/version.d.ts +21 -0
  568. package/dist/utils/version.d.ts.map +1 -0
  569. package/dist/utils/version.js +52 -0
  570. package/dist/utils/version.js.map +1 -0
  571. package/dist/verification/backup.d.ts +30 -0
  572. package/dist/verification/backup.d.ts.map +1 -0
  573. package/dist/verification/backup.js +238 -0
  574. package/dist/verification/backup.js.map +1 -0
  575. package/dist/verification/compiler.d.ts +20 -0
  576. package/dist/verification/compiler.d.ts.map +1 -0
  577. package/dist/verification/compiler.js +228 -0
  578. package/dist/verification/compiler.js.map +1 -0
  579. package/dist/verification/index.d.ts +59 -0
  580. package/dist/verification/index.d.ts.map +1 -0
  581. package/dist/verification/index.js +273 -0
  582. package/dist/verification/index.js.map +1 -0
  583. package/dist/verification/test-runner.d.ts +27 -0
  584. package/dist/verification/test-runner.d.ts.map +1 -0
  585. package/dist/verification/test-runner.js +379 -0
  586. package/dist/verification/test-runner.js.map +1 -0
  587. package/package.json +39 -14
  588. package/ARCHITECTURE.md +0 -240
  589. package/CHANGELOG.md +0 -44
  590. package/CONTRIBUTING.md +0 -171
  591. package/dist/benchmark.d.ts +0 -39
  592. package/dist/benchmark.d.ts.map +0 -1
  593. package/dist/benchmark.js +0 -195
  594. package/dist/benchmark.js.map +0 -1
  595. package/dist/scaffold.d.ts +0 -14
  596. package/dist/scaffold.d.ts.map +0 -1
  597. package/dist/scaffold.js +0 -85
  598. package/dist/scaffold.js.map +0 -1
  599. package/templates/next-page/app/layout.tsx +0 -19
  600. package/templates/next-page/app/page.tsx +0 -10
  601. package/templates/next-page/package.json +0 -22
  602. package/templates/node-api/index.js +0 -57
  603. package/templates/node-api/package.json +0 -13
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Infrastructure: Interactive XAI System
3
+ *
4
+ * Allows users to click on code for explanations (interactive exploration)
5
+ * Research: Interactive XAI differentiates from competitors
6
+ *
7
+ * Features:
8
+ * - Code span explanations (why this code was generated/modified)
9
+ * - CoT step linking (which reasoning step led to this code)
10
+ * - Attention visualization (which context influenced this code)
11
+ * - Uncertainty indicators (confidence levels per code region)
12
+ */
13
+ export interface CodeExplanation {
14
+ codeSpan: {
15
+ filepath: string;
16
+ startLine: number;
17
+ endLine: number;
18
+ content: string;
19
+ };
20
+ explanation: {
21
+ why: string;
22
+ how: string;
23
+ confidence: number;
24
+ uncertainty?: {
25
+ epistemic: number;
26
+ aleatoric?: number;
27
+ isHallucinationRisk: boolean;
28
+ };
29
+ };
30
+ reasoning: {
31
+ cotStepId?: string;
32
+ cotStepNumber?: number;
33
+ attentionSpans?: Array<{
34
+ filepath: string;
35
+ lines: number[];
36
+ relevanceScore: number;
37
+ }>;
38
+ decisionPoint?: string;
39
+ };
40
+ metadata: {
41
+ toolUsed?: string;
42
+ timestamp: number;
43
+ model?: string;
44
+ };
45
+ }
46
+ export interface InteractiveXAIState {
47
+ sessionId: string;
48
+ query: string;
49
+ explanations: Map<string, CodeExplanation>;
50
+ cotTrajectoryId?: string;
51
+ attentionMapId?: string;
52
+ createdAt: number;
53
+ }
54
+ /**
55
+ * Interactive XAI System
56
+ * Enables users to explore AI reasoning interactively
57
+ */
58
+ export declare class InteractiveXAI {
59
+ private sessions;
60
+ /**
61
+ * Create new interactive XAI session
62
+ */
63
+ createSession(sessionId: string, query: string, options?: {
64
+ cotTrajectoryId?: string;
65
+ attentionMapId?: string;
66
+ }): InteractiveXAIState;
67
+ /**
68
+ * Get explanation for code span
69
+ */
70
+ getExplanation(sessionId: string, filepath: string, startLine: number, endLine: number): CodeExplanation | null;
71
+ /**
72
+ * Register code explanation
73
+ */
74
+ registerExplanation(sessionId: string, explanation: CodeExplanation): void;
75
+ /**
76
+ * Generate explanation for code span (on-demand)
77
+ */
78
+ generateExplanation(sessionId: string, filepath: string, startLine: number, endLine: number, code: string, context: {
79
+ query: string;
80
+ cotTrajectory?: any;
81
+ attentionMap?: any;
82
+ uncertainty?: any;
83
+ }): Promise<CodeExplanation>;
84
+ /**
85
+ * Get all explanations for a file
86
+ */
87
+ getFileExplanations(sessionId: string, filepath: string): CodeExplanation[];
88
+ /**
89
+ * Format explanation for display
90
+ */
91
+ formatExplanation(explanation: CodeExplanation, format: 'console' | 'json' | 'markdown'): string;
92
+ /**
93
+ * Get session state
94
+ */
95
+ getSession(sessionId: string): InteractiveXAIState | null;
96
+ private getExplanationKey;
97
+ private generateWhyExplanation;
98
+ private generateHowExplanation;
99
+ private calculateConfidence;
100
+ private findRelatedCoTStep;
101
+ private findRelatedAttentionSpans;
102
+ private findDecisionPoint;
103
+ private formatForConsole;
104
+ private formatForMarkdown;
105
+ }
106
+ //# sourceMappingURL=interactive-xai.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-xai.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/xai/interactive-xai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,WAAW,EAAE;QACX,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE;YACZ,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,mBAAmB,EAAE,OAAO,CAAC;SAC9B,CAAC;KACH,CAAC;IACF,SAAS,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,cAAc,CAAC,EAAE,KAAK,CAAC;YACrB,QAAQ,EAAE,MAAM,CAAC;YACjB,KAAK,EAAE,MAAM,EAAE,CAAC;YAChB,cAAc,EAAE,MAAM,CAAC;SACxB,CAAC,CAAC;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,QAAQ,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC3C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAA+C;IAE/D;;OAEG;IACH,aAAa,CACX,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QACR,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,mBAAmB;IActB;;OAEG;IACH,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,eAAe,GAAG,IAAI;IAUzB;;OAEG;IACH,mBAAmB,CACjB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,eAAe,GAC3B,IAAI;IAeP;;OAEG;IACG,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,CAAC,EAAE,GAAG,CAAC;QACpB,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,WAAW,CAAC,EAAE,GAAG,CAAC;KACnB,GACA,OAAO,CAAC,eAAe,CAAC;IAyC3B;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,EAAE;IAgB3E;;OAEG;IACH,iBAAiB,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM;IAWhG;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;IAMzD,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,mBAAmB;IAsB3B,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,yBAAyB;IA6BjC,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,gBAAgB;IAmCxB,OAAO,CAAC,iBAAiB;CAoC1B"}
@@ -0,0 +1,262 @@
1
+ /**
2
+ * Infrastructure: Interactive XAI System
3
+ *
4
+ * Allows users to click on code for explanations (interactive exploration)
5
+ * Research: Interactive XAI differentiates from competitors
6
+ *
7
+ * Features:
8
+ * - Code span explanations (why this code was generated/modified)
9
+ * - CoT step linking (which reasoning step led to this code)
10
+ * - Attention visualization (which context influenced this code)
11
+ * - Uncertainty indicators (confidence levels per code region)
12
+ */
13
+ /**
14
+ * Interactive XAI System
15
+ * Enables users to explore AI reasoning interactively
16
+ */
17
+ export class InteractiveXAI {
18
+ sessions = new Map();
19
+ /**
20
+ * Create new interactive XAI session
21
+ */
22
+ createSession(sessionId, query, options) {
23
+ const state = {
24
+ sessionId,
25
+ query,
26
+ explanations: new Map(),
27
+ cotTrajectoryId: options?.cotTrajectoryId,
28
+ attentionMapId: options?.attentionMapId,
29
+ createdAt: Date.now(),
30
+ };
31
+ this.sessions.set(sessionId, state);
32
+ return state;
33
+ }
34
+ /**
35
+ * Get explanation for code span
36
+ */
37
+ getExplanation(sessionId, filepath, startLine, endLine) {
38
+ const session = this.sessions.get(sessionId);
39
+ if (!session) {
40
+ return null;
41
+ }
42
+ const key = this.getExplanationKey(filepath, startLine, endLine);
43
+ return session.explanations.get(key) || null;
44
+ }
45
+ /**
46
+ * Register code explanation
47
+ */
48
+ registerExplanation(sessionId, explanation) {
49
+ const session = this.sessions.get(sessionId);
50
+ if (!session) {
51
+ throw new Error(`Session ${sessionId} not found`);
52
+ }
53
+ const key = this.getExplanationKey(explanation.codeSpan.filepath, explanation.codeSpan.startLine, explanation.codeSpan.endLine);
54
+ session.explanations.set(key, explanation);
55
+ }
56
+ /**
57
+ * Generate explanation for code span (on-demand)
58
+ */
59
+ async generateExplanation(sessionId, filepath, startLine, endLine, code, context) {
60
+ // Check if explanation already exists
61
+ const existing = this.getExplanation(sessionId, filepath, startLine, endLine);
62
+ if (existing) {
63
+ return existing;
64
+ }
65
+ // Generate explanation
66
+ const explanation = {
67
+ codeSpan: {
68
+ filepath,
69
+ startLine,
70
+ endLine,
71
+ content: code,
72
+ },
73
+ explanation: {
74
+ why: this.generateWhyExplanation(code, context.query),
75
+ how: this.generateHowExplanation(code, context.query),
76
+ confidence: this.calculateConfidence(context),
77
+ uncertainty: context.uncertainty ? {
78
+ epistemic: context.uncertainty.epistemic?.value || 0,
79
+ aleatoric: context.uncertainty.aleatoric?.value,
80
+ isHallucinationRisk: context.uncertainty.isHallucinationRisk || false,
81
+ } : undefined,
82
+ },
83
+ reasoning: {
84
+ cotStepId: this.findRelatedCoTStep(context.cotTrajectory, code),
85
+ attentionSpans: this.findRelatedAttentionSpans(context.attentionMap, filepath, startLine, endLine),
86
+ decisionPoint: this.findDecisionPoint(context.cotTrajectory, code),
87
+ },
88
+ metadata: {
89
+ timestamp: Date.now(),
90
+ },
91
+ };
92
+ // Register explanation
93
+ this.registerExplanation(sessionId, explanation);
94
+ return explanation;
95
+ }
96
+ /**
97
+ * Get all explanations for a file
98
+ */
99
+ getFileExplanations(sessionId, filepath) {
100
+ const session = this.sessions.get(sessionId);
101
+ if (!session) {
102
+ return [];
103
+ }
104
+ const explanations = [];
105
+ for (const explanation of session.explanations.values()) {
106
+ if (explanation.codeSpan.filepath === filepath) {
107
+ explanations.push(explanation);
108
+ }
109
+ }
110
+ return explanations.sort((a, b) => a.codeSpan.startLine - b.codeSpan.startLine);
111
+ }
112
+ /**
113
+ * Format explanation for display
114
+ */
115
+ formatExplanation(explanation, format) {
116
+ switch (format) {
117
+ case 'console':
118
+ return this.formatForConsole(explanation);
119
+ case 'json':
120
+ return JSON.stringify(explanation, null, 2);
121
+ case 'markdown':
122
+ return this.formatForMarkdown(explanation);
123
+ }
124
+ }
125
+ /**
126
+ * Get session state
127
+ */
128
+ getSession(sessionId) {
129
+ return this.sessions.get(sessionId) || null;
130
+ }
131
+ // Private helpers
132
+ getExplanationKey(filepath, startLine, endLine) {
133
+ return `${filepath}:${startLine}:${endLine}`;
134
+ }
135
+ generateWhyExplanation(code, query) {
136
+ // Simple heuristic-based explanation
137
+ // In production, this would use LLM to generate explanation
138
+ return `This code was generated to address: "${query.substring(0, 100)}". The implementation follows the requested functionality.`;
139
+ }
140
+ generateHowExplanation(code, query) {
141
+ // Simple heuristic-based explanation
142
+ // In production, this would use LLM to generate explanation
143
+ return `This code relates to the query by implementing the core logic requested.`;
144
+ }
145
+ calculateConfidence(context) {
146
+ // Calculate confidence based on uncertainty and context quality
147
+ let confidence = 0.8; // Default
148
+ if (context.uncertainty) {
149
+ const epistemic = context.uncertainty.epistemic?.value || 0;
150
+ confidence = 1 - epistemic; // Lower epistemic uncertainty = higher confidence
151
+ }
152
+ // Adjust based on attention map quality
153
+ if (context.attentionMap) {
154
+ const avgAttention = context.attentionMap.averageAttentionScore || 0;
155
+ confidence = (confidence + avgAttention) / 2;
156
+ }
157
+ return Math.max(0, Math.min(1, confidence));
158
+ }
159
+ findRelatedCoTStep(cotTrajectory, code) {
160
+ // Find CoT step that likely generated this code
161
+ // In production, this would analyze trajectory and code content
162
+ if (!cotTrajectory || !cotTrajectory.steps) {
163
+ return undefined;
164
+ }
165
+ // Find action steps that match code generation
166
+ for (const step of cotTrajectory.steps) {
167
+ if (step.type === 'action' && step.metadata?.tool === 'edit' || step.metadata?.tool === 'create') {
168
+ return step.stepId;
169
+ }
170
+ }
171
+ return undefined;
172
+ }
173
+ findRelatedAttentionSpans(attentionMap, filepath, startLine, endLine) {
174
+ if (!attentionMap || !attentionMap.spans) {
175
+ return undefined;
176
+ }
177
+ // Find attention spans related to this file/region
178
+ const related = [];
179
+ for (const span of attentionMap.spans) {
180
+ if (span.filepath === filepath) {
181
+ // Check if spans overlap
182
+ if (span.startLine <= endLine && span.endLine >= startLine) {
183
+ related.push({
184
+ filepath: span.filepath,
185
+ lines: Array.from({ length: span.endLine - span.startLine + 1 }, (_, i) => span.startLine + i),
186
+ relevanceScore: span.attentionScore,
187
+ });
188
+ }
189
+ }
190
+ }
191
+ return related.length > 0 ? related : undefined;
192
+ }
193
+ findDecisionPoint(cotTrajectory, code) {
194
+ // Find decision point that led to this code
195
+ if (!cotTrajectory || !cotTrajectory.steps) {
196
+ return undefined;
197
+ }
198
+ for (const step of cotTrajectory.steps) {
199
+ if (step.type === 'decision') {
200
+ return step.metadata?.decision || step.content;
201
+ }
202
+ }
203
+ return undefined;
204
+ }
205
+ formatForConsole(explanation) {
206
+ let output = '';
207
+ output += `\n${'═'.repeat(80)}\n`;
208
+ output += `Code Explanation: ${explanation.codeSpan.filepath} (lines ${explanation.codeSpan.startLine}-${explanation.codeSpan.endLine})\n`;
209
+ output += `${'═'.repeat(80)}\n\n`;
210
+ output += `Why:\n ${explanation.explanation.why}\n\n`;
211
+ output += `How:\n ${explanation.explanation.how}\n\n`;
212
+ output += `Confidence: ${(explanation.explanation.confidence * 100).toFixed(1)}%\n`;
213
+ if (explanation.explanation.uncertainty) {
214
+ output += `\nUncertainty:\n`;
215
+ output += ` Epistemic: ${(explanation.explanation.uncertainty.epistemic * 100).toFixed(1)}%\n`;
216
+ if (explanation.explanation.uncertainty.isHallucinationRisk) {
217
+ output += ` ⚠️ Hallucination Risk Detected\n`;
218
+ }
219
+ }
220
+ if (explanation.reasoning.cotStepNumber) {
221
+ output += `\nRelated Reasoning Step: #${explanation.reasoning.cotStepNumber}\n`;
222
+ }
223
+ if (explanation.reasoning.attentionSpans && explanation.reasoning.attentionSpans.length > 0) {
224
+ output += `\nContext Influences:\n`;
225
+ for (const span of explanation.reasoning.attentionSpans.slice(0, 3)) {
226
+ output += ` - ${span.filepath} (lines ${span.lines[0]}-${span.lines[span.lines.length - 1]}) - Relevance: ${(span.relevanceScore * 100).toFixed(1)}%\n`;
227
+ }
228
+ }
229
+ output += `\n${'═'.repeat(80)}\n`;
230
+ return output;
231
+ }
232
+ formatForMarkdown(explanation) {
233
+ let output = '';
234
+ output += `## Code Explanation\n\n`;
235
+ output += `**File:** \`${explanation.codeSpan.filepath}\` (lines ${explanation.codeSpan.startLine}-${explanation.codeSpan.endLine})\n\n`;
236
+ output += `### Why\n\n${explanation.explanation.why}\n\n`;
237
+ output += `### How\n\n${explanation.explanation.how}\n\n`;
238
+ output += `**Confidence:** ${(explanation.explanation.confidence * 100).toFixed(1)}%\n\n`;
239
+ if (explanation.explanation.uncertainty) {
240
+ output += `### Uncertainty\n\n`;
241
+ output += `- Epistemic: ${(explanation.explanation.uncertainty.epistemic * 100).toFixed(1)}%\n`;
242
+ if (explanation.explanation.uncertainty.isHallucinationRisk) {
243
+ output += `- ⚠️ **Hallucination Risk Detected**\n`;
244
+ }
245
+ output += `\n`;
246
+ }
247
+ if (explanation.reasoning.cotStepNumber) {
248
+ output += `### Related Reasoning\n\n`;
249
+ output += `Part of reasoning step #${explanation.reasoning.cotStepNumber}\n\n`;
250
+ }
251
+ if (explanation.reasoning.attentionSpans && explanation.reasoning.attentionSpans.length > 0) {
252
+ output += `### Context Influences\n\n`;
253
+ for (const span of explanation.reasoning.attentionSpans.slice(0, 3)) {
254
+ output += `- \`${span.filepath}\` (lines ${span.lines[0]}-${span.lines[span.lines.length - 1]}) - Relevance: ${(span.relevanceScore * 100).toFixed(1)}%\n`;
255
+ }
256
+ output += `\n`;
257
+ }
258
+ output += `\`\`\`\n${explanation.codeSpan.content}\n\`\`\`\n`;
259
+ return output;
260
+ }
261
+ }
262
+ //# sourceMappingURL=interactive-xai.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-xai.js","sourceRoot":"","sources":["../../../src/infrastructure/xai/interactive-xai.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Infrastructure: Uncertainty Quantifier
3
+ * Distinguishes Epistemic (reducible) vs Aleatoric (irreducible) uncertainty
4
+ *
5
+ * Research Finding: Epistemic uncertainty = hallucination risk
6
+ * Critical for preventing deployment of plausible but wrong code
7
+ *
8
+ * Based on research: Explainable AI (XAI) for Code Generation Agents
9
+ * - Epistemic uncertainty: Model lacks knowledge (can be reduced)
10
+ * - Aleatoric uncertainty: Inherent randomness (cannot be reduced)
11
+ * - High epistemic = high hallucination risk
12
+ * - Dropout method for estimation (Bayesian inference approximation)
13
+ */
14
+ export type UncertaintyType = 'epistemic' | 'aleatoric' | 'combined';
15
+ export interface UncertaintyScore {
16
+ type: UncertaintyType;
17
+ value: number;
18
+ explanation: string;
19
+ riskLevel: 'low' | 'medium' | 'high' | 'critical';
20
+ recommendation?: string;
21
+ }
22
+ export interface UncertaintyResult {
23
+ epistemic: UncertaintyScore;
24
+ aleatoric?: UncertaintyScore;
25
+ combined: UncertaintyScore;
26
+ isHallucinationRisk: boolean;
27
+ }
28
+ /**
29
+ * Uncertainty Quantifier
30
+ * Quantifies and communicates model uncertainty
31
+ */
32
+ export declare class UncertaintyQuantifier {
33
+ private epistemicThreshold;
34
+ /**
35
+ * Quantify uncertainty from LLM response
36
+ * Uses multiple sampling approach (dropout method)
37
+ */
38
+ quantifyUncertainty(query: string, response: string, context?: {
39
+ chunks?: any[];
40
+ memories?: any[];
41
+ }): Promise<UncertaintyResult>;
42
+ /**
43
+ * Estimate epistemic uncertainty (model knowledge gap)
44
+ * High epistemic = query outside training distribution
45
+ */
46
+ private estimateEpistemicUncertainty;
47
+ /**
48
+ * Estimate aleatoric uncertainty (inherent randomness)
49
+ */
50
+ private estimateAleatoricUncertainty;
51
+ /**
52
+ * Combine uncertainties
53
+ */
54
+ private combineUncertainties;
55
+ /**
56
+ * Check for unknown patterns (outside training distribution)
57
+ */
58
+ private hasUnknownPatterns;
59
+ /**
60
+ * Calculate context availability score
61
+ */
62
+ private calculateContextScore;
63
+ /**
64
+ * Check for hedging language (indicates uncertainty)
65
+ */
66
+ private hasHedgingLanguage;
67
+ /**
68
+ * Check for niche/proprietary APIs
69
+ */
70
+ private hasNicheAPIs;
71
+ /**
72
+ * Get risk level from uncertainty value
73
+ */
74
+ private getRiskLevel;
75
+ /**
76
+ * Set epistemic threshold
77
+ */
78
+ setEpistemicThreshold(threshold: number): void;
79
+ }
80
+ //# sourceMappingURL=uncertainty-quantifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uncertainty-quantifier.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/xai/uncertainty-quantifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;AAErE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAClD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,kBAAkB,CAAe;IAEzC;;;OAGG;IACG,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAA;KAAE,GAC7C,OAAO,CAAC,iBAAiB,CAAC;IAqB7B;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAmDpC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAuBpC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgB5B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;OAEG;IACH,OAAO,CAAC,YAAY;IAWpB;;OAEG;IACH,OAAO,CAAC,YAAY;IAapB;;OAEG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;CAG/C"}
@@ -0,0 +1,201 @@
1
+ /**
2
+ * Infrastructure: Uncertainty Quantifier
3
+ * Distinguishes Epistemic (reducible) vs Aleatoric (irreducible) uncertainty
4
+ *
5
+ * Research Finding: Epistemic uncertainty = hallucination risk
6
+ * Critical for preventing deployment of plausible but wrong code
7
+ *
8
+ * Based on research: Explainable AI (XAI) for Code Generation Agents
9
+ * - Epistemic uncertainty: Model lacks knowledge (can be reduced)
10
+ * - Aleatoric uncertainty: Inherent randomness (cannot be reduced)
11
+ * - High epistemic = high hallucination risk
12
+ * - Dropout method for estimation (Bayesian inference approximation)
13
+ */
14
+ /**
15
+ * Uncertainty Quantifier
16
+ * Quantifies and communicates model uncertainty
17
+ */
18
+ export class UncertaintyQuantifier {
19
+ epistemicThreshold = 0.7; // High epistemic = hallucination risk
20
+ /**
21
+ * Quantify uncertainty from LLM response
22
+ * Uses multiple sampling approach (dropout method)
23
+ */
24
+ async quantifyUncertainty(query, response, context) {
25
+ // For now, use heuristics based on response characteristics
26
+ // In production, would use multiple sampling (dropout method)
27
+ // 1. Epistemic Uncertainty (model knowledge gap)
28
+ const epistemic = this.estimateEpistemicUncertainty(query, response, context);
29
+ // 2. Aleatoric Uncertainty (inherent randomness)
30
+ const aleatoric = this.estimateAleatoricUncertainty(response);
31
+ // 3. Combined Uncertainty
32
+ const combined = this.combineUncertainties(epistemic, aleatoric);
33
+ return {
34
+ epistemic,
35
+ aleatoric,
36
+ combined,
37
+ isHallucinationRisk: epistemic.value > this.epistemicThreshold,
38
+ };
39
+ }
40
+ /**
41
+ * Estimate epistemic uncertainty (model knowledge gap)
42
+ * High epistemic = query outside training distribution
43
+ */
44
+ estimateEpistemicUncertainty(query, response, context) {
45
+ let epistemicValue = 0;
46
+ const factors = [];
47
+ // Factor 1: Query complexity (unknown patterns)
48
+ if (this.hasUnknownPatterns(query)) {
49
+ epistemicValue += 0.3;
50
+ factors.push('Query contains unknown patterns');
51
+ }
52
+ // Factor 2: Context availability (low context = high uncertainty)
53
+ const contextScore = this.calculateContextScore(context);
54
+ if (contextScore < 0.3) {
55
+ epistemicValue += 0.3;
56
+ factors.push('Low context availability');
57
+ }
58
+ // Factor 3: Response confidence markers (hedging language)
59
+ if (this.hasHedgingLanguage(response)) {
60
+ epistemicValue += 0.2;
61
+ factors.push('Response contains hedging language');
62
+ }
63
+ // Factor 4: Niche/proprietary API usage (outside training)
64
+ if (this.hasNicheAPIs(response)) {
65
+ epistemicValue += 0.4;
66
+ factors.push('Niche or proprietary API usage detected');
67
+ }
68
+ epistemicValue = Math.min(epistemicValue, 1.0);
69
+ const riskLevel = this.getRiskLevel(epistemicValue);
70
+ const recommendation = epistemicValue > this.epistemicThreshold
71
+ ? 'High epistemic uncertainty detected. This may indicate hallucination risk. Verify output carefully, especially for niche APIs or proprietary patterns.'
72
+ : undefined;
73
+ return {
74
+ type: 'epistemic',
75
+ value: epistemicValue,
76
+ explanation: factors.length > 0
77
+ ? `Epistemic uncertainty factors: ${factors.join('; ')}`
78
+ : 'Low epistemic uncertainty - query appears within model knowledge',
79
+ riskLevel,
80
+ recommendation,
81
+ };
82
+ }
83
+ /**
84
+ * Estimate aleatoric uncertainty (inherent randomness)
85
+ */
86
+ estimateAleatoricUncertainty(response) {
87
+ // Aleatoric uncertainty is harder to estimate from single response
88
+ // Would require multiple samples in production
89
+ // For now, estimate based on response variability markers
90
+ let aleatoricValue = 0;
91
+ // Multiple valid solutions increase aleatoric uncertainty
92
+ if (response.includes('alternative') || response.includes('could also')) {
93
+ aleatoricValue += 0.2;
94
+ }
95
+ // Default to low aleatoric (assuming deterministic generation)
96
+ aleatoricValue = Math.min(aleatoricValue, 0.3);
97
+ return {
98
+ type: 'aleatoric',
99
+ value: aleatoricValue,
100
+ explanation: 'Inherent randomness in generation process',
101
+ riskLevel: aleatoricValue < 0.2 ? 'low' : 'medium',
102
+ };
103
+ }
104
+ /**
105
+ * Combine uncertainties
106
+ */
107
+ combineUncertainties(epistemic, aleatoric) {
108
+ const aleatoricValue = aleatoric?.value || 0;
109
+ const combinedValue = Math.max(epistemic.value, aleatoricValue);
110
+ return {
111
+ type: 'combined',
112
+ value: combinedValue,
113
+ explanation: `Combined uncertainty: ${epistemic.value.toFixed(2)} epistemic, ${aleatoricValue.toFixed(2)} aleatoric`,
114
+ riskLevel: this.getRiskLevel(combinedValue),
115
+ recommendation: epistemic.recommendation,
116
+ };
117
+ }
118
+ /**
119
+ * Check for unknown patterns (outside training distribution)
120
+ */
121
+ hasUnknownPatterns(query) {
122
+ // Heuristic: Very specific, niche terminology
123
+ const nichePatterns = [
124
+ /internal.*?api/i,
125
+ /proprietary/i,
126
+ /custom.*?framework/i,
127
+ /company.*?specific/i,
128
+ ];
129
+ return nichePatterns.some(pattern => pattern.test(query));
130
+ }
131
+ /**
132
+ * Calculate context availability score
133
+ */
134
+ calculateContextScore(context) {
135
+ if (!context) {
136
+ return 0;
137
+ }
138
+ const chunkCount = context.chunks?.length || 0;
139
+ const memoryCount = context.memories?.length || 0;
140
+ // More context = lower epistemic uncertainty
141
+ if (chunkCount > 5 && memoryCount > 2) {
142
+ return 0.8;
143
+ }
144
+ if (chunkCount > 3 || memoryCount > 1) {
145
+ return 0.5;
146
+ }
147
+ if (chunkCount > 0 || memoryCount > 0) {
148
+ return 0.3;
149
+ }
150
+ return 0;
151
+ }
152
+ /**
153
+ * Check for hedging language (indicates uncertainty)
154
+ */
155
+ hasHedgingLanguage(response) {
156
+ const hedging = [
157
+ /might/i,
158
+ /could/i,
159
+ /possibly/i,
160
+ /may/i,
161
+ /perhaps/i,
162
+ /probably/i,
163
+ /likely/i,
164
+ ];
165
+ return hedging.some(pattern => pattern.test(response));
166
+ }
167
+ /**
168
+ * Check for niche/proprietary APIs
169
+ */
170
+ hasNicheAPIs(response) {
171
+ const nichePatterns = [
172
+ /internal.*?sdk/i,
173
+ /company.*?api/i,
174
+ /custom.*?service/i,
175
+ /proprietary.*?library/i,
176
+ ];
177
+ return nichePatterns.some(pattern => pattern.test(response));
178
+ }
179
+ /**
180
+ * Get risk level from uncertainty value
181
+ */
182
+ getRiskLevel(value) {
183
+ if (value >= 0.8) {
184
+ return 'critical';
185
+ }
186
+ if (value >= 0.6) {
187
+ return 'high';
188
+ }
189
+ if (value >= 0.4) {
190
+ return 'medium';
191
+ }
192
+ return 'low';
193
+ }
194
+ /**
195
+ * Set epistemic threshold
196
+ */
197
+ setEpistemicThreshold(threshold) {
198
+ this.epistemicThreshold = threshold;
199
+ }
200
+ }
201
+ //# sourceMappingURL=uncertainty-quantifier.js.map