@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,352 @@
1
+ "use strict";
2
+ /**
3
+ * @description ReflectionEngine — Orquestador universal del sistema de auto-mejora.
4
+ *
5
+ * Pipeline: Feedback → Catalog → Pattern Detection → Policy Promotion → Prevention
6
+ *
7
+ * Opera sobre 5 dominios: audit, test, commit, agent, bootstrap.
8
+ * Cada dominio tiene sus propios failureTypes y hooks de captura,
9
+ * pero comparten el mismo pipeline de deteccion y promocion.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const engine = new ReflectionEngine({ projectRoot: process.cwd() });
14
+ * await engine.initialize();
15
+ * await engine.reflect(); // escanea todos los dominios
16
+ * console.log(engine.getStats());
17
+ * ```
18
+ */
19
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
20
+ if (k2 === undefined) k2 = k;
21
+ var desc = Object.getOwnPropertyDescriptor(m, k);
22
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
23
+ desc = { enumerable: true, get: function() { return m[k]; } };
24
+ }
25
+ Object.defineProperty(o, k2, desc);
26
+ }) : (function(o, m, k, k2) {
27
+ if (k2 === undefined) k2 = k;
28
+ o[k2] = m[k];
29
+ }));
30
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
31
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
32
+ }) : function(o, v) {
33
+ o["default"] = v;
34
+ });
35
+ var __importStar = (this && this.__importStar) || (function () {
36
+ var ownKeys = function(o) {
37
+ ownKeys = Object.getOwnPropertyNames || function (o) {
38
+ var ar = [];
39
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
40
+ return ar;
41
+ };
42
+ return ownKeys(o);
43
+ };
44
+ return function (mod) {
45
+ if (mod && mod.__esModule) return mod;
46
+ var result = {};
47
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
48
+ __setModuleDefault(result, mod);
49
+ return result;
50
+ };
51
+ })();
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ exports.ReflectionEngine = void 0;
54
+ const path = __importStar(require("path"));
55
+ const path_1 = require("path");
56
+ const os = __importStar(require("os"));
57
+ const fs = __importStar(require("fs/promises"));
58
+ const atomic_write_1 = require("../shared/utils/atomic-write");
59
+ const failure_catalog_1 = require("./failure-catalog");
60
+ const pattern_detector_1 = require("./pattern-detector");
61
+ const policy_promoter_1 = require("./policy-promoter");
62
+ const types_1 = require("./types");
63
+ // ── ReflectionEngine ─────────────────────────────────────────────────────────
64
+ class ReflectionEngine {
65
+ catalog;
66
+ detector;
67
+ promoter;
68
+ config;
69
+ registry;
70
+ appName;
71
+ projectRoot;
72
+ onProjectContextUpdate;
73
+ onEngineInsights;
74
+ lastPatterns = [];
75
+ lastPromotedRules = [];
76
+ pendingReflections = new Set();
77
+ projectDir;
78
+ constructor(options) {
79
+ const projectRoot = options?.projectRoot ?? process.cwd();
80
+ const useGlobal = options?.useGlobalDir ?? true;
81
+ this.appName = options?.appName ?? 'bk-agent';
82
+ this.projectRoot = projectRoot;
83
+ this.onProjectContextUpdate = options?.onProjectContextUpdate;
84
+ this.onEngineInsights = options?.onEngineInsights;
85
+ this.catalog = new failure_catalog_1.FailureCatalog({ projectRoot, useGlobalDir: useGlobal, appName: this.appName });
86
+ this.detector = new pattern_detector_1.PatternDetector(this.catalog);
87
+ this.promoter = useGlobal
88
+ ? new policy_promoter_1.PolicyPromoter({ appName: this.appName })
89
+ : new policy_promoter_1.PolicyPromoter({ manifestPath: path.join(projectRoot, `.${this.appName}`, 'manifest.yaml') });
90
+ this.config = {
91
+ ...(0, types_1.defaultReflectionConfig)(),
92
+ ...options?.config,
93
+ };
94
+ if (options?.registry) {
95
+ this.registry = options.registry;
96
+ this.promoter.setRegistry(options.registry);
97
+ }
98
+ }
99
+ // ── Inicializacion ─────────────────────────────────────────────────────────
100
+ /**
101
+ * @description Inicializa el engine: carga el catalogo de fallos y el registry desde disco.
102
+ * Siempre llamar antes de usar el engine.
103
+ */
104
+ async initialize() {
105
+ await this.catalog.load();
106
+ if (this.registry) {
107
+ await this.registry.load();
108
+ }
109
+ }
110
+ /**
111
+ * @description Conecta un DomainRegistry al engine despues de la construccion.
112
+ * El registry se cargara en el siguiente llamado a initialize() o inmediatamente si
113
+ * el engine ya esta inicializado.
114
+ */
115
+ async connectRegistry(registry) {
116
+ this.registry = registry;
117
+ this.promoter.setRegistry(registry);
118
+ await registry.load();
119
+ }
120
+ /**
121
+ * @description Devuelve el DomainRegistry conectado, si existe.
122
+ */
123
+ getRegistry() {
124
+ return this.registry;
125
+ }
126
+ /**
127
+ * @description Conecta el engine con el directorio de memoria del proyecto.
128
+ * Una vez conectado, reflect() y AuditHook actualizaran los archivos de memoria.
129
+ */
130
+ connectMemory(projectDir) {
131
+ this.projectDir = projectDir;
132
+ }
133
+ /**
134
+ * @description Devuelve el directorio de memoria conectado, si existe.
135
+ */
136
+ getProjectDir() {
137
+ return this.projectDir;
138
+ }
139
+ // ── Pipeline de reflexion ──────────────────────────────────────────────────
140
+ /**
141
+ * @description Ejecuta el pipeline completo de reflexion para todos los dominios
142
+ * (o solo los activos segun config):
143
+ * 1. Escanea el catalogo buscando patrones >= promotionThreshold
144
+ * 2. Promueve los patrones no promovidos aun a policyRules
145
+ * 3. Devuelve los patrones detectados y las reglas promovidas
146
+ */
147
+ async reflect(options) {
148
+ const threshold = options?.threshold ?? this.config.promotionThreshold;
149
+ const autoPromote = options?.autoPromote ?? this.config.autoPromote;
150
+ // Registry tiene prioridad: usa sus dominios activos (built-ins + custom habilitados)
151
+ const activeDomains = options?.domain
152
+ ? [options.domain]
153
+ : (this.registry?.getActiveDomains() ?? this.config.activeDomains);
154
+ // 1. Escanear dominios activos
155
+ const allPatterns = [];
156
+ for (const domain of activeDomains) {
157
+ const patterns = await this.detector.scanByDomain(domain, threshold);
158
+ allPatterns.push(...patterns);
159
+ }
160
+ this.lastPatterns = allPatterns;
161
+ // 2. Promover patrones no promovidos aun
162
+ const promotedRules = [];
163
+ if (autoPromote && this.config.enabled) {
164
+ // H-05: Contar reglas auto-generadas existentes para verificar limite maximo
165
+ const existingRules = await this.promoter.getExistingRules();
166
+ let autoGeneratedCount = existingRules.filter(r => r.autoGenerated === true).length;
167
+ const maxRules = this.config.maxAutoGeneratedRules;
168
+ for (const pattern of allPatterns) {
169
+ if (pattern.failureType.startsWith('unknown_'))
170
+ continue;
171
+ // H-05: Solo auto-promover patrones de severidad high o critical
172
+ if (pattern.severity !== 'high' && pattern.severity !== 'critical')
173
+ continue;
174
+ // H-05: Verificar umbral minimo explicito
175
+ if (pattern.count < this.config.promotionThreshold)
176
+ continue;
177
+ const existing = await this.promoter.findRule(pattern.domain, pattern.failureType);
178
+ if (existing) {
179
+ pattern.promotedToPolicy = true;
180
+ pattern.policyRuleId = existing.id;
181
+ continue;
182
+ }
183
+ // H-05: No promover si se alcanzo el limite maximo de reglas auto-generadas
184
+ if (autoGeneratedCount >= maxRules) {
185
+ console.warn(`[ReflectionEngine] Limite de reglas auto-generadas alcanzado (${autoGeneratedCount}/${maxRules}). ` +
186
+ `No se promueve '${pattern.failureType}' (${pattern.domain}).`);
187
+ continue;
188
+ }
189
+ const rule = await this.promoter.promote(pattern);
190
+ promotedRules.push(rule);
191
+ pattern.promotedToPolicy = true;
192
+ pattern.promotedAt = new Date().toISOString();
193
+ pattern.policyRuleId = rule.id;
194
+ autoGeneratedCount++; // incrementar contador local para este batch
195
+ }
196
+ }
197
+ this.lastPromotedRules = promotedRules;
198
+ if (this.projectDir && promotedRules.length > 0 && this.onProjectContextUpdate) {
199
+ const policyLines = promotedRules.map(r => `- [${r.id}] ${r.name}`).join('\n');
200
+ await this.onProjectContextUpdate(this.projectDir, { notas: `Patrones auto-promovidos:\n${policyLines}` })
201
+ .catch(() => { });
202
+ }
203
+ if (this.projectDir && allPatterns.length > 0 && this.onEngineInsights) {
204
+ const insights = allPatterns.map(p => ({
205
+ failureType: p.failureType,
206
+ domain: p.domain,
207
+ severity: p.severity,
208
+ count: p.count,
209
+ recommendedAction: p.recommendedAction,
210
+ }));
211
+ await this.onEngineInsights(this.projectDir, insights)
212
+ .catch(() => { });
213
+ }
214
+ // 3. Calcular estadisticas
215
+ const stats = await this.calculateStats(activeDomains);
216
+ return { patterns: allPatterns, promotedRules, stats };
217
+ }
218
+ /**
219
+ * @description Ejecuta reflexion solo para un dominio especifico.
220
+ * Util cuando un hook reporta un incidente y se quiere analizar inmediatamente.
221
+ */
222
+ async reflectByDomain(domain) {
223
+ return this.reflect({ domain });
224
+ }
225
+ // ── Registro de incidentes (desde hooks) ───────────────────────────────────
226
+ /**
227
+ * @description Registra un incidente en el catalogo y ejecuta reflexion
228
+ * inmediata para el dominio al que pertenece.
229
+ *
230
+ * Este es el metodo principal que los hooks deben llamar.
231
+ *
232
+ * @param record - Datos del incidente (sin ID, se genera automaticamente)
233
+ * @returns El FailureRecord completo y los patrones detectados
234
+ */
235
+ async reportIncident(record) {
236
+ const fullRecord = { ...record, id: (0, types_1.generateFailureId)() };
237
+ await this.catalog.addRecord(fullRecord);
238
+ this.pendingReflections.add(record.domain);
239
+ return { record: fullRecord, patterns: [] };
240
+ }
241
+ /**
242
+ * @description Ejecuta la reflexion acumulada de todos los dominios con incidentes pendientes.
243
+ * Llamar al cerrar un sprint o al final de una sesion.
244
+ */
245
+ async flushReflections() {
246
+ const allPatterns = [];
247
+ const allRules = [];
248
+ for (const domain of this.pendingReflections) {
249
+ const { patterns, promotedRules } = await this.reflectByDomain(domain);
250
+ allPatterns.push(...patterns);
251
+ allRules.push(...promotedRules);
252
+ }
253
+ this.pendingReflections.clear();
254
+ await this.maybeUpdateAgentMd(allPatterns);
255
+ return { patterns: allPatterns, promotedRules: allRules };
256
+ }
257
+ async maybeUpdateAgentMd(patterns) {
258
+ const promoted = patterns.filter(p => (p.severity === 'high' || p.severity === 'critical') && !p.promotedToPolicy);
259
+ if (promoted.length === 0)
260
+ return;
261
+ const agentMdPath = (0, path_1.join)(this.projectRoot, 'AGENT.md');
262
+ const lesson = this.formatLessonsBlock(promoted);
263
+ // Leer, verificar duplicados y escribir en una sola operacion atomica
264
+ // para evitar race conditions entre readFile y atomicWrite
265
+ const current = await fs.readFile(agentMdPath, 'utf-8').catch(() => '');
266
+ if (promoted.every(p => current.includes(p.failureType)))
267
+ return;
268
+ await (0, atomic_write_1.atomicWrite)(agentMdPath, current + '\n\n' + lesson);
269
+ }
270
+ formatLessonsBlock(patterns) {
271
+ const date = new Date().toISOString().slice(0, 10);
272
+ const lines = patterns.map(p => `- **${p.failureType}** (${p.domain}, ${p.severity}): ${p.recommendedAction}`);
273
+ return `## Lessons Learned — ${date}\n\n${lines.join('\n')}\n`;
274
+ }
275
+ // ── Consultas ──────────────────────────────────────────────────────────────
276
+ /**
277
+ * @description Obtiene los patrones detectados en la ultima reflexion.
278
+ */
279
+ getLastPatterns() {
280
+ return [...this.lastPatterns];
281
+ }
282
+ /**
283
+ * @description Obtiene las reglas promovidas en la ultima reflexion.
284
+ */
285
+ getLastPromotedRules() {
286
+ return [...this.lastPromotedRules];
287
+ }
288
+ /**
289
+ * @description Obtiene el catalogo de fallos para operaciones directas.
290
+ */
291
+ getCatalog() {
292
+ return this.catalog;
293
+ }
294
+ /**
295
+ * @description Obtiene el detector de patrones.
296
+ */
297
+ getDetector() {
298
+ return this.detector;
299
+ }
300
+ /**
301
+ * @description Obtiene el promoter de politicas.
302
+ */
303
+ getPromoter() {
304
+ return this.promoter;
305
+ }
306
+ /**
307
+ * @description Obtiene la ruta del archivo de lecciones aprendidas.
308
+ * Util para que el AgentLoop pueda cargar el memo e inyectarlo en los agentes.
309
+ */
310
+ getLessonsMemoPath() {
311
+ const home = process.env.USERPROFILE ?? process.env.HOME ?? os.homedir();
312
+ const projectKey = this.projectRoot
313
+ .replace(/[/\\]$/, '')
314
+ .replace(/:[/\\]/g, '--')
315
+ .replace(/[^a-zA-Z0-9-]/g, '-');
316
+ return path.join(home, `.${this.appName}`, 'projects', projectKey, 'audits', 'lecciones-aprendidas.md');
317
+ }
318
+ // ── Estadisticas ───────────────────────────────────────────────────────────
319
+ /**
320
+ * @description Calcula estadisticas del Reflection Engine.
321
+ */
322
+ async getStats() {
323
+ const activeDomains = this.config.activeDomains;
324
+ return this.calculateStats(activeDomains);
325
+ }
326
+ async calculateStats(domains) {
327
+ const domainCounts = await this.catalog.getDomainCounts();
328
+ const totalIncidents = await this.catalog.totalRecords();
329
+ const unresolved = await this.catalog.findUnresolved();
330
+ const countsByDomain = {};
331
+ for (const domain of domains) {
332
+ countsByDomain[domain] = domainCounts[domain] ?? 0;
333
+ }
334
+ const patternsByDomain = {};
335
+ for (const domain of domains) {
336
+ const patterns = await this.detector.scanByDomain(domain);
337
+ patternsByDomain[domain] = patterns.length;
338
+ }
339
+ return {
340
+ enabled: this.config.enabled,
341
+ promotionThreshold: this.config.promotionThreshold,
342
+ activeDomains: [...domains],
343
+ totalIncidents,
344
+ unresolvedCount: unresolved.length,
345
+ countsByDomain,
346
+ patternsByDomain,
347
+ lastReflectionAt: new Date().toISOString(),
348
+ };
349
+ }
350
+ }
351
+ exports.ReflectionEngine = ReflectionEngine;
352
+ //# sourceMappingURL=reflection-engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reflection-engine.js","sourceRoot":"","sources":["../../src/reflection/reflection-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * @description Base types for the universal Reflection Engine.
3
+ *
4
+ * Defines contracts for FailureRecord, DetectedPattern and the structures
5
+ * connecting the feedback system with deterministic policy promotion.
6
+ *
7
+ * 5 built-in domains: audit, test, commit, agent, bootstrap
8
+ * Custom domains: registered via DomainRegistry and activated per project.
9
+ * Golden rule: >=3 occurrences of the same failureType -> promotion to policyRule
10
+ */
11
+ export interface PolicyCondition {
12
+ actionType?: string | string[];
13
+ riskLevel?: string | string[];
14
+ domain?: string | string[];
15
+ keywords?: string[];
16
+ [key: string]: unknown;
17
+ }
18
+ export interface PolicyAction {
19
+ mustInclude?: string[];
20
+ mustPass?: string[];
21
+ mustExecute?: string[];
22
+ requireArchitectureReview?: boolean;
23
+ requireSecurityReview?: boolean;
24
+ requireQaApproval?: boolean;
25
+ [key: string]: unknown;
26
+ }
27
+ export interface PolicyRule {
28
+ if: PolicyCondition;
29
+ then: PolicyAction;
30
+ }
31
+ export interface AuditFinding {
32
+ id?: string;
33
+ dimension: string;
34
+ hallazgo: string;
35
+ severidad: 'critical' | 'high' | 'medium' | 'low';
36
+ evidencia?: string;
37
+ recomendacion?: string;
38
+ agenteResponsable: string;
39
+ resolvedAt?: string;
40
+ }
41
+ export type ReflectionDomain = 'audit' | 'test' | 'commit' | 'agent' | 'bootstrap';
42
+ export type AnyDomain = ReflectionDomain | (string & {});
43
+ export declare const FAILURE_TYPES_BY_DOMAIN: Record<ReflectionDomain, readonly string[]>;
44
+ export type FailureType = typeof FAILURE_TYPES_BY_DOMAIN[ReflectionDomain][number];
45
+ export interface FailureRecord {
46
+ id: string;
47
+ domain: AnyDomain;
48
+ failureType: string;
49
+ severity: 'critical' | 'high' | 'medium' | 'low';
50
+ dimension: string;
51
+ gate: string;
52
+ agenteResponsable: string;
53
+ hallazgo: string;
54
+ recomendacion: string;
55
+ archivos: string[];
56
+ fecha: string;
57
+ resolvedByCommit?: string;
58
+ resolvedAt?: string;
59
+ contextRaw?: string;
60
+ }
61
+ export interface DetectedPattern {
62
+ failureType: string;
63
+ domain: AnyDomain;
64
+ count: number;
65
+ firstSeen: string;
66
+ lastSeen: string;
67
+ severity: 'critical' | 'high' | 'medium' | 'low';
68
+ recordIds: string[];
69
+ dominantDimension: string;
70
+ dominantGate: string;
71
+ recommendedAction: string;
72
+ promotedToPolicy: boolean;
73
+ promotedAt?: string;
74
+ policyRuleId?: string;
75
+ }
76
+ export interface ManifestPolicyRule extends PolicyRule {
77
+ id: string;
78
+ name: string;
79
+ trigger: {
80
+ domain: AnyDomain;
81
+ pattern: string;
82
+ minOccurrences: number;
83
+ };
84
+ autoGenerated: boolean;
85
+ sourceADR?: string;
86
+ createdAt: string;
87
+ engineVersion: string;
88
+ outcomes?: {
89
+ success: number;
90
+ failure: number;
91
+ lastSeen: string;
92
+ };
93
+ }
94
+ export interface ReflectionConfig {
95
+ enabled: boolean;
96
+ promotionThreshold: number;
97
+ autoPromote: boolean;
98
+ maxAutoGeneratedRules: number;
99
+ autoGenerateAdr: boolean;
100
+ activeDomains: AnyDomain[];
101
+ manifestPath: string;
102
+ }
103
+ export declare function defaultReflectionConfig(): ReflectionConfig;
104
+ export declare function generateFailureId(): string;
105
+ export declare function generatePolicyRuleId(domain: AnyDomain, number: number): string;
106
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/reflection/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ /**
3
+ * @description Base types for the universal Reflection Engine.
4
+ *
5
+ * Defines contracts for FailureRecord, DetectedPattern and the structures
6
+ * connecting the feedback system with deterministic policy promotion.
7
+ *
8
+ * 5 built-in domains: audit, test, commit, agent, bootstrap
9
+ * Custom domains: registered via DomainRegistry and activated per project.
10
+ * Golden rule: >=3 occurrences of the same failureType -> promotion to policyRule
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.FAILURE_TYPES_BY_DOMAIN = void 0;
14
+ exports.defaultReflectionConfig = defaultReflectionConfig;
15
+ exports.generateFailureId = generateFailureId;
16
+ exports.generatePolicyRuleId = generatePolicyRuleId;
17
+ exports.FAILURE_TYPES_BY_DOMAIN = {
18
+ audit: [
19
+ 'missing_rollback', 'connection_leak', 'security_vulnerability',
20
+ 'missing_test_coverage', 'incomplete_error_handling', 'missing_documentation',
21
+ 'architecture_violation', 'missing_logging', 'unvalidated_input', 'hardcoded_secret',
22
+ ],
23
+ test: [
24
+ 'tsc_noEmit_type_error', 'jest_timeout', 'coverage_below_threshold', 'flaky_test',
25
+ 'missing_test_for_use_case', 'test_without_assertion',
26
+ 'integration_test_without_container', 'property_test_missing',
27
+ ],
28
+ commit: [
29
+ 'unknown_failure', 'missing_type', 'wrong_scope', 'message_too_long',
30
+ 'missing_issue_reference', 'coverage_not_run', 'typecheck_failed_before_commit',
31
+ 'test_failed_before_commit', 'branch_naming_invalid',
32
+ ],
33
+ agent: [
34
+ 'wrong_agent_selected', 'agent_timeout', 'agent_hallucination',
35
+ 'missing_agent_for_domain', 'tool_execution_failed', 'delegation_failed',
36
+ 'response_rejected_by_evaluator',
37
+ ],
38
+ bootstrap: [
39
+ 'missing_config_yaml', 'wrong_project_type_detected', 'memory_load_failure',
40
+ 'manifest_corrupt', 'seed_config_failed', 'agent_profile_load_failed', 'vault_sync_failed',
41
+ ],
42
+ };
43
+ function defaultReflectionConfig() {
44
+ return {
45
+ enabled: true,
46
+ promotionThreshold: 3,
47
+ autoPromote: true,
48
+ maxAutoGeneratedRules: 20,
49
+ autoGenerateAdr: true,
50
+ activeDomains: ['audit', 'test', 'commit', 'agent', 'bootstrap'],
51
+ manifestPath: 'manifest.yaml',
52
+ };
53
+ }
54
+ // ── Helpers ──────────────────────────────────────────────────────────────────
55
+ function generateFailureId() {
56
+ const timestamp = Date.now().toString(36);
57
+ const random = Math.random().toString(36).substring(2, 8);
58
+ return `fail_${timestamp}_${random}`;
59
+ }
60
+ function generatePolicyRuleId(domain, number) {
61
+ const prefix = domain.toUpperCase().slice(0, 4);
62
+ return `POL-${prefix}-${String(number).padStart(3, '0')}`;
63
+ }
64
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/reflection/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAiJH,0DAUC;AAID,8CAIC;AAED,oDAGC;AA1HY,QAAA,uBAAuB,GAAgD;IAChF,KAAK,EAAE;QACH,kBAAkB,EAAE,iBAAiB,EAAE,wBAAwB;QAC/D,uBAAuB,EAAE,2BAA2B,EAAE,uBAAuB;QAC7E,wBAAwB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,kBAAkB;KAC9E;IACV,IAAI,EAAE;QACF,uBAAuB,EAAE,cAAc,EAAE,0BAA0B,EAAE,YAAY;QACjF,2BAA2B,EAAE,wBAAwB;QACrD,oCAAoC,EAAE,uBAAuB;KACvD;IACV,MAAM,EAAE;QACJ,iBAAiB,EAAE,cAAc,EAAE,aAAa,EAAE,kBAAkB;QACpE,yBAAyB,EAAE,kBAAkB,EAAE,gCAAgC;QAC/E,2BAA2B,EAAE,uBAAuB;KAC9C;IACV,KAAK,EAAE;QACH,sBAAsB,EAAE,eAAe,EAAE,qBAAqB;QAC9D,0BAA0B,EAAE,uBAAuB,EAAE,mBAAmB;QACxE,gCAAgC;KAC1B;IACV,SAAS,EAAE;QACP,qBAAqB,EAAE,6BAA6B,EAAE,qBAAqB;QAC3E,kBAAkB,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,mBAAmB;KACpF;CACb,CAAC;AA0EF,SAAgB,uBAAuB;IACnC,OAAO;QACH,OAAO,EAAE,IAAI;QACb,kBAAkB,EAAE,CAAC;QACrB,WAAW,EAAE,IAAI;QACjB,qBAAqB,EAAE,EAAE;QACzB,eAAe,EAAE,IAAI;QACrB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAgB;QAC/E,YAAY,EAAE,eAAe;KAChC,CAAC;AACN,CAAC;AAED,gFAAgF;AAEhF,SAAgB,iBAAiB;IAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1D,OAAO,QAAQ,SAAS,IAAI,MAAM,EAAE,CAAC;AACzC,CAAC;AAED,SAAgB,oBAAoB,CAAC,MAAiB,EAAE,MAAc;IAClE,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,OAAO,OAAO,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AAC9D,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { CircuitBreakerState } from '@backendkit-labs/circuit-breaker';
2
+ import type { LLMChatClient } from '../../orchestration/intent-detector';
3
+ export interface ResilientLLMClientOptions {
4
+ client: LLMChatClient;
5
+ /** Circuit breaker name, e.g. 'openai', 'deepseek'. Default: 'llm-provider' */
6
+ name?: string;
7
+ /** % of failures in the sliding window to open the circuit. Default: 50 */
8
+ failureThreshold?: number;
9
+ /** Minimum calls before thresholds are evaluated. Default: 5 */
10
+ minimumCalls?: number;
11
+ /** ms to wait in OPEN before transitioning to HALF_OPEN. Default: 30_000 */
12
+ openTimeoutMs?: number;
13
+ /** Called on every state transition — use for logging or alerting */
14
+ onStateChange?: (from: CircuitBreakerState, to: CircuitBreakerState) => void;
15
+ }
16
+ /**
17
+ * Wraps any LLMChatClient with a CircuitBreaker.
18
+ *
19
+ * When the provider fails repeatedly the circuit opens and subsequent calls
20
+ * return { content: null } immediately instead of waiting for timeouts.
21
+ * After openTimeoutMs the circuit transitions to HALF_OPEN and lets a probe
22
+ * call through to test recovery.
23
+ *
24
+ * Pair with ResilientLLMClient + retry for full resilience:
25
+ * retry handles transient blips; circuit breaker handles sustained outages.
26
+ */
27
+ export declare class ResilientLLMClient implements LLMChatClient {
28
+ private readonly breaker;
29
+ private readonly inner;
30
+ constructor(opts: ResilientLLMClientOptions);
31
+ chat(messages: Array<{
32
+ role: string;
33
+ content: string;
34
+ }>, tools?: unknown, temperature?: number): Promise<{
35
+ content: string | null;
36
+ }>;
37
+ getMetrics(): import("@backendkit-labs/circuit-breaker").CircuitBreakerMetrics;
38
+ getState(): CircuitBreakerState;
39
+ }
40
+ //# sourceMappingURL=resilient-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resilient-client.d.ts","sourceRoot":"","sources":["../../../src/shared/llm/resilient-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2C,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAChH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEzE,MAAM,WAAW,yBAAyB;IACtC,MAAM,EAAE,aAAa,CAAC;IACtB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,mBAAmB,KAAK,IAAI,CAAC;CAChF;AAED;;;;;;;;;;GAUG;AACH,qBAAa,kBAAmB,YAAW,aAAa;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;gBAE1B,IAAI,EAAE,yBAAyB;IAwBrC,IAAI,CACN,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,EAClD,KAAK,CAAC,EAAE,OAAO,EACf,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IActC,UAAU;IAIV,QAAQ,IAAI,mBAAmB;CAGlC"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResilientLLMClient = void 0;
4
+ const circuit_breaker_1 = require("@backendkit-labs/circuit-breaker");
5
+ /**
6
+ * Wraps any LLMChatClient with a CircuitBreaker.
7
+ *
8
+ * When the provider fails repeatedly the circuit opens and subsequent calls
9
+ * return { content: null } immediately instead of waiting for timeouts.
10
+ * After openTimeoutMs the circuit transitions to HALF_OPEN and lets a probe
11
+ * call through to test recovery.
12
+ *
13
+ * Pair with ResilientLLMClient + retry for full resilience:
14
+ * retry handles transient blips; circuit breaker handles sustained outages.
15
+ */
16
+ class ResilientLLMClient {
17
+ breaker;
18
+ inner;
19
+ constructor(opts) {
20
+ this.inner = opts.client;
21
+ this.breaker = new circuit_breaker_1.CircuitBreaker({
22
+ name: opts.name ?? 'llm-provider',
23
+ failureThreshold: opts.failureThreshold ?? 50,
24
+ slowCallThreshold: 100, // disabled — LLM calls are slow by nature
25
+ slowCallDurationMs: 120_000, // 2 min threshold for "slow"
26
+ minimumCalls: opts.minimumCalls ?? 5,
27
+ slidingWindowSize: 10,
28
+ halfOpenMaxCalls: 2,
29
+ openTimeoutMs: opts.openTimeoutMs ?? 30_000,
30
+ isFailure: (err) => {
31
+ // HTTP 4xx (auth, quota) → handled by retry, not a circuit failure
32
+ if (err && typeof err === 'object' && 'status' in err) {
33
+ const status = err.status;
34
+ return status >= 500;
35
+ }
36
+ // Network errors and 5xx open the circuit
37
+ return true;
38
+ },
39
+ onStateChange: opts.onStateChange,
40
+ });
41
+ }
42
+ async chat(messages, tools, temperature) {
43
+ return this.breaker.execute(() => this.inner.chat(messages, tools, temperature), (err) => {
44
+ if (err instanceof circuit_breaker_1.CircuitBreakerOpenError) {
45
+ // Circuit is open — fail fast with null, caller decides fallback
46
+ return { content: null };
47
+ }
48
+ // Infrastructure error that opened the circuit — let retry handle it
49
+ throw err;
50
+ });
51
+ }
52
+ getMetrics() {
53
+ return this.breaker.getMetrics();
54
+ }
55
+ getState() {
56
+ return this.breaker.getState();
57
+ }
58
+ }
59
+ exports.ResilientLLMClient = ResilientLLMClient;
60
+ //# sourceMappingURL=resilient-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resilient-client.js","sourceRoot":"","sources":["../../../src/shared/llm/resilient-client.ts"],"names":[],"mappings":";;;AAAA,sEAAgH;AAiBhH;;;;;;;;;;GAUG;AACH,MAAa,kBAAkB;IACV,OAAO,CAAiB;IACxB,KAAK,CAAgB;IAEtC,YAAY,IAA+B;QACvC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,gCAAc,CAAC;YAC9B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,cAAc;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,EAAE;YAC7C,iBAAiB,EAAE,GAAG,EAAO,0CAA0C;YACvE,kBAAkB,EAAE,OAAO,EAAE,6BAA6B;YAC1D,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC;YACpC,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,CAAC;YACnB,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,MAAM;YAC3C,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;gBACf,mEAAmE;gBACnE,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,EAAE,CAAC;oBACpD,MAAM,MAAM,GAAI,GAA0B,CAAC,MAAM,CAAC;oBAClD,OAAO,MAAM,IAAI,GAAG,CAAC;gBACzB,CAAC;gBACD,0CAA0C;gBAC1C,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,aAAa,EAAE,IAAI,CAAC,aAAa;SACpC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,IAAI,CACN,QAAkD,EAClD,KAAe,EACf,WAAoB;QAEpB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CACvB,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,EACnD,CAAC,GAAG,EAAE,EAAE;YACJ,IAAI,GAAG,YAAY,yCAAuB,EAAE,CAAC;gBACzC,iEAAiE;gBACjE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC7B,CAAC;YACD,qEAAqE;YACrE,MAAM,GAAG,CAAC;QACd,CAAC,CACJ,CAAC;IACN,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACnC,CAAC;CACJ;AArDD,gDAqDC"}