@backendkit-labs/agent-core 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (533) hide show
  1. package/dist/agent-discovery/AgentPackageLoader.d.ts +14 -0
  2. package/dist/agent-discovery/AgentPackageLoader.d.ts.map +1 -0
  3. package/dist/agent-discovery/AgentPackageLoader.js +78 -0
  4. package/dist/agent-discovery/AgentPackageLoader.js.map +1 -0
  5. package/dist/agent-discovery/RemoteAgentRegistry.d.ts +31 -0
  6. package/dist/agent-discovery/RemoteAgentRegistry.d.ts.map +1 -0
  7. package/dist/agent-discovery/RemoteAgentRegistry.js +103 -0
  8. package/dist/agent-discovery/RemoteAgentRegistry.js.map +1 -0
  9. package/dist/agent-discovery/discoverAgents.d.ts +18 -0
  10. package/dist/agent-discovery/discoverAgents.d.ts.map +1 -0
  11. package/dist/agent-discovery/discoverAgents.js +59 -0
  12. package/dist/agent-discovery/discoverAgents.js.map +1 -0
  13. package/dist/agent-discovery/index.d.ts +5 -0
  14. package/dist/agent-discovery/index.d.ts.map +1 -0
  15. package/dist/agent-discovery/index.js +12 -0
  16. package/dist/agent-discovery/index.js.map +1 -0
  17. package/dist/agent-discovery/types.d.ts +42 -0
  18. package/dist/agent-discovery/types.d.ts.map +1 -0
  19. package/dist/agent-discovery/types.js +3 -0
  20. package/dist/agent-discovery/types.js.map +1 -0
  21. package/dist/agent-memory/EpisodicMemory.d.ts +26 -0
  22. package/dist/agent-memory/EpisodicMemory.d.ts.map +1 -0
  23. package/dist/agent-memory/EpisodicMemory.js +83 -0
  24. package/dist/agent-memory/EpisodicMemory.js.map +1 -0
  25. package/dist/agent-memory/MemorySystem.d.ts +40 -0
  26. package/dist/agent-memory/MemorySystem.d.ts.map +1 -0
  27. package/dist/agent-memory/MemorySystem.js +75 -0
  28. package/dist/agent-memory/MemorySystem.js.map +1 -0
  29. package/dist/agent-memory/ProceduralMemory.d.ts +26 -0
  30. package/dist/agent-memory/ProceduralMemory.d.ts.map +1 -0
  31. package/dist/agent-memory/ProceduralMemory.js +104 -0
  32. package/dist/agent-memory/ProceduralMemory.js.map +1 -0
  33. package/dist/agent-memory/SemanticMemory.d.ts +21 -0
  34. package/dist/agent-memory/SemanticMemory.d.ts.map +1 -0
  35. package/dist/agent-memory/SemanticMemory.js +68 -0
  36. package/dist/agent-memory/SemanticMemory.js.map +1 -0
  37. package/dist/agent-memory/index.d.ts +9 -0
  38. package/dist/agent-memory/index.d.ts.map +1 -0
  39. package/dist/agent-memory/index.js +19 -0
  40. package/dist/agent-memory/index.js.map +1 -0
  41. package/dist/agent-memory/scoring.d.ts +10 -0
  42. package/dist/agent-memory/scoring.d.ts.map +1 -0
  43. package/dist/agent-memory/scoring.js +32 -0
  44. package/dist/agent-memory/scoring.js.map +1 -0
  45. package/dist/agent-memory/stores/InMemoryStore.d.ts +10 -0
  46. package/dist/agent-memory/stores/InMemoryStore.d.ts.map +1 -0
  47. package/dist/agent-memory/stores/InMemoryStore.js +25 -0
  48. package/dist/agent-memory/stores/InMemoryStore.js.map +1 -0
  49. package/dist/agent-memory/stores/JsonFileStore.d.ts +18 -0
  50. package/dist/agent-memory/stores/JsonFileStore.d.ts.map +1 -0
  51. package/dist/agent-memory/stores/JsonFileStore.js +61 -0
  52. package/dist/agent-memory/stores/JsonFileStore.js.map +1 -0
  53. package/dist/agent-memory/tools.d.ts +6 -0
  54. package/dist/agent-memory/tools.d.ts.map +1 -0
  55. package/dist/agent-memory/tools.js +74 -0
  56. package/dist/agent-memory/tools.js.map +1 -0
  57. package/dist/agent-memory/types.d.ts +75 -0
  58. package/dist/agent-memory/types.d.ts.map +1 -0
  59. package/dist/agent-memory/types.js +4 -0
  60. package/dist/agent-memory/types.js.map +1 -0
  61. package/dist/bootstrap/GlobalSeed.d.ts +46 -0
  62. package/dist/bootstrap/GlobalSeed.d.ts.map +1 -0
  63. package/dist/bootstrap/GlobalSeed.js +285 -0
  64. package/dist/bootstrap/GlobalSeed.js.map +1 -0
  65. package/dist/bootstrap/config.d.ts +24 -0
  66. package/dist/bootstrap/config.d.ts.map +1 -0
  67. package/dist/bootstrap/config.js +71 -0
  68. package/dist/bootstrap/config.js.map +1 -0
  69. package/dist/checkpoint/index.d.ts +17 -0
  70. package/dist/checkpoint/index.d.ts.map +1 -0
  71. package/dist/checkpoint/index.js +207 -0
  72. package/dist/checkpoint/index.js.map +1 -0
  73. package/dist/commands/SlashCommandRegistry.d.ts +98 -0
  74. package/dist/commands/SlashCommandRegistry.d.ts.map +1 -0
  75. package/dist/commands/SlashCommandRegistry.js +41 -0
  76. package/dist/commands/SlashCommandRegistry.js.map +1 -0
  77. package/dist/commands/builtin.d.ts +7 -0
  78. package/dist/commands/builtin.d.ts.map +1 -0
  79. package/dist/commands/builtin.js +694 -0
  80. package/dist/commands/builtin.js.map +1 -0
  81. package/dist/commands/index.d.ts +4 -0
  82. package/dist/commands/index.d.ts.map +1 -0
  83. package/dist/commands/index.js +8 -0
  84. package/dist/commands/index.js.map +1 -0
  85. package/dist/context/index.d.ts +8 -0
  86. package/dist/context/index.d.ts.map +1 -0
  87. package/dist/context/index.js +8 -0
  88. package/dist/context/index.js.map +1 -0
  89. package/dist/context/pipeline.d.ts +46 -0
  90. package/dist/context/pipeline.d.ts.map +1 -0
  91. package/dist/context/pipeline.js +111 -0
  92. package/dist/context/pipeline.js.map +1 -0
  93. package/dist/context/stages/stage-instructions.d.ts +12 -0
  94. package/dist/context/stages/stage-instructions.d.ts.map +1 -0
  95. package/dist/context/stages/stage-instructions.js +76 -0
  96. package/dist/context/stages/stage-instructions.js.map +1 -0
  97. package/dist/context/stages/stage-lessons.d.ts +13 -0
  98. package/dist/context/stages/stage-lessons.d.ts.map +1 -0
  99. package/dist/context/stages/stage-lessons.js +83 -0
  100. package/dist/context/stages/stage-lessons.js.map +1 -0
  101. package/dist/context/stages/stage-manifest.d.ts +11 -0
  102. package/dist/context/stages/stage-manifest.d.ts.map +1 -0
  103. package/dist/context/stages/stage-manifest.js +62 -0
  104. package/dist/context/stages/stage-manifest.js.map +1 -0
  105. package/dist/context/stages/stage-project.d.ts +10 -0
  106. package/dist/context/stages/stage-project.d.ts.map +1 -0
  107. package/dist/context/stages/stage-project.js +55 -0
  108. package/dist/context/stages/stage-project.js.map +1 -0
  109. package/dist/context/stages/stage-session.d.ts +12 -0
  110. package/dist/context/stages/stage-session.d.ts.map +1 -0
  111. package/dist/context/stages/stage-session.js +69 -0
  112. package/dist/context/stages/stage-session.js.map +1 -0
  113. package/dist/delegation/DelegationBus.d.ts +40 -0
  114. package/dist/delegation/DelegationBus.d.ts.map +1 -0
  115. package/dist/delegation/DelegationBus.js +68 -0
  116. package/dist/delegation/DelegationBus.js.map +1 -0
  117. package/dist/engine/AgentEngine.d.ts +212 -0
  118. package/dist/engine/AgentEngine.d.ts.map +1 -0
  119. package/dist/engine/AgentEngine.js +1037 -0
  120. package/dist/engine/AgentEngine.js.map +1 -0
  121. package/dist/engine/AgentRegistry.d.ts +13 -0
  122. package/dist/engine/AgentRegistry.d.ts.map +1 -0
  123. package/dist/engine/AgentRegistry.js +37 -0
  124. package/dist/engine/AgentRegistry.js.map +1 -0
  125. package/dist/engine/IterationManager.d.ts +79 -0
  126. package/dist/engine/IterationManager.d.ts.map +1 -0
  127. package/dist/engine/IterationManager.js +103 -0
  128. package/dist/engine/IterationManager.js.map +1 -0
  129. package/dist/engine/ProviderRegistry.d.ts +10 -0
  130. package/dist/engine/ProviderRegistry.d.ts.map +1 -0
  131. package/dist/engine/ProviderRegistry.js +28 -0
  132. package/dist/engine/ProviderRegistry.js.map +1 -0
  133. package/dist/engine/ToolRegistry.d.ts +54 -0
  134. package/dist/engine/ToolRegistry.d.ts.map +1 -0
  135. package/dist/engine/ToolRegistry.js +75 -0
  136. package/dist/engine/ToolRegistry.js.map +1 -0
  137. package/dist/engine/createBaseEngine.d.ts +169 -0
  138. package/dist/engine/createBaseEngine.d.ts.map +1 -0
  139. package/dist/engine/createBaseEngine.js +91 -0
  140. package/dist/engine/createBaseEngine.js.map +1 -0
  141. package/dist/engine/qa-orchestrator.d.ts +56 -0
  142. package/dist/engine/qa-orchestrator.d.ts.map +1 -0
  143. package/dist/engine/qa-orchestrator.js +163 -0
  144. package/dist/engine/qa-orchestrator.js.map +1 -0
  145. package/dist/index.d.ts +83 -0
  146. package/dist/index.d.ts.map +1 -0
  147. package/dist/index.js +163 -0
  148. package/dist/index.js.map +1 -0
  149. package/dist/mcp/MCPClientManager.d.ts +65 -0
  150. package/dist/mcp/MCPClientManager.d.ts.map +1 -0
  151. package/dist/mcp/MCPClientManager.js +211 -0
  152. package/dist/mcp/MCPClientManager.js.map +1 -0
  153. package/dist/mcp/index.d.ts +3 -0
  154. package/dist/mcp/index.d.ts.map +1 -0
  155. package/dist/mcp/index.js +6 -0
  156. package/dist/mcp/index.js.map +1 -0
  157. package/dist/mcp/types.d.ts +121 -0
  158. package/dist/mcp/types.d.ts.map +1 -0
  159. package/dist/mcp/types.js +3 -0
  160. package/dist/mcp/types.js.map +1 -0
  161. package/dist/memory/SessionMemory.d.ts +9 -0
  162. package/dist/memory/SessionMemory.d.ts.map +1 -0
  163. package/dist/memory/SessionMemory.js +20 -0
  164. package/dist/memory/SessionMemory.js.map +1 -0
  165. package/dist/observability/CostTracker.d.ts +19 -0
  166. package/dist/observability/CostTracker.d.ts.map +1 -0
  167. package/dist/observability/CostTracker.js +64 -0
  168. package/dist/observability/CostTracker.js.map +1 -0
  169. package/dist/observability/MetricsCollector.d.ts +17 -0
  170. package/dist/observability/MetricsCollector.d.ts.map +1 -0
  171. package/dist/observability/MetricsCollector.js +70 -0
  172. package/dist/observability/MetricsCollector.js.map +1 -0
  173. package/dist/observability/ObservabilityManager.d.ts +33 -0
  174. package/dist/observability/ObservabilityManager.d.ts.map +1 -0
  175. package/dist/observability/ObservabilityManager.js +107 -0
  176. package/dist/observability/ObservabilityManager.js.map +1 -0
  177. package/dist/observability/Tracer.d.ts +23 -0
  178. package/dist/observability/Tracer.d.ts.map +1 -0
  179. package/dist/observability/Tracer.js +65 -0
  180. package/dist/observability/Tracer.js.map +1 -0
  181. package/dist/observability/index.d.ts +7 -0
  182. package/dist/observability/index.d.ts.map +1 -0
  183. package/dist/observability/index.js +14 -0
  184. package/dist/observability/index.js.map +1 -0
  185. package/dist/observability/types.d.ts +77 -0
  186. package/dist/observability/types.d.ts.map +1 -0
  187. package/dist/observability/types.js +15 -0
  188. package/dist/observability/types.js.map +1 -0
  189. package/dist/orchestration/audit/audit-ci-blocker.d.ts +31 -0
  190. package/dist/orchestration/audit/audit-ci-blocker.d.ts.map +1 -0
  191. package/dist/orchestration/audit/audit-ci-blocker.js +120 -0
  192. package/dist/orchestration/audit/audit-ci-blocker.js.map +1 -0
  193. package/dist/orchestration/audit/audit-finding-tracer.d.ts +33 -0
  194. package/dist/orchestration/audit/audit-finding-tracer.d.ts.map +1 -0
  195. package/dist/orchestration/audit/audit-finding-tracer.js +126 -0
  196. package/dist/orchestration/audit/audit-finding-tracer.js.map +1 -0
  197. package/dist/orchestration/audit/audit-lessons-learned.d.ts +27 -0
  198. package/dist/orchestration/audit/audit-lessons-learned.d.ts.map +1 -0
  199. package/dist/orchestration/audit/audit-lessons-learned.js +155 -0
  200. package/dist/orchestration/audit/audit-lessons-learned.js.map +1 -0
  201. package/dist/orchestration/audit/audit-pending-issues.d.ts +21 -0
  202. package/dist/orchestration/audit/audit-pending-issues.d.ts.map +1 -0
  203. package/dist/orchestration/audit/audit-pending-issues.js +110 -0
  204. package/dist/orchestration/audit/audit-pending-issues.js.map +1 -0
  205. package/dist/orchestration/audit/audit-reflection-bridge.d.ts +39 -0
  206. package/dist/orchestration/audit/audit-reflection-bridge.d.ts.map +1 -0
  207. package/dist/orchestration/audit/audit-reflection-bridge.js +65 -0
  208. package/dist/orchestration/audit/audit-reflection-bridge.js.map +1 -0
  209. package/dist/orchestration/audit/audit-report-renderer.d.ts +30 -0
  210. package/dist/orchestration/audit/audit-report-renderer.d.ts.map +1 -0
  211. package/dist/orchestration/audit/audit-report-renderer.js +249 -0
  212. package/dist/orchestration/audit/audit-report-renderer.js.map +1 -0
  213. package/dist/orchestration/audit/audit-report-version-manager.d.ts +52 -0
  214. package/dist/orchestration/audit/audit-report-version-manager.d.ts.map +1 -0
  215. package/dist/orchestration/audit/audit-report-version-manager.js +144 -0
  216. package/dist/orchestration/audit/audit-report-version-manager.js.map +1 -0
  217. package/dist/orchestration/audit/audit-silent-gates-buffer.d.ts +37 -0
  218. package/dist/orchestration/audit/audit-silent-gates-buffer.d.ts.map +1 -0
  219. package/dist/orchestration/audit/audit-silent-gates-buffer.js +129 -0
  220. package/dist/orchestration/audit/audit-silent-gates-buffer.js.map +1 -0
  221. package/dist/orchestration/audit/index.d.ts +17 -0
  222. package/dist/orchestration/audit/index.d.ts.map +1 -0
  223. package/dist/orchestration/audit/index.js +26 -0
  224. package/dist/orchestration/audit/index.js.map +1 -0
  225. package/dist/orchestration/audit/types.d.ts +79 -0
  226. package/dist/orchestration/audit/types.d.ts.map +1 -0
  227. package/dist/orchestration/audit/types.js +10 -0
  228. package/dist/orchestration/audit/types.js.map +1 -0
  229. package/dist/orchestration/audit-reporter.d.ts +133 -0
  230. package/dist/orchestration/audit-reporter.d.ts.map +1 -0
  231. package/dist/orchestration/audit-reporter.js +322 -0
  232. package/dist/orchestration/audit-reporter.js.map +1 -0
  233. package/dist/orchestration/config-loader.d.ts +51 -0
  234. package/dist/orchestration/config-loader.d.ts.map +1 -0
  235. package/dist/orchestration/config-loader.js +215 -0
  236. package/dist/orchestration/config-loader.js.map +1 -0
  237. package/dist/orchestration/domain-detector.d.ts +36 -0
  238. package/dist/orchestration/domain-detector.d.ts.map +1 -0
  239. package/dist/orchestration/domain-detector.js +157 -0
  240. package/dist/orchestration/domain-detector.js.map +1 -0
  241. package/dist/orchestration/fsm.d.ts +86 -0
  242. package/dist/orchestration/fsm.d.ts.map +1 -0
  243. package/dist/orchestration/fsm.js +223 -0
  244. package/dist/orchestration/fsm.js.map +1 -0
  245. package/dist/orchestration/gate-resolver.d.ts +42 -0
  246. package/dist/orchestration/gate-resolver.d.ts.map +1 -0
  247. package/dist/orchestration/gate-resolver.js +94 -0
  248. package/dist/orchestration/gate-resolver.js.map +1 -0
  249. package/dist/orchestration/index.d.ts +15 -0
  250. package/dist/orchestration/index.d.ts.map +1 -0
  251. package/dist/orchestration/index.js +32 -0
  252. package/dist/orchestration/index.js.map +1 -0
  253. package/dist/orchestration/intent-detector.d.ts +43 -0
  254. package/dist/orchestration/intent-detector.d.ts.map +1 -0
  255. package/dist/orchestration/intent-detector.js +249 -0
  256. package/dist/orchestration/intent-detector.js.map +1 -0
  257. package/dist/orchestration/keyword-match.d.ts +17 -0
  258. package/dist/orchestration/keyword-match.d.ts.map +1 -0
  259. package/dist/orchestration/keyword-match.js +26 -0
  260. package/dist/orchestration/keyword-match.js.map +1 -0
  261. package/dist/orchestration/llm-client-adapter.d.ts +11 -0
  262. package/dist/orchestration/llm-client-adapter.d.ts.map +1 -0
  263. package/dist/orchestration/llm-client-adapter.js +30 -0
  264. package/dist/orchestration/llm-client-adapter.js.map +1 -0
  265. package/dist/orchestration/orchestrator.d.ts +153 -0
  266. package/dist/orchestration/orchestrator.d.ts.map +1 -0
  267. package/dist/orchestration/orchestrator.js +471 -0
  268. package/dist/orchestration/orchestrator.js.map +1 -0
  269. package/dist/orchestration/policy-engine.d.ts +47 -0
  270. package/dist/orchestration/policy-engine.d.ts.map +1 -0
  271. package/dist/orchestration/policy-engine.js +262 -0
  272. package/dist/orchestration/policy-engine.js.map +1 -0
  273. package/dist/orchestration/risk-scorer.d.ts +38 -0
  274. package/dist/orchestration/risk-scorer.d.ts.map +1 -0
  275. package/dist/orchestration/risk-scorer.js +145 -0
  276. package/dist/orchestration/risk-scorer.js.map +1 -0
  277. package/dist/orchestration/task-context.d.ts +195 -0
  278. package/dist/orchestration/task-context.d.ts.map +1 -0
  279. package/dist/orchestration/task-context.js +160 -0
  280. package/dist/orchestration/task-context.js.map +1 -0
  281. package/dist/orchestration/types.d.ts +111 -0
  282. package/dist/orchestration/types.d.ts.map +1 -0
  283. package/dist/orchestration/types.js +37 -0
  284. package/dist/orchestration/types.js.map +1 -0
  285. package/dist/qa/index.d.ts +3 -0
  286. package/dist/qa/index.d.ts.map +1 -0
  287. package/dist/qa/index.js +6 -0
  288. package/dist/qa/index.js.map +1 -0
  289. package/dist/qa/qa-service.d.ts +30 -0
  290. package/dist/qa/qa-service.d.ts.map +1 -0
  291. package/dist/qa/qa-service.js +200 -0
  292. package/dist/qa/qa-service.js.map +1 -0
  293. package/dist/reflection/commands/domain-commands.d.ts +78 -0
  294. package/dist/reflection/commands/domain-commands.d.ts.map +1 -0
  295. package/dist/reflection/commands/domain-commands.js +203 -0
  296. package/dist/reflection/commands/domain-commands.js.map +1 -0
  297. package/dist/reflection/domain-registry.d.ts +104 -0
  298. package/dist/reflection/domain-registry.d.ts.map +1 -0
  299. package/dist/reflection/domain-registry.js +279 -0
  300. package/dist/reflection/domain-registry.js.map +1 -0
  301. package/dist/reflection/domains/agent-domain.d.ts +40 -0
  302. package/dist/reflection/domains/agent-domain.d.ts.map +1 -0
  303. package/dist/reflection/domains/agent-domain.js +161 -0
  304. package/dist/reflection/domains/agent-domain.js.map +1 -0
  305. package/dist/reflection/domains/audit-domain.d.ts +46 -0
  306. package/dist/reflection/domains/audit-domain.d.ts.map +1 -0
  307. package/dist/reflection/domains/audit-domain.js +241 -0
  308. package/dist/reflection/domains/audit-domain.js.map +1 -0
  309. package/dist/reflection/domains/bootstrap-domain.d.ts +40 -0
  310. package/dist/reflection/domains/bootstrap-domain.d.ts.map +1 -0
  311. package/dist/reflection/domains/bootstrap-domain.js +156 -0
  312. package/dist/reflection/domains/bootstrap-domain.js.map +1 -0
  313. package/dist/reflection/domains/commit-domain.d.ts +40 -0
  314. package/dist/reflection/domains/commit-domain.d.ts.map +1 -0
  315. package/dist/reflection/domains/commit-domain.js +174 -0
  316. package/dist/reflection/domains/commit-domain.js.map +1 -0
  317. package/dist/reflection/domains/test-domain.d.ts +40 -0
  318. package/dist/reflection/domains/test-domain.d.ts.map +1 -0
  319. package/dist/reflection/domains/test-domain.js +194 -0
  320. package/dist/reflection/domains/test-domain.js.map +1 -0
  321. package/dist/reflection/failure-catalog.d.ts +100 -0
  322. package/dist/reflection/failure-catalog.d.ts.map +1 -0
  323. package/dist/reflection/failure-catalog.js +269 -0
  324. package/dist/reflection/failure-catalog.js.map +1 -0
  325. package/dist/reflection/historical-loader.d.ts +105 -0
  326. package/dist/reflection/historical-loader.d.ts.map +1 -0
  327. package/dist/reflection/historical-loader.js +462 -0
  328. package/dist/reflection/historical-loader.js.map +1 -0
  329. package/dist/reflection/hooks/agent-hook.d.ts +72 -0
  330. package/dist/reflection/hooks/agent-hook.d.ts.map +1 -0
  331. package/dist/reflection/hooks/agent-hook.js +98 -0
  332. package/dist/reflection/hooks/agent-hook.js.map +1 -0
  333. package/dist/reflection/hooks/audit-hook.d.ts +72 -0
  334. package/dist/reflection/hooks/audit-hook.d.ts.map +1 -0
  335. package/dist/reflection/hooks/audit-hook.js +112 -0
  336. package/dist/reflection/hooks/audit-hook.js.map +1 -0
  337. package/dist/reflection/hooks/bootstrap-hook.d.ts +71 -0
  338. package/dist/reflection/hooks/bootstrap-hook.d.ts.map +1 -0
  339. package/dist/reflection/hooks/bootstrap-hook.js +97 -0
  340. package/dist/reflection/hooks/bootstrap-hook.js.map +1 -0
  341. package/dist/reflection/hooks/commit-hook.d.ts +63 -0
  342. package/dist/reflection/hooks/commit-hook.d.ts.map +1 -0
  343. package/dist/reflection/hooks/commit-hook.js +90 -0
  344. package/dist/reflection/hooks/commit-hook.js.map +1 -0
  345. package/dist/reflection/hooks/test-hook.d.ts +65 -0
  346. package/dist/reflection/hooks/test-hook.d.ts.map +1 -0
  347. package/dist/reflection/hooks/test-hook.js +99 -0
  348. package/dist/reflection/hooks/test-hook.js.map +1 -0
  349. package/dist/reflection/index.d.ts +19 -0
  350. package/dist/reflection/index.d.ts.map +1 -0
  351. package/dist/reflection/index.js +40 -0
  352. package/dist/reflection/index.js.map +1 -0
  353. package/dist/reflection/lessons-memo-generator.d.ts +60 -0
  354. package/dist/reflection/lessons-memo-generator.d.ts.map +1 -0
  355. package/dist/reflection/lessons-memo-generator.js +286 -0
  356. package/dist/reflection/lessons-memo-generator.js.map +1 -0
  357. package/dist/reflection/pattern-detector.d.ts +55 -0
  358. package/dist/reflection/pattern-detector.d.ts.map +1 -0
  359. package/dist/reflection/pattern-detector.js +137 -0
  360. package/dist/reflection/pattern-detector.js.map +1 -0
  361. package/dist/reflection/policy-promoter.d.ts +86 -0
  362. package/dist/reflection/policy-promoter.d.ts.map +1 -0
  363. package/dist/reflection/policy-promoter.js +382 -0
  364. package/dist/reflection/policy-promoter.js.map +1 -0
  365. package/dist/reflection/reflection-engine.d.ts +160 -0
  366. package/dist/reflection/reflection-engine.d.ts.map +1 -0
  367. package/dist/reflection/reflection-engine.js +352 -0
  368. package/dist/reflection/reflection-engine.js.map +1 -0
  369. package/dist/reflection/types.d.ts +106 -0
  370. package/dist/reflection/types.d.ts.map +1 -0
  371. package/dist/reflection/types.js +64 -0
  372. package/dist/reflection/types.js.map +1 -0
  373. package/dist/shared/llm/resilient-client.d.ts +40 -0
  374. package/dist/shared/llm/resilient-client.d.ts.map +1 -0
  375. package/dist/shared/llm/resilient-client.js +60 -0
  376. package/dist/shared/llm/resilient-client.js.map +1 -0
  377. package/dist/shared/utils/atomic-write.d.ts +7 -0
  378. package/dist/shared/utils/atomic-write.d.ts.map +1 -0
  379. package/dist/shared/utils/atomic-write.js +52 -0
  380. package/dist/shared/utils/atomic-write.js.map +1 -0
  381. package/dist/shared/utils/git.d.ts +2 -0
  382. package/dist/shared/utils/git.d.ts.map +1 -0
  383. package/dist/shared/utils/git.js +17 -0
  384. package/dist/shared/utils/git.js.map +1 -0
  385. package/dist/shared/utils/project-key.d.ts +4 -0
  386. package/dist/shared/utils/project-key.d.ts.map +1 -0
  387. package/dist/shared/utils/project-key.js +54 -0
  388. package/dist/shared/utils/project-key.js.map +1 -0
  389. package/dist/shared/utils/string-utils.d.ts +17 -0
  390. package/dist/shared/utils/string-utils.d.ts.map +1 -0
  391. package/dist/shared/utils/string-utils.js +37 -0
  392. package/dist/shared/utils/string-utils.js.map +1 -0
  393. package/dist/skills/activator.d.ts +27 -0
  394. package/dist/skills/activator.d.ts.map +1 -0
  395. package/dist/skills/activator.js +127 -0
  396. package/dist/skills/activator.js.map +1 -0
  397. package/dist/skills/builtins/global.d.ts +7 -0
  398. package/dist/skills/builtins/global.d.ts.map +1 -0
  399. package/dist/skills/builtins/global.js +208 -0
  400. package/dist/skills/builtins/global.js.map +1 -0
  401. package/dist/skills/builtins/go-pack.d.ts +7 -0
  402. package/dist/skills/builtins/go-pack.d.ts.map +1 -0
  403. package/dist/skills/builtins/go-pack.js +263 -0
  404. package/dist/skills/builtins/go-pack.js.map +1 -0
  405. package/dist/skills/builtins/java-pack.d.ts +7 -0
  406. package/dist/skills/builtins/java-pack.d.ts.map +1 -0
  407. package/dist/skills/builtins/java-pack.js +272 -0
  408. package/dist/skills/builtins/java-pack.js.map +1 -0
  409. package/dist/skills/builtins/kotlin-pack.d.ts +9 -0
  410. package/dist/skills/builtins/kotlin-pack.d.ts.map +1 -0
  411. package/dist/skills/builtins/kotlin-pack.js +292 -0
  412. package/dist/skills/builtins/kotlin-pack.js.map +1 -0
  413. package/dist/skills/builtins/node-pack.d.ts +7 -0
  414. package/dist/skills/builtins/node-pack.d.ts.map +1 -0
  415. package/dist/skills/builtins/node-pack.js +750 -0
  416. package/dist/skills/builtins/node-pack.js.map +1 -0
  417. package/dist/skills/builtins/python-pack.d.ts +7 -0
  418. package/dist/skills/builtins/python-pack.d.ts.map +1 -0
  419. package/dist/skills/builtins/python-pack.js +303 -0
  420. package/dist/skills/builtins/python-pack.js.map +1 -0
  421. package/dist/skills/index.d.ts +11 -0
  422. package/dist/skills/index.d.ts.map +1 -0
  423. package/dist/skills/index.js +24 -0
  424. package/dist/skills/index.js.map +1 -0
  425. package/dist/skills/loader.d.ts +39 -0
  426. package/dist/skills/loader.d.ts.map +1 -0
  427. package/dist/skills/loader.js +152 -0
  428. package/dist/skills/loader.js.map +1 -0
  429. package/dist/skills/manager.d.ts +97 -0
  430. package/dist/skills/manager.d.ts.map +1 -0
  431. package/dist/skills/manager.js +296 -0
  432. package/dist/skills/manager.js.map +1 -0
  433. package/dist/skills/parse-md-skill.d.ts +14 -0
  434. package/dist/skills/parse-md-skill.d.ts.map +1 -0
  435. package/dist/skills/parse-md-skill.js +86 -0
  436. package/dist/skills/parse-md-skill.js.map +1 -0
  437. package/dist/skills/providers/github.d.ts +21 -0
  438. package/dist/skills/providers/github.d.ts.map +1 -0
  439. package/dist/skills/providers/github.js +146 -0
  440. package/dist/skills/providers/github.js.map +1 -0
  441. package/dist/skills/providers/index.d.ts +6 -0
  442. package/dist/skills/providers/index.d.ts.map +1 -0
  443. package/dist/skills/providers/index.js +12 -0
  444. package/dist/skills/providers/index.js.map +1 -0
  445. package/dist/skills/providers/local.d.ts +16 -0
  446. package/dist/skills/providers/local.d.ts.map +1 -0
  447. package/dist/skills/providers/local.js +91 -0
  448. package/dist/skills/providers/local.js.map +1 -0
  449. package/dist/skills/providers/obsidian.d.ts +31 -0
  450. package/dist/skills/providers/obsidian.d.ts.map +1 -0
  451. package/dist/skills/providers/obsidian.js +141 -0
  452. package/dist/skills/providers/obsidian.js.map +1 -0
  453. package/dist/skills/providers/skills-sh.d.ts +32 -0
  454. package/dist/skills/providers/skills-sh.d.ts.map +1 -0
  455. package/dist/skills/providers/skills-sh.js +53 -0
  456. package/dist/skills/providers/skills-sh.js.map +1 -0
  457. package/dist/skills/providers/types.d.ts +25 -0
  458. package/dist/skills/providers/types.d.ts.map +1 -0
  459. package/dist/skills/providers/types.js +3 -0
  460. package/dist/skills/providers/types.js.map +1 -0
  461. package/dist/skills/registry.d.ts +18 -0
  462. package/dist/skills/registry.d.ts.map +1 -0
  463. package/dist/skills/registry.js +45 -0
  464. package/dist/skills/registry.js.map +1 -0
  465. package/dist/skills/types.d.ts +66 -0
  466. package/dist/skills/types.d.ts.map +1 -0
  467. package/dist/skills/types.js +3 -0
  468. package/dist/skills/types.js.map +1 -0
  469. package/dist/tools/defineTool.d.ts +34 -0
  470. package/dist/tools/defineTool.d.ts.map +1 -0
  471. package/dist/tools/defineTool.js +63 -0
  472. package/dist/tools/defineTool.js.map +1 -0
  473. package/dist/transport/CallbackTransport.d.ts +12 -0
  474. package/dist/transport/CallbackTransport.d.ts.map +1 -0
  475. package/dist/transport/CallbackTransport.js +28 -0
  476. package/dist/transport/CallbackTransport.js.map +1 -0
  477. package/dist/transport/StdoutTransport.d.ts +9 -0
  478. package/dist/transport/StdoutTransport.d.ts.map +1 -0
  479. package/dist/transport/StdoutTransport.js +63 -0
  480. package/dist/transport/StdoutTransport.js.map +1 -0
  481. package/dist/transport/Transport.d.ts +8 -0
  482. package/dist/transport/Transport.d.ts.map +1 -0
  483. package/dist/transport/Transport.js +3 -0
  484. package/dist/transport/Transport.js.map +1 -0
  485. package/dist/triggers/EventBus.d.ts +14 -0
  486. package/dist/triggers/EventBus.d.ts.map +1 -0
  487. package/dist/triggers/EventBus.js +18 -0
  488. package/dist/triggers/EventBus.js.map +1 -0
  489. package/dist/triggers/TriggerManager.d.ts +28 -0
  490. package/dist/triggers/TriggerManager.d.ts.map +1 -0
  491. package/dist/triggers/TriggerManager.js +158 -0
  492. package/dist/triggers/TriggerManager.js.map +1 -0
  493. package/dist/triggers/WebhookServer.d.ts +23 -0
  494. package/dist/triggers/WebhookServer.d.ts.map +1 -0
  495. package/dist/triggers/WebhookServer.js +127 -0
  496. package/dist/triggers/WebhookServer.js.map +1 -0
  497. package/dist/triggers/createAutonomousAgent.d.ts +49 -0
  498. package/dist/triggers/createAutonomousAgent.d.ts.map +1 -0
  499. package/dist/triggers/createAutonomousAgent.js +42 -0
  500. package/dist/triggers/createAutonomousAgent.js.map +1 -0
  501. package/dist/triggers/index.d.ts +8 -0
  502. package/dist/triggers/index.d.ts.map +1 -0
  503. package/dist/triggers/index.js +12 -0
  504. package/dist/triggers/index.js.map +1 -0
  505. package/dist/triggers/types.d.ts +35 -0
  506. package/dist/triggers/types.d.ts.map +1 -0
  507. package/dist/triggers/types.js +3 -0
  508. package/dist/triggers/types.js.map +1 -0
  509. package/dist/types/index.d.ts +256 -0
  510. package/dist/types/index.d.ts.map +1 -0
  511. package/dist/types/index.js +4 -0
  512. package/dist/types/index.js.map +1 -0
  513. package/dist/workflow/WorkflowBuilder.d.ts +22 -0
  514. package/dist/workflow/WorkflowBuilder.d.ts.map +1 -0
  515. package/dist/workflow/WorkflowBuilder.js +67 -0
  516. package/dist/workflow/WorkflowBuilder.js.map +1 -0
  517. package/dist/workflow/WorkflowRunner.d.ts +22 -0
  518. package/dist/workflow/WorkflowRunner.d.ts.map +1 -0
  519. package/dist/workflow/WorkflowRunner.js +97 -0
  520. package/dist/workflow/WorkflowRunner.js.map +1 -0
  521. package/dist/workflow/index.d.ts +5 -0
  522. package/dist/workflow/index.d.ts.map +1 -0
  523. package/dist/workflow/index.js +10 -0
  524. package/dist/workflow/index.js.map +1 -0
  525. package/dist/workflow/types.d.ts +35 -0
  526. package/dist/workflow/types.d.ts.map +1 -0
  527. package/dist/workflow/types.js +3 -0
  528. package/dist/workflow/types.js.map +1 -0
  529. package/dist/workspace/index.d.ts +55 -0
  530. package/dist/workspace/index.d.ts.map +1 -0
  531. package/dist/workspace/index.js +189 -0
  532. package/dist/workspace/index.js.map +1 -0
  533. package/package.json +87 -0
@@ -0,0 +1,105 @@
1
+ /**
2
+ * @description HistoricalLoader — Carga archivos historicos de auditoria (NO-GO)
3
+ * y los convierte en FailureRecord para alimentar el Reflection Engine.
4
+ *
5
+ * Escanea ~/.deepseek-code/projects/{hash}/audits/ en busca de archivos .md
6
+ * con veredicto NO-GO o NO-GO condicional, extrae los hallazgos de la tabla
7
+ * Markdown y los persiste en failures.json, luego dispara reflect() para
8
+ * que PatternDetector detecte patrones y PolicyPromoter genere policyRules.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * const loader = new HistoricalLoader({ engine });
13
+ * const result = await loader.loadAll();
14
+ * console.log(`Cargados ${result.loaded} registros, ${result.patterns} patrones detectados`);
15
+ * ```
16
+ */
17
+ import { ReflectionEngine } from './reflection-engine';
18
+ export interface HistoricalLoadResult {
19
+ /** Total de archivos escaneados */
20
+ scannedFiles: number;
21
+ /** Archivos con veredicto NO-GO/NO-GO condicional */
22
+ noGoFiles: number;
23
+ /** Registros de fallo cargados al catalogo */
24
+ loaded: number;
25
+ /** Registros omitidos por duplicado */
26
+ skipped: number;
27
+ /** Patrones detectados tras la carga */
28
+ patterns: number;
29
+ /** Reglas promovidas tras la carga */
30
+ promotedRules: number;
31
+ /** Errores encontrados durante el proceso */
32
+ errors: string[];
33
+ /** Proyectos donde se encontro y proceso */
34
+ projectsProcessed: string[];
35
+ }
36
+ export declare class HistoricalLoader {
37
+ private engine;
38
+ private projectRoot;
39
+ private appName;
40
+ constructor(options: {
41
+ engine: ReflectionEngine;
42
+ projectRoot?: string;
43
+ appName?: string;
44
+ });
45
+ /**
46
+ * @description Escanea y carga todos los proyectos con directorios audits/.
47
+ * Si no se especifica projectRoot, escanea todos los proyectos en
48
+ * ~/.deepseek-code/projects/.
49
+ */
50
+ loadAll(options?: {
51
+ /** Escanear solo el proyecto actual (default: true) */
52
+ onlyCurrentProject?: boolean;
53
+ /** Forzar recarga aunque los registros ya existan */
54
+ force?: boolean;
55
+ }): Promise<HistoricalLoadResult>;
56
+ /**
57
+ * @description Carga un proyecto especifico por su directorio de auditorias.
58
+ */
59
+ loadProject(auditsDir: string, force?: boolean): Promise<HistoricalLoadResult>;
60
+ /**
61
+ * @description Parsea un archivo de gate Markdown y extrae metadatos + hallazgos.
62
+ */
63
+ private parseGateFile;
64
+ /**
65
+ * @description Parsea la tabla de hallazgos en formato Markdown.
66
+ * Formato esperado:
67
+ * | ID | Dimension | Hallazgo | Severidad | Evidencia | Recomendacion | Agente responsable |
68
+ */
69
+ private parseFindingsTable;
70
+ /**
71
+ * @description Parsea una fila de la tabla Markdown.
72
+ * Maneja el encoding corrupto (caracteres corruptos) limpiando el texto.
73
+ */
74
+ private parseTableRow;
75
+ /**
76
+ * @description Limpia caracteres corruptos del encoding.
77
+ */
78
+ private cleanText;
79
+ /**
80
+ * @description Mapea texto de severidad a enum.
81
+ */
82
+ private mapSeverity;
83
+ /**
84
+ * @description Determina si un archivo es GO sin hallazgos (para saltarlo).
85
+ */
86
+ private isGoWithoutFindings;
87
+ /**
88
+ * @description Infiere el dominio Reflection a partir del gate y contexto.
89
+ */
90
+ private inferDomain;
91
+ /**
92
+ * @description Infiere el failureType a partir del hallazgo y dominio.
93
+ * Usa palabras clave en el texto del hallazgo.
94
+ */
95
+ private inferFailureType;
96
+ /**
97
+ * @description Resuelve el directorio de auditorias para un proyecto.
98
+ */
99
+ private resolveProjectAuditsDir;
100
+ /**
101
+ * @description Encuentra todos los directorios audits/ en projects/.
102
+ */
103
+ private findAllProjectAuditsDirs;
104
+ }
105
+ //# sourceMappingURL=historical-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"historical-loader.d.ts","sourceRoot":"","sources":["../../src/reflection/historical-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAmBvD,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,4CAA4C;IAC5C,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAyBD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE;QAAE,MAAM,EAAE,gBAAgB,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAMzF;;;;OAIG;IACG,OAAO,CAAC,OAAO,CAAC,EAAE;QACtB,uDAAuD;QACvD,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,qDAAqD;QACrD,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAuCjC;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAoHpF;;OAEG;IACH,OAAO,CAAC,aAAa;IA8BrB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAqC1B;;;OAGG;IACH,OAAO,CAAC,aAAa;IA8BrB;;OAEG;IACH,OAAO,CAAC,SAAS;IAQjB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAM3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAcnB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAiDxB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAM/B;;OAEG;YACW,wBAAwB;CAyBvC"}
@@ -0,0 +1,462 @@
1
+ "use strict";
2
+ /**
3
+ * @description HistoricalLoader — Carga archivos historicos de auditoria (NO-GO)
4
+ * y los convierte en FailureRecord para alimentar el Reflection Engine.
5
+ *
6
+ * Escanea ~/.deepseek-code/projects/{hash}/audits/ en busca de archivos .md
7
+ * con veredicto NO-GO o NO-GO condicional, extrae los hallazgos de la tabla
8
+ * Markdown y los persiste en failures.json, luego dispara reflect() para
9
+ * que PatternDetector detecte patrones y PolicyPromoter genere policyRules.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const loader = new HistoricalLoader({ engine });
14
+ * const result = await loader.loadAll();
15
+ * console.log(`Cargados ${result.loaded} registros, ${result.patterns} patrones detectados`);
16
+ * ```
17
+ */
18
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
19
+ if (k2 === undefined) k2 = k;
20
+ var desc = Object.getOwnPropertyDescriptor(m, k);
21
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
22
+ desc = { enumerable: true, get: function() { return m[k]; } };
23
+ }
24
+ Object.defineProperty(o, k2, desc);
25
+ }) : (function(o, m, k, k2) {
26
+ if (k2 === undefined) k2 = k;
27
+ o[k2] = m[k];
28
+ }));
29
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
30
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
31
+ }) : function(o, v) {
32
+ o["default"] = v;
33
+ });
34
+ var __importStar = (this && this.__importStar) || (function () {
35
+ var ownKeys = function(o) {
36
+ ownKeys = Object.getOwnPropertyNames || function (o) {
37
+ var ar = [];
38
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
39
+ return ar;
40
+ };
41
+ return ownKeys(o);
42
+ };
43
+ return function (mod) {
44
+ if (mod && mod.__esModule) return mod;
45
+ var result = {};
46
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
47
+ __setModuleDefault(result, mod);
48
+ return result;
49
+ };
50
+ })();
51
+ Object.defineProperty(exports, "__esModule", { value: true });
52
+ exports.HistoricalLoader = void 0;
53
+ const path = __importStar(require("path"));
54
+ const os = __importStar(require("os"));
55
+ const fs = __importStar(require("fs/promises"));
56
+ const types_1 = require("./types");
57
+ const project_key_1 = require("../shared/utils/project-key");
58
+ // ── Constantes ───────────────────────────────────────────────────────────────
59
+ const TABLE_ROW_PATTERN = /^\|\s*([\w-]+)\s*\|\s*(.+?)\s*\|\s*(.+?)\s*\|\s*\*\*(.+?)\*\*\s*\|\s*(.*?)\s*\|\s*(.+?)\s*\|\s*(.+?)\s*\|$/;
60
+ const SEVERITY_MAP = {
61
+ 'critical': 'critical', 'critica': 'critical', 'Critica': 'critical', 'Crítica': 'critical',
62
+ 'high': 'high', 'alta': 'high', 'Alta': 'high',
63
+ 'medium': 'medium', 'media': 'medium', 'Media': 'medium',
64
+ 'low': 'low', 'baja': 'low', 'Baja': 'low',
65
+ };
66
+ const SEVERITY_TO_RECORD = SEVERITY_MAP;
67
+ // ── HistoricalLoader ─────────────────────────────────────────────────────────
68
+ class HistoricalLoader {
69
+ engine;
70
+ projectRoot;
71
+ appName;
72
+ constructor(options) {
73
+ this.engine = options.engine;
74
+ this.projectRoot = options.projectRoot ?? process.cwd();
75
+ this.appName = options.appName ?? 'bk-agent';
76
+ }
77
+ /**
78
+ * @description Escanea y carga todos los proyectos con directorios audits/.
79
+ * Si no se especifica projectRoot, escanea todos los proyectos en
80
+ * ~/.deepseek-code/projects/.
81
+ */
82
+ async loadAll(options) {
83
+ const result = {
84
+ scannedFiles: 0,
85
+ noGoFiles: 0,
86
+ loaded: 0,
87
+ skipped: 0,
88
+ patterns: 0,
89
+ promotedRules: 0,
90
+ errors: [],
91
+ projectsProcessed: [],
92
+ };
93
+ const projects = options?.onlyCurrentProject !== false
94
+ ? [this.resolveProjectAuditsDir(this.projectRoot)]
95
+ : await this.findAllProjectAuditsDirs();
96
+ for (const auditsDir of projects) {
97
+ if (!auditsDir)
98
+ continue;
99
+ const projectKey = path.basename(path.dirname(auditsDir));
100
+ result.projectsProcessed.push(projectKey);
101
+ try {
102
+ const projectResult = await this.loadProject(auditsDir, options?.force);
103
+ result.scannedFiles += projectResult.scannedFiles;
104
+ result.noGoFiles += projectResult.noGoFiles;
105
+ result.loaded += projectResult.loaded;
106
+ result.skipped += projectResult.skipped;
107
+ result.patterns += projectResult.patterns;
108
+ result.promotedRules += projectResult.promotedRules;
109
+ result.errors.push(...projectResult.errors);
110
+ }
111
+ catch (err) {
112
+ const msg = err instanceof Error ? err.message : String(err);
113
+ result.errors.push(`[${projectKey}] Error: ${msg}`);
114
+ }
115
+ }
116
+ return result;
117
+ }
118
+ /**
119
+ * @description Carga un proyecto especifico por su directorio de auditorias.
120
+ */
121
+ async loadProject(auditsDir, force) {
122
+ const result = {
123
+ scannedFiles: 0,
124
+ noGoFiles: 0,
125
+ loaded: 0,
126
+ skipped: 0,
127
+ patterns: 0,
128
+ promotedRules: 0,
129
+ errors: [],
130
+ projectsProcessed: [],
131
+ };
132
+ // Verificar que el directorio existe
133
+ try {
134
+ await fs.access(auditsDir);
135
+ }
136
+ catch {
137
+ result.errors.push(`Directorio no encontrado: ${auditsDir}`);
138
+ return result;
139
+ }
140
+ // Listar archivos .md (excluir auto-gates, pending-issues, lecciones)
141
+ const files = await fs.readdir(auditsDir);
142
+ const mdFiles = files.filter(f => f.endsWith('.md') &&
143
+ !f.startsWith('auto-gates') &&
144
+ !f.startsWith('pending-issues') &&
145
+ f !== 'lecciones-aprendidas.md');
146
+ result.scannedFiles = mdFiles.length;
147
+ // Cargar registros existentes para evitar duplicados
148
+ const catalog = this.engine.getCatalog();
149
+ await catalog.ensureLoaded();
150
+ const existingRecords = await catalog.getAllRecords();
151
+ const existingFingerprints = new Set(existingRecords.map(r => `${r.domain}:${r.failureType}:${r.hallazgo.slice(0, 80)}`));
152
+ // Procesar cada archivo
153
+ const newRecords = [];
154
+ for (const file of mdFiles) {
155
+ const filePath = path.join(auditsDir, file);
156
+ try {
157
+ const content = await fs.readFile(filePath, 'utf-8');
158
+ // Saltar archivos GO sin hallazgos
159
+ if (this.isGoWithoutFindings(content))
160
+ continue;
161
+ result.noGoFiles++;
162
+ const parsed = this.parseGateFile(content, file);
163
+ if (!parsed)
164
+ continue;
165
+ // Extraer dominio del contexto de la tarea o del gate
166
+ const domain = this.inferDomain(parsed);
167
+ for (const finding of parsed.hallazgos) {
168
+ // Inferir failureType del hallazgo
169
+ const failureType = this.inferFailureType(finding, domain);
170
+ // Crear fingerprint para evitar duplicados
171
+ const fingerprint = `${domain}:${failureType}:${finding.hallazgo.slice(0, 80)}`;
172
+ if (!force && existingFingerprints.has(fingerprint)) {
173
+ result.skipped++;
174
+ continue;
175
+ }
176
+ const record = {
177
+ id: (0, types_1.generateFailureId)(),
178
+ domain,
179
+ failureType,
180
+ severity: (SEVERITY_TO_RECORD[finding.severidad] ?? 'medium'),
181
+ dimension: finding.dimension,
182
+ gate: parsed.gate,
183
+ agenteResponsable: finding.agenteResponsable,
184
+ hallazgo: finding.hallazgo,
185
+ recomendacion: finding.recomendacion,
186
+ archivos: [],
187
+ fecha: parsed.fecha,
188
+ };
189
+ newRecords.push(record);
190
+ existingFingerprints.add(fingerprint);
191
+ }
192
+ }
193
+ catch (err) {
194
+ const msg = err instanceof Error ? err.message : String(err);
195
+ result.errors.push(`Error procesando ${file}: ${msg}`);
196
+ }
197
+ }
198
+ // Persistir registros nuevos
199
+ if (newRecords.length > 0) {
200
+ await catalog.addRecords(newRecords);
201
+ result.loaded = newRecords.length;
202
+ }
203
+ // Disparar reflexion para detectar patrones y promover reglas
204
+ if (newRecords.length > 0) {
205
+ try {
206
+ const reflectResult = await this.engine.reflect({ autoPromote: true });
207
+ result.patterns = reflectResult.patterns.length;
208
+ result.promotedRules = reflectResult.promotedRules.length;
209
+ }
210
+ catch (err) {
211
+ const msg = err instanceof Error ? err.message : String(err);
212
+ result.errors.push(`Error en reflexion: ${msg}`);
213
+ }
214
+ }
215
+ return result;
216
+ }
217
+ // ── Parseo de archivos ─────────────────────────────────────────────────────
218
+ /**
219
+ * @description Parsea un archivo de gate Markdown y extrae metadatos + hallazgos.
220
+ */
221
+ parseGateFile(content, filename) {
222
+ // Extraer veredicto del frontmatter YAML
223
+ const veredictoMatch = content.match(/veredicto:\s*"(.+?)"/);
224
+ const veredicto = veredictoMatch?.[1] ?? '';
225
+ // Solo procesar NO-GO y NO-GO condicional
226
+ if (veredicto !== 'NO-GO' && veredicto !== 'NO-GO condicional')
227
+ return null;
228
+ // Extraer gate del frontmatter
229
+ const gateMatch = content.match(/title:\s*"Informe de Gate:\s*(.+?)"/);
230
+ const gate = gateMatch?.[1]?.toLowerCase() ?? 'unknown';
231
+ // Extraer agente del frontmatter
232
+ const agenteMatch = content.match(/auditor:\s*"(.+?)"/);
233
+ const agente = agenteMatch?.[1] ?? 'unknown';
234
+ // Extraer fecha del frontmatter
235
+ const fechaMatch = content.match(/fecha:\s*"(.+?)"/);
236
+ const fecha = fechaMatch?.[1] ?? new Date().toISOString();
237
+ // Extraer dominio del contexto de la tarea
238
+ const dominioMatch = content.match(/Domino\(s\):\s*(.+?)(?:\n|$)/);
239
+ const dominio = dominioMatch?.[1]?.trim() ?? '';
240
+ // Extraer hallazgos de la tabla Markdown
241
+ const hallazgos = this.parseFindingsTable(content);
242
+ return { gate, agente, veredicto, fecha, hallazgos, dominio };
243
+ }
244
+ /**
245
+ * @description Parsea la tabla de hallazgos en formato Markdown.
246
+ * Formato esperado:
247
+ * | ID | Dimension | Hallazgo | Severidad | Evidencia | Recomendacion | Agente responsable |
248
+ */
249
+ parseFindingsTable(content) {
250
+ const findings = [];
251
+ const lines = content.split('\n');
252
+ let inTable = false;
253
+ let headerPassed = false;
254
+ for (const line of lines) {
255
+ const trimmed = line.trim();
256
+ // Detectar inicio de tabla
257
+ if (trimmed.startsWith('| ID |')) {
258
+ inTable = true;
259
+ continue;
260
+ }
261
+ // Saltar separador |---|----|
262
+ if (inTable && trimmed.startsWith('|---')) {
263
+ headerPassed = true;
264
+ continue;
265
+ }
266
+ // Salir de la tabla al encontrar linea no-tabla
267
+ if (inTable && headerPassed && (!trimmed.startsWith('|') || trimmed.startsWith('| ---'))) {
268
+ break;
269
+ }
270
+ if (inTable && headerPassed && trimmed.startsWith('|')) {
271
+ const finding = this.parseTableRow(trimmed);
272
+ if (finding) {
273
+ findings.push(finding);
274
+ }
275
+ }
276
+ }
277
+ return findings;
278
+ }
279
+ /**
280
+ * @description Parsea una fila de la tabla Markdown.
281
+ * Maneja el encoding corrupto (caracteres corruptos) limpiando el texto.
282
+ */
283
+ parseTableRow(row) {
284
+ // Dividir por | respetando pipes escapados
285
+ const parts = row.split('|').map(p => p.trim()).filter(p => p.length > 0);
286
+ if (parts.length < 7)
287
+ return null;
288
+ const id = this.cleanText(parts[0]);
289
+ const dimension = this.cleanText(parts[1]);
290
+ const hallazgo = this.cleanText(parts[2]);
291
+ const severidadRaw = this.cleanText(parts[3]).replace(/\*\*/g, '');
292
+ const evidencia = this.cleanText(parts[4]);
293
+ const recomendacion = this.cleanText(parts[5]);
294
+ const agenteResponsable = this.cleanText(parts[6]);
295
+ // Mapear severidad
296
+ const severidad = this.mapSeverity(severidadRaw);
297
+ return {
298
+ id,
299
+ dimension,
300
+ hallazgo,
301
+ severidad,
302
+ evidencia,
303
+ recomendacion,
304
+ agenteResponsable,
305
+ };
306
+ }
307
+ // ── Helpers ────────────────────────────────────────────────────────────────
308
+ /**
309
+ * @description Limpia caracteres corruptos del encoding.
310
+ */
311
+ cleanText(text) {
312
+ return text
313
+ .replace(/\uFFFD/g, '') // Quitar caracter de reemplazo Unicode
314
+ .replace(/[^\x20-\x7E\s]/g, '') // Quitar no-ASCII imprimible
315
+ .replace(/\s+/g, ' ') // Normalizar espacios
316
+ .trim();
317
+ }
318
+ /**
319
+ * @description Mapea texto de severidad a enum.
320
+ */
321
+ mapSeverity(raw) {
322
+ return SEVERITY_MAP[raw] ?? SEVERITY_MAP[raw.toLowerCase()] ?? 'medium';
323
+ }
324
+ /**
325
+ * @description Determina si un archivo es GO sin hallazgos (para saltarlo).
326
+ */
327
+ isGoWithoutFindings(content) {
328
+ const hasNoGo = content.includes('NO-GO');
329
+ const hasFindings = content.includes('| ID |');
330
+ return !hasNoGo && !hasFindings;
331
+ }
332
+ /**
333
+ * @description Infiere el dominio Reflection a partir del gate y contexto.
334
+ */
335
+ inferDomain(parsed) {
336
+ const gate = parsed.gate.toLowerCase();
337
+ const dominio = parsed.dominio.toLowerCase();
338
+ if (gate.includes('qa') || gate.includes('test'))
339
+ return 'test';
340
+ if (gate.includes('security'))
341
+ return 'audit';
342
+ if (gate.includes('architecture'))
343
+ return 'audit';
344
+ if (gate.includes('orquest'))
345
+ return 'agent';
346
+ if (dominio.includes('bootstrap') || dominio.includes('config'))
347
+ return 'bootstrap';
348
+ if (dominio.includes('commit'))
349
+ return 'commit';
350
+ return 'audit';
351
+ }
352
+ /**
353
+ * @description Infiere el failureType a partir del hallazgo y dominio.
354
+ * Usa palabras clave en el texto del hallazgo.
355
+ */
356
+ inferFailureType(finding, domain) {
357
+ const text = `${finding.hallazgo} ${finding.dimension} ${finding.evidencia}`.toLowerCase();
358
+ // Patrones por dominio
359
+ if (domain === 'audit') {
360
+ if (text.includes('security') || text.includes('vulnerabilidad') || text.includes('owasp'))
361
+ return 'security_vulnerability';
362
+ if (text.includes('test') || text.includes('cobertura') || text.includes('coverage'))
363
+ return 'missing_test_coverage';
364
+ if (text.includes('error') || text.includes('exception') || text.includes('catch'))
365
+ return 'incomplete_error_handling';
366
+ if (text.includes('documentacion') || text.includes('documentation') || text.includes('doc'))
367
+ return 'missing_documentation';
368
+ if (text.includes('arquitectura') || text.includes('architecture') || text.includes('diseno'))
369
+ return 'architecture_violation';
370
+ if (text.includes('log') || text.includes('logging'))
371
+ return 'missing_logging';
372
+ if (text.includes('validacion') || text.includes('validation') || text.includes('input'))
373
+ return 'unvalidated_input';
374
+ if (text.includes('secret') || text.includes('password') || text.includes('api_key'))
375
+ return 'hardcoded_secret';
376
+ if (text.includes('rollback') || text.includes('migracion'))
377
+ return 'missing_rollback';
378
+ if (text.includes('conexion') || text.includes('connection') || text.includes('pool'))
379
+ return 'connection_leak';
380
+ }
381
+ if (domain === 'test') {
382
+ if (text.includes('timeout') || text.includes('tiempo'))
383
+ return 'jest_timeout';
384
+ if (text.includes('cobertura') || text.includes('coverage') || text.includes('threshold'))
385
+ return 'coverage_below_threshold';
386
+ if (text.includes('flaky') || text.includes('intermitente'))
387
+ return 'flaky_test';
388
+ if (text.includes('assert') || text.includes('assertion'))
389
+ return 'test_without_assertion';
390
+ if (text.includes('integration') || text.includes('integracion'))
391
+ return 'integration_test_without_container';
392
+ if (text.includes('type') || text.includes('tsc') || text.includes('tipado'))
393
+ return 'tsc_noEmit_type_error';
394
+ }
395
+ if (domain === 'agent') {
396
+ if (text.includes('seleccion') || text.includes('wrong') || text.includes('incorrecto'))
397
+ return 'wrong_agent_selected';
398
+ if (text.includes('timeout') || text.includes('tiempo'))
399
+ return 'agent_timeout';
400
+ if (text.includes('alucinacion') || text.includes('hallucination'))
401
+ return 'agent_hallucination';
402
+ if (text.includes('delegacion') || text.includes('delegation'))
403
+ return 'delegation_failed';
404
+ if (text.includes('rechaz') || text.includes('rejected') || text.includes('evaluator'))
405
+ return 'response_rejected_by_evaluator';
406
+ }
407
+ if (domain === 'bootstrap') {
408
+ if (text.includes('config') || text.includes('yaml') || text.includes('manifest'))
409
+ return 'manifest_corrupt';
410
+ if (text.includes('memoria') || text.includes('memory') || text.includes('load'))
411
+ return 'memory_load_failure';
412
+ if (text.includes('seed') || text.includes('configuracion'))
413
+ return 'seed_config_failed';
414
+ }
415
+ if (domain === 'commit') {
416
+ if (text.includes('type') || text.includes('tipo'))
417
+ return 'missing_type';
418
+ if (text.includes('scope') || text.includes('ambito'))
419
+ return 'wrong_scope';
420
+ if (text.includes('branch') || text.includes('rama'))
421
+ return 'branch_naming_invalid';
422
+ }
423
+ return 'unknown_failure';
424
+ }
425
+ /**
426
+ * @description Resuelve el directorio de auditorias para un proyecto.
427
+ */
428
+ resolveProjectAuditsDir(projectRoot) {
429
+ const home = process.env.USERPROFILE ?? process.env.HOME ?? os.homedir();
430
+ const projectKey = (0, project_key_1.cwdToProjectKey)(projectRoot);
431
+ return path.join(home, `.${this.appName}`, 'projects', projectKey, 'audits');
432
+ }
433
+ /**
434
+ * @description Encuentra todos los directorios audits/ en projects/.
435
+ */
436
+ async findAllProjectAuditsDirs() {
437
+ const home = process.env.USERPROFILE ?? process.env.HOME ?? os.homedir();
438
+ const projectsDir = path.join(home, `.${this.appName}`, 'projects');
439
+ try {
440
+ const entries = await fs.readdir(projectsDir, { withFileTypes: true });
441
+ const dirs = [];
442
+ for (const entry of entries) {
443
+ if (entry.isDirectory()) {
444
+ const auditsDir = path.join(projectsDir, entry.name, 'audits');
445
+ try {
446
+ await fs.access(auditsDir);
447
+ dirs.push(auditsDir);
448
+ }
449
+ catch {
450
+ // No tiene audits/
451
+ }
452
+ }
453
+ }
454
+ return dirs;
455
+ }
456
+ catch {
457
+ return [];
458
+ }
459
+ }
460
+ }
461
+ exports.HistoricalLoader = HistoricalLoader;
462
+ //# sourceMappingURL=historical-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"historical-loader.js","sourceRoot":"","sources":["../../src/reflection/historical-loader.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAA6B;AAC7B,uCAAyB;AACzB,gDAAkC;AAElC,mCAA6E;AAG7E,6DAA8D;AAE9D,gFAAgF;AAEhF,MAAM,iBAAiB,GAAG,4GAA4G,CAAC;AAEvI,MAAM,YAAY,GAA2D;IAC3E,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU;IAC3F,MAAM,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM;IAC9D,QAAQ,EAAE,QAAQ,EAAM,OAAO,EAAE,QAAQ,EAAQ,OAAO,EAAE,QAAQ;IAClE,KAAK,EAAE,KAAK,EAAY,MAAM,EAAE,KAAK,EAAY,MAAM,EAAE,KAAK;CAC/D,CAAC;AAiCF,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAWxC,gFAAgF;AAEhF,MAAa,gBAAgB;IACnB,MAAM,CAAmB;IACzB,WAAW,CAAS;IACpB,OAAO,CAAS;IAExB,YAAY,OAA6E;QACvF,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACxD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,OAKb;QACC,MAAM,MAAM,GAAyB;YACnC,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,CAAC;YACX,aAAa,EAAE,CAAC;YAChB,MAAM,EAAE,EAAE;YACV,iBAAiB,EAAE,EAAE;SACtB,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,EAAE,kBAAkB,KAAK,KAAK;YACpD,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAClD,CAAC,CAAC,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAE1C,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1D,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE1C,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBACxE,MAAM,CAAC,YAAY,IAAI,aAAa,CAAC,YAAY,CAAC;gBAClD,MAAM,CAAC,SAAS,IAAI,aAAa,CAAC,SAAS,CAAC;gBAC5C,MAAM,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC;gBACtC,MAAM,CAAC,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC;gBACxC,MAAM,CAAC,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC;gBAC1C,MAAM,CAAC,aAAa,IAAI,aAAa,CAAC,aAAa,CAAC;gBACpD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YAC9C,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,YAAY,GAAG,EAAE,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,KAAe;QAClD,MAAM,MAAM,GAAyB;YACnC,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,CAAC;YACX,aAAa,EAAE,CAAC;YAChB,MAAM,EAAE,EAAE;YACV,iBAAiB,EAAE,EAAE;SACtB,CAAC;QAEF,qCAAqC;QACrC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,SAAS,EAAE,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,sEAAsE;QACtE,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAC/B,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YACjB,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC;YAC3B,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC;YAC/B,CAAC,KAAK,yBAAyB,CAChC,CAAC;QAEF,MAAM,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;QAErC,qDAAqD;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACzC,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC;QAC7B,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC;QACtD,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAClC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CACpF,CAAC;QAEF,wBAAwB;QACxB,MAAM,UAAU,GAAoB,EAAE,CAAC;QAEvC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAErD,mCAAmC;gBACnC,IAAI,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;oBAAE,SAAS;gBAEhD,MAAM,CAAC,SAAS,EAAE,CAAC;gBAEnB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACjD,IAAI,CAAC,MAAM;oBAAE,SAAS;gBAEtB,sDAAsD;gBACtD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAExC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;oBACvC,mCAAmC;oBACnC,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAE3D,2CAA2C;oBAC3C,MAAM,WAAW,GAAG,GAAG,MAAM,IAAI,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;oBAEhF,IAAI,CAAC,KAAK,IAAI,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;wBACpD,MAAM,CAAC,OAAO,EAAE,CAAC;wBACjB,SAAS;oBACX,CAAC;oBAED,MAAM,MAAM,GAAkB;wBAC5B,EAAE,EAAE,IAAA,yBAAiB,GAAE;wBACvB,MAAM;wBACN,WAAW;wBACX,QAAQ,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAa;wBACzE,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;wBAC5C,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,aAAa,EAAE,OAAO,CAAC,aAAa;wBACpC,QAAQ,EAAE,EAAE;wBACZ,KAAK,EAAE,MAAM,CAAC,KAAK;qBACpB,CAAC;oBAEF,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACxB,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QACpC,CAAC;QAED,8DAA8D;QAC9D,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvE,MAAM,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAChD,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC;YAC5D,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8EAA8E;IAE9E;;OAEG;IACK,aAAa,CAAC,OAAe,EAAE,QAAgB;QACrD,yCAAyC;QACzC,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE5C,0CAA0C;QAC1C,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,mBAAmB;YAAE,OAAO,IAAI,CAAC;QAE5E,+BAA+B;QAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACvE,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,SAAS,CAAC;QAExD,iCAAiC;QACjC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;QAE7C,gCAAgC;QAChC,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE1D,2CAA2C;QAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAEhD,yCAAyC;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;IAChE,CAAC;IAED;;;;OAIG;IACK,kBAAkB,CAAC,OAAe;QACxC,MAAM,QAAQ,GAAoB,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,YAAY,GAAG,KAAK,CAAC;QAEzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAE5B,2BAA2B;YAC3B,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjC,OAAO,GAAG,IAAI,CAAC;gBACf,SAAS;YACX,CAAC;YAED,8BAA8B;YAC9B,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1C,YAAY,GAAG,IAAI,CAAC;gBACpB,SAAS;YACX,CAAC;YAED,gDAAgD;YAChD,IAAI,OAAO,IAAI,YAAY,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBACzF,MAAM;YACR,CAAC;YAED,IAAI,OAAO,IAAI,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC5C,IAAI,OAAO,EAAE,CAAC;oBACZ,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACK,aAAa,CAAC,GAAW;QAC/B,2CAA2C;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE1E,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAElC,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnD,mBAAmB;QACnB,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAEjD,OAAO;YACL,EAAE;YACF,SAAS;YACT,QAAQ;YACR,SAAS;YACT,SAAS;YACT,aAAa;YACb,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED,8EAA8E;IAE9E;;OAEG;IACK,SAAS,CAAC,IAAY;QAC5B,OAAO,IAAI;aACR,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAK,uCAAuC;aAClE,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,6BAA6B;aAC5D,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAO,sBAAsB;aACjD,IAAI,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,GAAW;QAC7B,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,QAAQ,CAAC;IAC1E,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,OAAe;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,OAAO,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC;IAClC,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,MAAsB;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAE7C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAChE,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO,OAAO,CAAC;QAC9C,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YAAE,OAAO,OAAO,CAAC;QAClD,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,OAAO,OAAO,CAAC;QAC7C,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,OAAO,WAAW,CAAC;QACpF,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,OAAO,QAAQ,CAAC;QAEhD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,OAAsB,EAAE,MAAwB;QACvE,MAAM,IAAI,GAAG,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3F,uBAAuB;QACvB,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,OAAO,wBAAwB,CAAC;YAC5H,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO,uBAAuB,CAAC;YACrH,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,OAAO,2BAA2B,CAAC;YACvH,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,uBAAuB,CAAC;YAC7H,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,OAAO,wBAAwB,CAAC;YAC/H,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO,iBAAiB,CAAC;YAC/E,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,OAAO,mBAAmB,CAAC;YACrH,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO,kBAAkB,CAAC;YAChH,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAAE,OAAO,kBAAkB,CAAC;YACvF,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,iBAAiB,CAAC;QAClH,CAAC;QAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,OAAO,cAAc,CAAC;YAC/E,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAAE,OAAO,0BAA0B,CAAC;YAC7H,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAAE,OAAO,YAAY,CAAC;YACjF,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAAE,OAAO,wBAAwB,CAAC;YAC3F,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;gBAAE,OAAO,oCAAoC,CAAC;YAC9G,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,OAAO,uBAAuB,CAAC;QAC/G,CAAC;QAED,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAAE,OAAO,sBAAsB,CAAC;YACvH,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,OAAO,eAAe,CAAC;YAChF,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAAE,OAAO,qBAAqB,CAAC;YACjG,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAAE,OAAO,mBAAmB,CAAC;YAC3F,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAAE,OAAO,gCAAgC,CAAC;QAClI,CAAC;QAED,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO,kBAAkB,CAAC;YAC7G,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,qBAAqB,CAAC;YAC/G,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAAE,OAAO,oBAAoB,CAAC;QAC3F,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,cAAc,CAAC;YAC1E,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,OAAO,aAAa,CAAC;YAC5E,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,uBAAuB,CAAC;QACvF,CAAC;QAED,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,WAAmB;QACjD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACzE,MAAM,UAAU,GAAG,IAAA,6BAAe,EAAC,WAAW,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,wBAAwB;QACpC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;QAEpE,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YACvE,MAAM,IAAI,GAAsB,EAAE,CAAC;YAEnC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;oBACxB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAC/D,IAAI,CAAC;wBACH,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBAC3B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACvB,CAAC;oBAAC,MAAM,CAAC;wBACP,mBAAmB;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AAtaD,4CAsaC"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * @description AgentHook — Puente entre el evaluator de agentes y el ReflectionEngine.
3
+ *
4
+ * Captura incidentes de comportamiento de agentes (selección incorrecta,
5
+ * alucinaciones, timeouts, herramientas fallidas) y los reporta
6
+ * al ReflectionEngine para detección de patrones.
7
+ *
8
+ * Se integra en el ResponseEvaluator (evaluator.ts) y en el Agent Loop (loop.ts).
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * const hook = new AgentHook(engine);
13
+ * await hook.reportAgentFailure('wrong_agent_selected', 'Se seleccionó agente general para tarea de seguridad');
14
+ * ```
15
+ */
16
+ import { ReflectionEngine } from '../reflection-engine';
17
+ import { FailureRecord, ReflectionDomain, FailureType } from '../types';
18
+ export declare class AgentHook {
19
+ private engine;
20
+ constructor(engine: ReflectionEngine);
21
+ /**
22
+ * @description Reporta un incidente de comportamiento de agente.
23
+ *
24
+ * @param failureType - Tipo de fallo (opcional, se auto-detecta)
25
+ * @param hallazgo - Descripción del incidente
26
+ * @param agenteResponsable - Nombre del agente involucrado
27
+ * @param archivos - Archivos relacionados
28
+ * @param domain - Dominio del Reflection Engine (default: "agent")
29
+ * @returns El FailureRecord creado y los patrones detectados
30
+ */
31
+ reportAgentFailure(hallazgo: string, agenteResponsable: string, archivos?: string[], failureType?: FailureType, domain?: ReflectionDomain): Promise<{
32
+ record: FailureRecord;
33
+ patterns: import('../types').DetectedPattern[];
34
+ }>;
35
+ /**
36
+ * @description Reporta una alucinación detectada por el evaluator.
37
+ */
38
+ reportHallucination(agente: string, respuestaOriginal: string, detalle: string): Promise<{
39
+ record: FailureRecord;
40
+ patterns: import('../types').DetectedPattern[];
41
+ }>;
42
+ /**
43
+ * @description Reporta un timeout de agente.
44
+ */
45
+ reportTimeout(agente: string, taskDescription: string): Promise<{
46
+ record: FailureRecord;
47
+ patterns: import('../types').DetectedPattern[];
48
+ }>;
49
+ /**
50
+ * @description Reporta una selección incorrecta de agente.
51
+ */
52
+ reportWrongAgentSelection(agenteSeleccionado: string, dominioRequerido: string): Promise<{
53
+ record: FailureRecord;
54
+ patterns: import('../types').DetectedPattern[];
55
+ }>;
56
+ /**
57
+ * @description Ejecuta una reflexión completa del dominio agent.
58
+ */
59
+ reflectAgentDomain(): Promise<{
60
+ patterns: import('../types').DetectedPattern[];
61
+ promotedRules: import('../types').ManifestPolicyRule[];
62
+ }>;
63
+ /**
64
+ * @description Obtiene estadísticas de incidentes del dominio agent.
65
+ */
66
+ getAgentStats(): Promise<{
67
+ totalIncidents: number;
68
+ unresolvedCount: number;
69
+ patternsByFailureType: Record<string, number>;
70
+ }>;
71
+ }
72
+ //# sourceMappingURL=agent-hook.d.ts.map