agentic-qe 3.9.27 → 3.9.28
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.
- package/.claude/skills/skills-manifest.json +1 -1
- package/CHANGELOG.md +25 -0
- package/assets/skills/skills-manifest.json +1 -1
- package/dist/cli/bundle.js +5 -5
- package/dist/cli/chunks/adapter-EZP2PBUO.js +2 -0
- package/dist/cli/chunks/{agent-booster-wasm-ITOX2PFK.js → agent-booster-wasm-V5PG6GFO.js} +2 -2
- package/dist/cli/chunks/{agent-handler-NGVDEBFM.js → agent-handler-7ZQNRIZC.js} +2 -2
- package/dist/cli/chunks/{agent-memory-branch-6WLQE4UP.js → agent-memory-branch-KGEYSKXW.js} +2 -2
- package/dist/cli/chunks/aqe-learning-engine-RM4YQPRF.js +2 -0
- package/dist/cli/chunks/{audit-KTNR6LYC.js → audit-5A4AC2NA.js} +2 -2
- package/dist/cli/chunks/base-2KYCMSPN.js +2 -0
- package/dist/cli/chunks/{hnswlib-node-X73LVNSE.js → better-sqlite3-RZZIAME7.js} +2 -2
- package/dist/cli/chunks/{brain-handler-ZFLB6Q37.js → brain-handler-KNERI5RC.js} +3 -3
- package/dist/cli/chunks/{branch-enumerator-SONBYE7U.js → branch-enumerator-DGR3U73T.js} +2 -2
- package/dist/cli/chunks/{browser-D6YYID5Y.js → browser-Y5DC6QCK.js} +2 -2
- package/dist/cli/chunks/browser-workflow-FZ2BRH4H.js +2 -0
- package/dist/cli/chunks/{chunk-IUUT6Q5I.js → chunk-2RKR6KT5.js} +2 -2
- package/dist/cli/chunks/{chunk-MSA7UH3M.js → chunk-33VVPBAK.js} +1 -1
- package/dist/cli/chunks/{chunk-ADU5MOQE.js → chunk-3ZPK7HCD.js} +1 -1
- package/dist/cli/chunks/{chunk-GXHMSIBM.js → chunk-4MYXPDXX.js} +1 -1
- package/dist/cli/chunks/chunk-4R6DN7IO.js +2 -0
- package/dist/cli/chunks/{chunk-WHI7FVTH.js → chunk-5KOR5ZMG.js} +2 -2
- package/dist/cli/chunks/{chunk-T46HLTI3.js → chunk-5RZ26J4J.js} +2 -2
- package/dist/cli/chunks/{chunk-JP7AOQZZ.js → chunk-5UHMNAK2.js} +1 -1
- package/dist/cli/chunks/{chunk-YHROZCDI.js → chunk-6BJ6O7JZ.js} +2 -2
- package/dist/cli/chunks/{chunk-DL6L4FGW.js → chunk-6WKX2O66.js} +2 -2
- package/dist/cli/chunks/{chunk-HYCRKKJN.js → chunk-7GLCWLZL.js} +2 -2
- package/dist/cli/chunks/{chunk-6BIHLI3A.js → chunk-7MLACLCT.js} +2 -2
- package/dist/cli/chunks/{chunk-XM3HKZ4U.js → chunk-7MVFQGFZ.js} +2 -2
- package/dist/cli/chunks/{chunk-WGYJD6DT.js → chunk-7NDBKLDK.js} +2 -2
- package/dist/cli/chunks/{chunk-S3QE2RBR.js → chunk-A77JCFFC.js} +3 -3
- package/dist/cli/chunks/{chunk-LXGVB3FK.js → chunk-AFSVRY7S.js} +1 -1
- package/dist/cli/chunks/{chunk-J24PEKZ5.js → chunk-AL7LMXTA.js} +2 -2
- package/dist/cli/chunks/{chunk-WLT5RGLK.js → chunk-B5KYS65U.js} +2 -2
- package/dist/cli/chunks/{chunk-PBP2TWV7.js → chunk-BRCWESMJ.js} +2 -2
- package/dist/cli/chunks/{chunk-VNC7ANGV.js → chunk-C5RA5PDV.js} +2 -2
- package/dist/cli/chunks/{chunk-NTTW3LSE.js → chunk-CAZ2CIU4.js} +2 -2
- package/dist/cli/chunks/{chunk-RAVTYXUD.js → chunk-CCZGT2HD.js} +1 -1
- package/dist/cli/chunks/{chunk-I3YJEVI2.js → chunk-CGQN4R76.js} +2 -2
- package/dist/cli/chunks/{chunk-CYNQW276.js → chunk-CKDW7YFV.js} +2 -2
- package/dist/cli/chunks/{chunk-NWSFGZKC.js → chunk-D4YJ3SDF.js} +1 -1
- package/dist/cli/chunks/{chunk-ITGHTWHH.js → chunk-DHLT7OCI.js} +2 -2
- package/dist/cli/chunks/{chunk-2SEXNZIJ.js → chunk-DMMFUB3Z.js} +2 -2
- package/dist/cli/chunks/{chunk-C7TMWGMN.js → chunk-DQ3FERVR.js} +3 -3
- package/dist/cli/chunks/{chunk-4AWB4BKC.js → chunk-DTS3ZD7P.js} +2 -2
- package/dist/cli/chunks/{chunk-4K7KTT4Q.js → chunk-FI2JQJYJ.js} +1 -1
- package/dist/cli/chunks/{chunk-4DTF53TE.js → chunk-FQJXLJ6G.js} +2 -2
- package/dist/cli/chunks/{chunk-YLSLQ2DT.js → chunk-FTQXXYHG.js} +2 -2
- package/dist/cli/chunks/{chunk-W5EOH4NH.js → chunk-FUKWABUF.js} +1 -1
- package/dist/cli/chunks/{chunk-7QXW6HLF.js → chunk-G4YZWVOV.js} +2 -2
- package/dist/cli/chunks/{chunk-UIKOUIGI.js → chunk-G6LGV6KD.js} +2 -2
- package/dist/cli/chunks/{chunk-2MO2U3NO.js → chunk-GECEU6U3.js} +2 -2
- package/dist/cli/chunks/{chunk-I73XKAOF.js → chunk-HEMQ4DEF.js} +3 -3
- package/dist/cli/chunks/{chunk-4SLL4YG2.js → chunk-HL26OBVJ.js} +2 -2
- package/dist/cli/chunks/{chunk-FY3TF4SA.js → chunk-HQFREWNC.js} +2 -2
- package/dist/cli/chunks/{chunk-2O6XVANK.js → chunk-I4TSLBEZ.js} +2 -2
- package/dist/cli/chunks/{chunk-OA5ZH3IH.js → chunk-IJNRJY2R.js} +2 -2
- package/dist/cli/chunks/{chunk-CNWWQYZ3.js → chunk-IVRBWQBU.js} +1 -1
- package/dist/cli/chunks/{chunk-WD5T5PE6.js → chunk-J62GSTYJ.js} +2 -2
- package/dist/cli/chunks/{chunk-HV7V34DZ.js → chunk-JOSEPQIU.js} +2 -2
- package/dist/cli/chunks/{chunk-2UPD2NX5.js → chunk-JZ5TPG5T.js} +1 -1
- package/dist/cli/chunks/{chunk-BZNIVIZE.js → chunk-KCP5CS4C.js} +1 -1
- package/dist/cli/chunks/{chunk-2IKQT3IF.js → chunk-KYPNHW4G.js} +1 -1
- package/dist/cli/chunks/{chunk-SCS3RUTT.js → chunk-LCSDE5DQ.js} +1 -1
- package/dist/cli/chunks/{chunk-SL5MAYYP.js → chunk-LE3V4QHG.js} +2 -2
- package/dist/cli/chunks/{chunk-RM7WNXRT.js → chunk-LG3F5F7B.js} +2 -2
- package/dist/cli/chunks/{chunk-F5PNA7J3.js → chunk-LKWJUZVH.js} +2 -2
- package/dist/cli/chunks/{chunk-YYGYN4RJ.js → chunk-LM624ZDD.js} +2 -2
- package/dist/cli/chunks/{chunk-QM2LHV7P.js → chunk-LQDKLJBO.js} +2 -2
- package/dist/cli/chunks/{chunk-HEZJOCD7.js → chunk-M3FFEZFJ.js} +2 -2
- package/dist/cli/chunks/{chunk-3BTSXIJ3.js → chunk-MDXIESNH.js} +2 -2
- package/dist/cli/chunks/{chunk-XS63BAQL.js → chunk-MFKVWTIY.js} +4 -4
- package/dist/cli/chunks/{chunk-EW2JQIYW.js → chunk-ML2XD4RS.js} +1 -1
- package/dist/cli/chunks/{chunk-MFRS4KFZ.js → chunk-MWVZTQOR.js} +2 -2
- package/dist/cli/chunks/{chunk-5W3XL5YW.js → chunk-NIWTQURH.js} +2 -2
- package/dist/cli/chunks/{chunk-PMP6QRTB.js → chunk-NNYRIYEZ.js} +4 -4
- package/dist/cli/chunks/{chunk-DURR7FQ2.js → chunk-NUN7N7MB.js} +9 -9
- package/dist/cli/chunks/{chunk-RPDLRKAT.js → chunk-O22BAOMU.js} +1 -1
- package/dist/cli/chunks/{chunk-A4QYEA22.js → chunk-O5AZETA7.js} +2 -2
- package/dist/cli/chunks/{chunk-XLY5LUNG.js → chunk-OE7U5SX2.js} +2 -2
- package/dist/cli/chunks/{chunk-GGIE7KUU.js → chunk-OQWTTKJU.js} +2 -2
- package/dist/cli/chunks/{chunk-U7S7A7LB.js → chunk-OVOXPXPC.js} +1 -1
- package/dist/cli/chunks/{chunk-6BGF3VZJ.js → chunk-PHPT6QTF.js} +2 -2
- package/dist/cli/chunks/{chunk-XFDOE4QW.js → chunk-PMWIZ7TC.js} +2 -2
- package/dist/cli/chunks/{chunk-A7D5532X.js → chunk-PNLEMDLY.js} +2 -2
- package/dist/cli/chunks/{chunk-OHT5NJXJ.js → chunk-POOFM7MT.js} +1 -1
- package/dist/cli/chunks/{chunk-VRPZU5KM.js → chunk-Q2GEEKE4.js} +1 -1
- package/dist/cli/chunks/{chunk-V7HMKS5S.js → chunk-QGQ6XWFK.js} +2 -2
- package/dist/cli/chunks/{chunk-ZC5WKTB5.js → chunk-QKODMLPS.js} +1 -1
- package/dist/cli/chunks/{chunk-6R2OTCWG.js → chunk-QMCRT3AX.js} +2 -2
- package/dist/cli/chunks/{chunk-AAYGZTW3.js → chunk-QY4NWJET.js} +3 -3
- package/dist/cli/chunks/{chunk-E3K7FQKW.js → chunk-RB5T2HNT.js} +2 -2
- package/dist/cli/chunks/{chunk-COTY53RT.js → chunk-RJGSHAHW.js} +2 -2
- package/dist/cli/chunks/{chunk-PGS2MYE7.js → chunk-ROXQZJ6J.js} +1 -1
- package/dist/cli/chunks/{chunk-RDJZLKU2.js → chunk-RPNBVYWZ.js} +1 -1
- package/dist/cli/chunks/{chunk-X6HOSOIT.js → chunk-RUOWR53U.js} +3 -3
- package/dist/cli/chunks/{chunk-4Z2KY7N3.js → chunk-RX3S6244.js} +1 -1
- package/dist/cli/chunks/{chunk-IQITE3HO.js → chunk-S5YTV4G3.js} +1 -1
- package/dist/cli/chunks/{chunk-WVRFTL46.js → chunk-S7RGN5OC.js} +1 -1
- package/dist/cli/chunks/{chunk-5DDRRXKR.js → chunk-SH7IVDWV.js} +2 -2
- package/dist/cli/chunks/{chunk-6IYCOEW7.js → chunk-SQHCTVEH.js} +2 -2
- package/dist/cli/chunks/{chunk-XLFWSEZ4.js → chunk-SVPX24HJ.js} +2 -2
- package/dist/cli/chunks/{chunk-PXFK5V2E.js → chunk-T5YDBTD6.js} +2 -2
- package/dist/cli/chunks/{chunk-FQZM3SVW.js → chunk-TYR7ZETY.js} +2 -2
- package/dist/cli/chunks/{chunk-MKDGVPE3.js → chunk-UCQ2AFAR.js} +8 -8
- package/dist/cli/chunks/{chunk-PFHUT2VE.js → chunk-UEADBMAA.js} +2 -2
- package/dist/cli/chunks/{chunk-WPN2NYZ3.js → chunk-UJRYZ6TO.js} +3 -3
- package/dist/cli/chunks/{chunk-RE5OY7WL.js → chunk-UYTAAWAO.js} +2 -2
- package/dist/cli/chunks/{chunk-G4KZCXZK.js → chunk-V6GKWUCS.js} +1 -1
- package/dist/cli/chunks/{chunk-MHPA6IWB.js → chunk-V7VCP42A.js} +2 -2
- package/dist/cli/chunks/{chunk-7EC2C5QP.js → chunk-VGQYRIQ2.js} +1 -1
- package/dist/cli/chunks/{chunk-KFDY5AD7.js → chunk-VJ7OJ7I3.js} +1 -1
- package/dist/cli/chunks/{chunk-J2ZH6IHM.js → chunk-VK3VXDNA.js} +2 -2
- package/dist/cli/chunks/{chunk-DPMCEGYQ.js → chunk-VPF2RECU.js} +2 -2
- package/dist/cli/chunks/{chunk-LU27B4M7.js → chunk-VQA6GDNN.js} +3 -3
- package/dist/cli/chunks/{chunk-5GBDMANM.js → chunk-VZEKUY3G.js} +2 -2
- package/dist/cli/chunks/{chunk-JZTMCQVH.js → chunk-WQIT7I46.js} +1 -1
- package/dist/cli/chunks/{chunk-T5HPBBVB.js → chunk-WT2IUWYG.js} +1 -1
- package/dist/cli/chunks/{chunk-PU7S6SEW.js → chunk-XCLG5FGQ.js} +4 -4
- package/dist/cli/chunks/{chunk-JBL5G5VJ.js → chunk-XCMM2NLF.js} +1 -1
- package/dist/cli/chunks/{chunk-ET5RCLBO.js → chunk-XLNWSI7Y.js} +2 -2
- package/dist/cli/chunks/{chunk-5WPQATT7.js → chunk-Y7EPJRQT.js} +2 -2
- package/dist/cli/chunks/{chunk-O7XW2BWN.js → chunk-YF5JCM45.js} +2 -2
- package/dist/cli/chunks/{chunk-J6EDIEZB.js → chunk-YG6ZRK5N.js} +1 -1
- package/dist/cli/chunks/{chunk-2Z2DD5YW.js → chunk-YJPNL6K4.js} +2 -2
- package/dist/cli/chunks/{chunk-HPB5MPJP.js → chunk-YLZZZRB7.js} +2 -2
- package/dist/cli/chunks/{chunk-Q5GQ267O.js → chunk-YUV4EMRT.js} +1 -1
- package/dist/cli/chunks/{chunk-2J3B4ONK.js → chunk-ZDM6AWU6.js} +2 -2
- package/dist/cli/chunks/{chunk-PIR3KN5M.js → chunk-ZH2WOQP3.js} +2 -2
- package/dist/cli/chunks/{chunk-BT5YOORE.js → chunk-ZJEPVWBV.js} +2 -2
- package/dist/cli/chunks/{chunk-JN7WVS57.js → chunk-ZKNO5AR4.js} +2 -2
- package/dist/cli/chunks/{ci-TNCEZMBI.js → ci-XTEXFMLT.js} +2 -2
- package/dist/cli/chunks/{ci-output-GXRUBE4X.js → ci-output-5NU5WEOG.js} +2 -2
- package/dist/cli/chunks/{circuit-breaker-UY3UVWZK.js → circuit-breaker-UBO4B3ER.js} +2 -2
- package/dist/cli/chunks/{claude-flow-setup-G4PJY2IE.js → claude-flow-setup-X7SVV2YA.js} +2 -2
- package/dist/cli/chunks/client-SRNILWCG.js +2 -0
- package/dist/cli/chunks/{cline-installer-VDCVZLLN.js → cline-installer-EBLJPYJW.js} +2 -2
- package/dist/cli/chunks/{code-2COXCETT.js → code-WO52OOGB.js} +2 -2
- package/dist/cli/chunks/{code-index-extractor-TBRSOYNZ.js → code-index-extractor-MVR5EQ4S.js} +2 -2
- package/dist/cli/chunks/{codex-installer-CNUIJ7RF.js → codex-installer-LR2NDWTK.js} +2 -2
- package/dist/cli/chunks/{completions-42LTVU5S.js → completions-J5OYMQCR.js} +2 -2
- package/dist/cli/chunks/{complexity-analyzer-2ECJ3OPO.js → complexity-analyzer-GUFXAK6I.js} +2 -2
- package/dist/cli/chunks/{continuedev-installer-FW2GFUG2.js → continuedev-installer-45ZDPPTK.js} +2 -2
- package/dist/cli/chunks/{copilot-installer-QSV6WUBZ.js → copilot-installer-FIKML2UD.js} +2 -2
- package/dist/cli/chunks/{cost-tracker-CH3CSBR5.js → cost-tracker-SSI3GZ5C.js} +2 -2
- package/dist/cli/chunks/{coverage-XNF65ZHG.js → coverage-GQSRYPVJ.js} +3 -3
- package/dist/cli/chunks/cross-domain-router-QCOROKUM.js +2 -0
- package/dist/cli/chunks/{cursor-installer-FP44QVKZ.js → cursor-installer-WRIQ2MXB.js} +2 -2
- package/dist/cli/chunks/{daemon-RCTFQOCN.js → daemon-TKQOU66X.js} +3 -3
- package/dist/cli/chunks/{dag-attention-scheduler-SRMUBFRY.js → dag-attention-scheduler-DZ4Y7G3P.js} +2 -2
- package/dist/cli/chunks/{detect-6N6E24MC.js → detect-DLXIZ3JQ.js} +2 -2
- package/dist/cli/chunks/{dist-node-T6UY6WUC.js → dist-node-3QZ37HLE.js} +2 -2
- package/dist/cli/chunks/{domain-handler-67FVCSTC.js → domain-handler-F2XFKJOG.js} +2 -2
- package/dist/cli/chunks/{domain-transfer-T6QVO7Q7.js → domain-transfer-NZNJ6O5Y.js} +2 -2
- package/dist/cli/chunks/dream-P5YCSXOG.js +2 -0
- package/dist/cli/chunks/{embed-and-insert-pattern-ZGTGPFKX.js → embed-and-insert-pattern-IXQSPD2Q.js} +2 -2
- package/dist/cli/chunks/{eval-KBCCSN2V.js → eval-5VQNSHMZ.js} +2 -2
- package/dist/cli/chunks/{experience-capture-middleware-QH2I2HCM.js → experience-capture-middleware-SQQVSGWT.js} +3 -3
- package/dist/cli/chunks/{fast-paths-ZP3R5NWJ.js → fast-paths-XZ4PMW4T.js} +2 -2
- package/dist/cli/chunks/{feature-flags-MGYWJNZ2.js → feature-flags-I3E33SWO.js} +2 -2
- package/dist/cli/chunks/{feature-flags-TTPWNBQU.js → feature-flags-VYNQQIWP.js} +2 -2
- package/dist/cli/chunks/{file-discovery-VUIFTAJQ.js → file-discovery-VBJYSQEB.js} +2 -2
- package/dist/cli/chunks/{fleet-RFCEBGRJ.js → fleet-R24REKY3.js} +4 -4
- package/dist/cli/chunks/{gnn-wrapper-JSEZQYAZ.js → gnn-wrapper-ZSS765OF.js} +2 -2
- package/dist/cli/chunks/{heartbeat-handler-ZRVNKBJK.js → heartbeat-handler-DXMMYI3L.js} +4 -4
- package/dist/cli/chunks/{heartbeat-scheduler-ZQTLT3DW.js → heartbeat-scheduler-CAXANO7U.js} +2 -2
- package/dist/cli/chunks/hnsw-adapter-CR22XKGP.js +2 -0
- package/dist/cli/chunks/hnsw-index-BTN322XC.js +2 -0
- package/dist/cli/chunks/{hnsw-legacy-bridge-Y6MPTDAI.js → hnsw-legacy-bridge-EU46A4HQ.js} +2 -2
- package/dist/cli/chunks/{better-sqlite3-ROUVYY3W.js → hnswlib-node-K5N5YEYS.js} +2 -2
- package/dist/cli/chunks/{hooks-RIKFUPBG.js → hooks-2AFKHPAH.js} +11 -11
- package/dist/cli/chunks/{hybrid-router-B35QFYSN.js → hybrid-router-TLHKB3V6.js} +2 -2
- package/dist/cli/chunks/{hypergraph-engine-GABHICVB.js → hypergraph-engine-QKIUFDJP.js} +2 -2
- package/dist/cli/chunks/{hypergraph-handler-NCMVBN4Q.js → hypergraph-handler-CT77BGUK.js} +3 -3
- package/dist/cli/chunks/impact-analyzer-ZYIZG4GS.js +2 -0
- package/dist/cli/chunks/{init-handler-7ROPCNFB.js → init-handler-L5Y4EZPZ.js} +8 -8
- package/dist/cli/chunks/init-wizard-2GJYCDEQ.js +2 -0
- package/dist/cli/chunks/kernel-GR44AXQ6.js +2 -0
- package/dist/cli/chunks/{kilocode-installer-JXHO4YK3.js → kilocode-installer-5XLS62BE.js} +2 -2
- package/dist/cli/chunks/{kiro-installer-7SUM4FLK.js → kiro-installer-YNGEFQJ6.js} +2 -2
- package/dist/cli/chunks/knowledge-graph-23VGRP7G.js +2 -0
- package/dist/cli/chunks/{learning-74DAUWK5.js → learning-H4PJXEZT.js} +3 -3
- package/dist/cli/chunks/{llm-router-LYQ3AJYV.js → llm-router-5V7S4RBP.js} +4 -4
- package/dist/cli/chunks/{load-EKML5ERV.js → load-MERCK5J7.js} +2 -2
- package/dist/cli/chunks/load-test-5O3AB7JK.js +2 -0
- package/dist/cli/chunks/{mcp-XBL5K2W4.js → mcp-AY3EW3M4.js} +2 -2
- package/dist/cli/chunks/{memory-FVYBB4DR.js → memory-L7QEPZ3O.js} +5 -5
- package/dist/cli/chunks/memory-backend-JMFE5AFK.js +2 -0
- package/dist/cli/chunks/{memory-handlers-LN7J33BW.js → memory-handlers-3MMKDYQH.js} +2 -2
- package/dist/cli/chunks/{multi-model-executor-5LK2OUJ7.js → multi-model-executor-MCYVGMYJ.js} +2 -2
- package/dist/cli/chunks/{opencode-installer-FY7QUQ3U.js → opencode-installer-NSJCDEG7.js} +2 -2
- package/dist/cli/chunks/{orchestrator-UYVNXY2H.js → orchestrator-PSFROJTM.js} +5 -5
- package/dist/cli/chunks/{pipeline-ZALCCJ2O.js → pipeline-TXZZCEOG.js} +2 -2
- package/dist/cli/chunks/{platform-J2VZO4PZ.js → platform-PUFZFG66.js} +2 -2
- package/dist/cli/chunks/{plugin-2J74277Q.js → plugin-ALNATTS7.js} +2 -2
- package/dist/cli/chunks/{prime-radiant-advanced-wasm-XUBMJ4Z5.js → prime-radiant-advanced-wasm-PZZRWJEK.js} +2 -2
- package/dist/cli/chunks/protocol-executor-J6KJRPXK.js +2 -0
- package/dist/cli/chunks/{protocol-handler-YGOAM45F.js → protocol-handler-WR4JQLSR.js} +2 -2
- package/dist/cli/chunks/{prove-7K3XVHHK.js → prove-AI7HVVJW.js} +2 -2
- package/dist/cli/chunks/{provider-manager-S7GYXNYK.js → provider-manager-XWDJJTRQ.js} +2 -2
- package/dist/cli/chunks/qe-reasoning-bank-A2Z7QLTV.js +2 -0
- package/dist/cli/chunks/{quality-7WK5BINE.js → quality-W5K6U7NU.js} +2 -2
- package/dist/cli/chunks/queen-coordinator-RSASVM4O.js +2 -0
- package/dist/cli/chunks/{real-embeddings-SE7AMRSP.js → real-embeddings-Y65TLGVT.js} +2 -2
- package/dist/cli/chunks/{roocode-installer-WAMTTOPL.js → roocode-installer-2INES4NP.js} +2 -2
- package/dist/cli/chunks/router-LIO2DAHL.js +2 -0
- package/dist/cli/chunks/routing-feedback-WQ4XI7TT.js +2 -0
- package/dist/cli/chunks/{routing-handler-PMHQRA32.js → routing-handler-IR4K3W3W.js} +2 -2
- package/dist/cli/chunks/{ruvector-commands-GFL76O4H.js → ruvector-commands-JGIJKLE5.js} +2 -2
- package/dist/cli/chunks/{rvf-dual-writer-GWBC6LPL.js → rvf-dual-writer-3RPYL6GB.js} +2 -2
- package/dist/cli/chunks/{rvf-migration-adapter-CXIG3BWR.js → rvf-migration-adapter-DZO5RSBU.js} +2 -2
- package/dist/cli/chunks/{rvf-migration-coordinator-EOQMTSCT.js → rvf-migration-coordinator-5OIXOLND.js} +2 -2
- package/dist/cli/chunks/rvf-native-adapter-E7ODRU4B.js +2 -0
- package/dist/cli/chunks/safe-db-BW2OSAL7.js +2 -0
- package/dist/cli/chunks/schedule-JF75BBFQ.js +2 -0
- package/dist/cli/chunks/scheduler-EYCKXDGY.js +2 -0
- package/dist/cli/chunks/{security-TUU4SO7E.js → security-6I65LIPS.js} +3 -3
- package/dist/cli/chunks/shared-rvf-adapter-4Z3AKN2H.js +2 -0
- package/dist/cli/chunks/{shared-rvf-dual-writer-REFYUOL6.js → shared-rvf-dual-writer-LEY65TEP.js} +2 -2
- package/dist/cli/chunks/sqlite-persistence-RUVPC4L5.js +2 -0
- package/dist/cli/chunks/{status-handler-V3FJKB72.js → status-handler-DOJ2JTXS.js} +2 -2
- package/dist/cli/chunks/{structural-health-YS2IIXLZ.js → structural-health-GSWBOWZR.js} +2 -2
- package/dist/cli/chunks/{sync-K5GEHWLO.js → sync-VJ7W4F4G.js} +2 -2
- package/dist/cli/chunks/{task-handler-XPCZ2JHK.js → task-handler-AETQISNK.js} +2 -2
- package/dist/cli/chunks/{task-handlers-JTL52AMR.js → task-handlers-OQSZGWCK.js} +3 -3
- package/dist/cli/chunks/{test-5FJNVFGF.js → test-G57YV5WH.js} +4 -4
- package/dist/cli/chunks/{test-scheduling-JPL25DXR.js → test-scheduling-ONWDZENP.js} +3 -3
- package/dist/cli/chunks/{token-bootstrap-QPFQ4UAT.js → token-bootstrap-CTG7NE77.js} +2 -2
- package/dist/cli/chunks/{token-usage-MVT2IZ5R.js → token-usage-YDHUAMJQ.js} +2 -2
- package/dist/cli/chunks/{transformers-ZXK7QT3Z.js → transformers-W7SFGSLI.js} +2 -2
- package/dist/cli/chunks/{tree-sitter-wasm-parser-VBZAQFTO.js → tree-sitter-wasm-parser-K7UHIIO2.js} +2 -2
- package/dist/cli/chunks/{types-UQCZMHTU.js → types-EIZ5IMMV.js} +2 -2
- package/dist/cli/chunks/unified-memory-XE5LJO5T.js +2 -0
- package/dist/cli/chunks/unified-memory-hnsw-DB6HGWEU.js +2 -0
- package/dist/cli/chunks/unified-persistence-XGXZG42H.js +2 -0
- package/dist/cli/chunks/{upgrade-TETHVGBS.js → upgrade-TIQBZYJ7.js} +2 -2
- package/dist/cli/chunks/{validate-7YJTPQC7.js → validate-IIN2ODDK.js} +2 -2
- package/dist/cli/chunks/{validate-swarm-QO32GODJ.js → validate-swarm-V6Y4I77Q.js} +2 -2
- package/dist/cli/chunks/{vibium-HDRQBZAY.js → vibium-NMIWAEGL.js} +2 -2
- package/dist/cli/chunks/visual-security-NF4MBB32.js +2 -0
- package/dist/cli/chunks/{web-tree-sitter-4QMH7RWP.js → web-tree-sitter-BGIECWPA.js} +2 -2
- package/dist/cli/chunks/{windsurf-installer-HMBCR4V3.js → windsurf-installer-WTZG4PZD.js} +2 -2
- package/dist/cli/chunks/{witness-chain-2SYYDES4.js → witness-chain-EQ2RE7CZ.js} +2 -2
- package/dist/cli/chunks/witness-chain-ZIE7GCJI.js +2 -0
- package/dist/cli/chunks/{workflow-CNFOBA7L.js → workflow-3ZDRY6TE.js} +4 -4
- package/dist/cli/chunks/workflow-orchestrator-Z4KE75MK.js +2 -0
- package/dist/cli/chunks/{wrappers-5KG5VXFG.js → wrappers-FOP76K6J.js} +2 -2
- package/dist/cli/commands/fleet.js +2 -0
- package/dist/cli/handlers/init-handler.js +2 -0
- package/dist/cli/index.js +3 -0
- package/dist/kernel/interfaces.d.ts +14 -0
- package/dist/kernel/kernel.js +32 -11
- package/dist/mcp/bundle.js +2 -2
- package/package.json +1 -1
- package/dist/cli/chunks/adapter-T3LXVVV6.js +0 -2
- package/dist/cli/chunks/aqe-learning-engine-NDMVUAJB.js +0 -2
- package/dist/cli/chunks/base-NQRD32GI.js +0 -2
- package/dist/cli/chunks/browser-workflow-WSAEHMFE.js +0 -2
- package/dist/cli/chunks/chunk-ZGJTIDFI.js +0 -2
- package/dist/cli/chunks/client-XZQV5LLD.js +0 -2
- package/dist/cli/chunks/cross-domain-router-FTKMTQQC.js +0 -2
- package/dist/cli/chunks/dream-RB4NFA6Z.js +0 -2
- package/dist/cli/chunks/hnsw-adapter-ZKM2ITVF.js +0 -2
- package/dist/cli/chunks/hnsw-index-CFYACM4M.js +0 -2
- package/dist/cli/chunks/impact-analyzer-DOLCGJKR.js +0 -2
- package/dist/cli/chunks/init-wizard-BMYBCQNH.js +0 -2
- package/dist/cli/chunks/kernel-FUWIWNAU.js +0 -2
- package/dist/cli/chunks/knowledge-graph-JFX7VTYG.js +0 -2
- package/dist/cli/chunks/load-test-5J6WURNM.js +0 -2
- package/dist/cli/chunks/memory-backend-SLFDDGZB.js +0 -2
- package/dist/cli/chunks/protocol-executor-3T2LU2YQ.js +0 -2
- package/dist/cli/chunks/qe-reasoning-bank-KPX2L7ZZ.js +0 -2
- package/dist/cli/chunks/queen-coordinator-G7ZZKP7M.js +0 -2
- package/dist/cli/chunks/router-UNMP4QIG.js +0 -2
- package/dist/cli/chunks/routing-feedback-OG5NUKZD.js +0 -2
- package/dist/cli/chunks/rvf-native-adapter-EPXU4UUM.js +0 -2
- package/dist/cli/chunks/safe-db-BYZRI4XX.js +0 -2
- package/dist/cli/chunks/schedule-Z4ICJMF6.js +0 -2
- package/dist/cli/chunks/scheduler-T4IIRLST.js +0 -2
- package/dist/cli/chunks/shared-rvf-adapter-FDAQL677.js +0 -2
- package/dist/cli/chunks/sqlite-persistence-SNTM6622.js +0 -2
- package/dist/cli/chunks/unified-memory-RL5XRRVQ.js +0 -2
- package/dist/cli/chunks/unified-memory-hnsw-FMHZ5TCH.js +0 -2
- package/dist/cli/chunks/unified-persistence-GI5NFSWC.js +0 -2
- package/dist/cli/chunks/visual-security-TARFNARP.js +0 -2
- package/dist/cli/chunks/witness-chain-U36QGK2S.js +0 -2
- package/dist/cli/chunks/workflow-orchestrator-WILFC5ES.js +0 -2
package/dist/mcp/bundle.js
CHANGED
|
@@ -4760,7 +4760,7 @@ Ensure prime-radiant-advanced-wasm is installed.`);let i=yme(n);if(e.initSync&&t
|
|
|
4760
4760
|
SELECT COUNT(*) as total,
|
|
4761
4761
|
SUM(CASE WHEN success = 1 THEN 1 ELSE 0 END) as successful
|
|
4762
4762
|
FROM routing_outcomes
|
|
4763
|
-
`).get();e=e??a?.total??0,t=t??a?.successful??0}catch{}}e=e??0,t=t??0,r=r??0;let i=e>0?Math.round(t/e*1e4)/100:0;return T({successRate:i,totalOutcomes:e,successfulOutcomes:t,confidenceCorrelation:r,source:n})}},Mme=[xme,kme,Pme,Ime]});function t3(){return[Dme(),_me(),Lme(),Fme(),Nme(),Ome()]}function Dme(){return{id:"comprehensive-testing",name:"Comprehensive Testing Workflow",description:"test-generation -> test-execution -> coverage-analysis -> quality-assessment",version:"1.0.0",tags:["testing","quality"],steps:[{id:"generate-tests",name:"Generate Tests",domain:"test-generation",action:"generateTests",inputMapping:{sourceFiles:"input.sourceFiles",framework:"input.framework"},outputMapping:{testFiles:"generatedTests.files",testCount:"generatedTests.count"},timeout:12e4,retry:{maxAttempts:2,backoffMs:1e3}},{id:"execute-tests",name:"Execute Tests",domain:"test-execution",action:"execute",dependsOn:["generate-tests"],inputMapping:{testFiles:"results.generatedTests.files"},outputMapping:{runId:"execution.runId",passed:"execution.passed",failed:"execution.failed"},timeout:3e5},{id:"analyze-coverage",name:"Analyze Coverage",domain:"coverage-analysis",action:"analyze",dependsOn:["execute-tests"],inputMapping:{runId:"results.execution.runId"},outputMapping:{line:"coverage.line",branch:"coverage.branch",overall:"coverage.overall"}},{id:"assess-quality",name:"Assess Quality",domain:"quality-assessment",action:"evaluateGate",dependsOn:["analyze-coverage"],inputMapping:{coverage:"results.coverage",testResults:"results.execution"},outputMapping:{passed:"quality.gatePassed",score:"quality.score"}},{id:"generate-more-tests",name:"Generate Additional Tests",domain:"test-generation",action:"generateTests",dependsOn:["analyze-coverage"],condition:{path:"results.coverage.overall",operator:"lt",value:80},inputMapping:{sourceFiles:"input.sourceFiles",targetCoverage:"input.targetCoverage"},continueOnFailure:!0}]}}function _me(){return{id:"defect-prevention",name:"Defect Prevention Workflow",description:"code-intelligence (impact) -> defect-intelligence (predict) -> test-generation (for risky areas)",version:"1.0.0",tags:["defect","prevention","ai"],steps:[{id:"analyze-impact",name:"Analyze Code Impact",domain:"code-intelligence",action:"analyzeImpact",inputMapping:{changedFiles:"input.changedFiles"},outputMapping:{impactedFiles:"impact.files",impactedTests:"impact.tests",riskLevel:"impact.riskLevel"},timeout:6e4},{id:"predict-defects",name:"Predict Defects",domain:"defect-intelligence",action:"predictDefects",dependsOn:["analyze-impact"],inputMapping:{files:"results.impact.files"},outputMapping:{predictions:"defects.predictions",highRiskFiles:"defects.highRiskFiles"}},{id:"generate-targeted-tests",name:"Generate Targeted Tests",domain:"test-generation",action:"generateTests",dependsOn:["predict-defects"],condition:{path:"results.defects.highRiskFiles",operator:"exists",value:!0},inputMapping:{sourceFiles:"results.defects.highRiskFiles",priority:"input.priority"}}],triggers:[{eventType:"code-intelligence.ImpactAnalysisCompleted",inputMapping:{changedFiles:"event.changedFiles"}}]}}function Lme(){return{id:"pre-release",name:"Pre-Release Workflow",description:"security-audit -> quality-gate -> deployment-advisor",version:"1.0.0",tags:["release","security","deployment"],steps:[{id:"security-audit",name:"Security Audit",domain:"security-compliance",action:"runAudit",inputMapping:{targetFiles:"input.targetFiles",includeDependencies:"input.includeDependencies"},outputMapping:{vulnerabilities:"security.vulnerabilities",riskScore:"security.riskScore",passed:"security.passed"},timeout:18e4},{id:"quality-gate",name:"Quality Gate Evaluation",domain:"quality-assessment",action:"evaluateGate",dependsOn:["security-audit"],inputMapping:{securityResults:"results.security",releaseCandidate:"input.releaseCandidate"},outputMapping:{passed:"quality.gatePassed",checks:"quality.checks"}},{id:"deployment-advice",name:"Get Deployment Advice",domain:"quality-assessment",action:"getDeploymentAdvice",dependsOn:["quality-gate"],inputMapping:{releaseCandidate:"input.releaseCandidate",qualityResults:"results.quality",securityResults:"results.security"},outputMapping:{decision:"deployment.decision",recommendations:"deployment.recommendations",riskScore:"deployment.riskScore"}}],triggers:[{eventType:"quality-assessment.QualityGateEvaluated",condition:{path:"event.passed",operator:"eq",value:!0}}]}}function Fme(){return{id:"continuous-learning",name:"Continuous Learning Workflow",description:"Collect patterns -> consolidate -> transfer -> optimize",version:"1.0.0",tags:["learning","optimization","ai"],steps:[{id:"collect-patterns",name:"Collect Patterns",domain:"learning-optimization",action:"runLearningCycle",inputMapping:{domain:"input.targetDomain"},outputMapping:{patternsLearned:"learning.patterns",experiencesProcessed:"learning.experiences"}},{id:"consolidate-patterns",name:"Consolidate Patterns",domain:"learning-optimization",action:"shareCrossDomainLearnings",dependsOn:["collect-patterns"],condition:{path:"results.learning.patterns",operator:"gt",value:0},outputMapping:{knowledgeShared:"consolidation.shared",domainsUpdated:"consolidation.domains"}},{id:"transfer-knowledge",name:"Transfer Knowledge",domain:"learning-optimization",action:"shareCrossDomainLearnings",dependsOn:["consolidate-patterns"],outputMapping:{transferSuccessRate:"transfer.successRate",newPatternsCreated:"transfer.newPatterns"}},{id:"optimize-strategies",name:"Optimize Strategies",domain:"learning-optimization",action:"optimizeAllStrategies",dependsOn:["transfer-knowledge"],outputMapping:{domainsOptimized:"optimization.domains",avgImprovement:"optimization.improvement"}}]}}function Nme(){return{id:"morning-sync",name:"Morning Sync Protocol",description:"Daily quality synchronization across all domains",version:"1.0.0",tags:["protocol","daily","sync"],steps:[{id:"collect-metrics",name:"Collect Quality Metrics",domain:"quality-assessment",action:"analyzeQuality",inputMapping:{sourceFiles:"input.sourceFiles"},outputMapping:{score:"metrics.qualityScore"}},{id:"analyze-trends",name:"Analyze Coverage Trends",domain:"coverage-analysis",action:"getTrend",inputMapping:{timeRange:"input.timeRange",granularity:"input.granularity"},outputMapping:{trend:"trends.coverage",forecast:"trends.forecast"}},{id:"check-security",name:"Check Security Posture",domain:"security-compliance",action:"getSecurityPosture",outputMapping:{overallScore:"security.score",criticalIssues:"security.critical",recommendations:"security.recommendations"}},{id:"get-defect-predictions",name:"Get Defect Predictions",domain:"defect-intelligence",action:"predictDefects",inputMapping:{files:"input.changedFiles"},outputMapping:{predictions:"defects.predictions"}},{id:"generate-learning-report",name:"Generate Learning Dashboard",domain:"learning-optimization",action:"getLearningDashboard",dependsOn:["collect-metrics","analyze-trends","check-security","get-defect-predictions"],outputMapping:{learningRate:"learning.rate",topDomains:"learning.topDomains"}}]}}function Ome(){return{id:"qcsd-ideation-swarm",name:"QCSD Ideation Swarm",description:"Quality Conscious Software Delivery ideation phase: [url-extraction] -> [flag-detection] -> quality-criteria (HTSM) -> [testability, risk, requirements, security*, accessibility*, qx*] in parallel -> aggregated report. Supports live website URLs with conditional agent spawning based on HAS_UI, HAS_SECURITY, HAS_UX flags.",version:"3.0.0",tags:["qcsd","ideation","quality-criteria","htsm","shift-left","url-analysis"],steps:[{id:"website-content-extraction",name:"Website Content Extraction",domain:"requirements-validation",action:"extractWebsiteContent",inputMapping:{url:"input.url"},outputMapping:{extractedDescription:"extraction.description",extractedFeatures:"extraction.features",extractedAcceptanceCriteria:"extraction.acceptanceCriteria",detectedFlags:"extraction.flags",isWebsite:"extraction.isWebsite"},timeout:6e4,continueOnFailure:!0},{id:"quality-criteria-analysis",name:"HTSM Quality Criteria Analysis",domain:"requirements-validation",action:"analyzeQualityCriteria",dependsOn:["website-content-extraction"],inputMapping:{targetId:"input.targetId",targetType:"input.targetType",description:"results.website-content-extraction.extractedDescription || input.description",acceptanceCriteria:"results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria"},outputMapping:{qualityCriteria:"qualityCriteria.criteria",qualityScore:"qualityCriteria.score"},timeout:18e4,retry:{maxAttempts:2,backoffMs:2e3}},{id:"testability-assessment",name:"Testability Scoring (10 Principles)",domain:"requirements-validation",action:"assessTestability",dependsOn:["quality-criteria-analysis"],inputMapping:{targetId:"input.targetId",description:"results.website-content-extraction.extractedDescription || input.description",acceptanceCriteria:"results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria"},outputMapping:{overallScore:"testability.overallScore",principles:"testability.principles",blockers:"testability.blockers",recommendations:"testability.recommendations"},timeout:12e4,continueOnFailure:!0},{id:"risk-assessment",name:"Quality Risk Assessment",domain:"requirements-validation",action:"assessRisks",dependsOn:["quality-criteria-analysis"],inputMapping:{targetId:"input.targetId",targetType:"input.targetType",description:"results.website-content-extraction.extractedDescription || input.description"},outputMapping:{overallRisk:"risks.overallRisk",riskScore:"risks.riskScore",factors:"risks.factors",mitigations:"risks.mitigations"},timeout:9e4,continueOnFailure:!0},{id:"requirements-validation",name:"Requirements & Acceptance Criteria Validation",domain:"requirements-validation",action:"validateRequirements",dependsOn:["quality-criteria-analysis"],inputMapping:{targetId:"input.targetId",description:"results.website-content-extraction.extractedDescription || input.description",acceptanceCriteria:"results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria"},outputMapping:{valid:"requirements.valid",issues:"requirements.issues",suggestions:"requirements.suggestions"},timeout:9e4,continueOnFailure:!0},{id:"security-threat-modeling",name:"Early Security Threat Modeling (STRIDE)",domain:"security-compliance",action:"modelSecurityThreats",dependsOn:["quality-criteria-analysis"],condition:{path:"results.website-content-extraction.detectedFlags.hasSecurity || input.securityCritical",operator:"eq",value:!0},inputMapping:{targetId:"input.targetId",description:"results.website-content-extraction.extractedDescription || input.description",securityCritical:"results.website-content-extraction.detectedFlags.hasSecurity || input.securityCritical"},outputMapping:{threats:"security.threats",overallRisk:"security.overallRisk",recommendations:"security.recommendations"},timeout:12e4,continueOnFailure:!0},{id:"accessibility-audit",name:"Accessibility Audit (WCAG 2.2)",domain:"visual-accessibility",action:"auditAccessibility",dependsOn:["quality-criteria-analysis"],condition:{path:"results.website-content-extraction.detectedFlags.hasUI || input.hasUI",operator:"eq",value:!0},inputMapping:{targetId:"input.targetId",url:"input.url",description:"results.website-content-extraction.extractedDescription || input.description",features:"results.website-content-extraction.extractedFeatures"},outputMapping:{wcagLevel:"accessibility.wcagLevel",violations:"accessibility.violations",recommendations:"accessibility.recommendations"},timeout:18e4,continueOnFailure:!0},{id:"quality-experience-analysis",name:"Quality Experience Analysis (QX Partner)",domain:"coordination",action:"analyzeQualityExperience",dependsOn:["quality-criteria-analysis"],condition:{path:"results.website-content-extraction.detectedFlags.hasUX || input.hasUX",operator:"eq",value:!0},inputMapping:{targetId:"input.targetId",url:"input.url",description:"results.website-content-extraction.extractedDescription || input.description",features:"results.website-content-extraction.extractedFeatures"},outputMapping:{journeys:"qx.journeys",frictionPoints:"qx.frictionPoints",recommendations:"qx.recommendations"},timeout:15e4,continueOnFailure:!0},{id:"aggregate-ideation-report",name:"Generate Ideation Report",domain:"requirements-validation",action:"generateIdeationReport",dependsOn:["quality-criteria-analysis","testability-assessment","risk-assessment","requirements-validation","security-threat-modeling","accessibility-audit","quality-experience-analysis"],inputMapping:{targetId:"input.targetId",targetType:"input.targetType"},outputMapping:{report:"ideation.report",readyForDevelopment:"ideation.readyForDevelopment",blockers:"ideation.blockers",recommendations:"ideation.recommendations",testStrategy:"ideation.testStrategy"},timeout:6e4},{id:"store-ideation-learnings",name:"Store Ideation Learnings",domain:"learning-optimization",action:"storeIdeationLearnings",dependsOn:["aggregate-ideation-report"],inputMapping:{targetId:"input.targetId",report:"results.ideation.report"},outputMapping:{stored:"learning.stored",patternId:"learning.patternId"},continueOnFailure:!0}],triggers:[{eventType:"requirements-validation.EpicCreated",inputMapping:{targetId:"event.epicId",targetType:"event.type",description:"event.description",acceptanceCriteria:"event.acceptanceCriteria"}},{eventType:"requirements-validation.SprintPlanningStarted",inputMapping:{targetId:"event.sprintId",targetType:"event.type",description:"event.description",acceptanceCriteria:"event.acceptanceCriteria"}}]}}var r3,n3=y(()=>{"use strict";r3=["comprehensive-testing","defect-prevention","pre-release","continuous-learning","morning-sync","qcsd-ideation-swarm"]});function i3(o,e,t,r){return new Cm(o,e,t,r)}var Cm,RD=y(()=>{"use strict";N();L();qt();k();ED();ED();e3();n3();Cm=class{constructor(e,t,r,n={}){this.eventBus=e;this.memory=t;this.agentCoordinator=r;this.config={...wD,...n}}eventBus;memory;agentCoordinator;config;workflows=new Map;executions=new Map;actionRegistry={};eventSubscriptions=[];approvalGates=new Map;initialized=!1;async initialize(){this.initialized||(this.registerBuiltInWorkflows(),this.config.enableEventTriggers&&this.setupEventTriggers(),await this.loadPersistedWorkflows(),this.initialized=!0)}async dispose(){for(let e of this.executions.values())e.status==="running"&&await this.cancelWorkflow(e.executionId);for(let e of this.eventSubscriptions)e.unsubscribe();await this.persistWorkflows(),this.initialized=!1}registerWorkflow(e){try{let t=this.validateWorkflowDefinition(e);return t.success?(this.workflows.set(e.id,e),this.config.enableEventTriggers&&e.triggers&&this.registerWorkflowTriggers(e),T(void 0)):t}catch(t){return f(w(t))}}unregisterWorkflow(e){if(!this.workflows.has(e))return f(new Error(`Workflow not found: ${e}`));let t=Array.from(this.executions.values()).filter(r=>r.workflowId===e&&r.status==="running");return t.length>0?f(new Error(`Cannot unregister workflow with ${t.length} active execution(s)`)):(this.workflows.delete(e),T(void 0))}async executeWorkflow(e,t={},r){let n=this.workflows.get(e);if(!n)return f(new Error(`Workflow not found: ${e}`));if(Array.from(this.executions.values()).filter(u=>u.status==="running").length>=this.config.maxConcurrentWorkflows)return f(new Error(`Maximum concurrent workflows (${this.config.maxConcurrentWorkflows}) reached`));let s=E(),a=new Date,c={input:t,results:{},metadata:{executionId:s,workflowId:e,correlationId:r||s,startedAt:a}},l={executionId:s,workflowId:e,workflowName:n.name,status:"running",startedAt:a,progress:0,currentSteps:[],completedSteps:[],failedSteps:[],skippedSteps:[],context:c,stepResults:new Map};return this.executions.set(s,l),await this.publishWorkflowStarted(l,n),this.runWorkflow(n,l).catch(async u=>{l.status="failed",l.error=String(u),l.completedAt=new Date,l.duration=l.completedAt.getTime()-a.getTime(),await this.publishWorkflowFailed(l,"unknown",String(u))}),T(s)}getWorkflowStatus(e){return this.executions.get(e)}async cancelWorkflow(e){let t=this.executions.get(e);if(!t)return f(new Error(`Execution not found: ${e}`));if(t.status!=="running"&&t.status!=="paused")return f(new Error(`Cannot cancel workflow in status: ${t.status}`));t.status="cancelled",t.completedAt=new Date,t.duration=t.completedAt.getTime()-t.startedAt.getTime();for(let[r,n]of this.approvalGates.entries())r.startsWith(`${e}:`)&&(n.resolve({approved:!1,reason:"Workflow cancelled"}),this.approvalGates.delete(r));return await this.publishEvent(Lr.WorkflowCancelled,{executionId:e,workflowId:t.workflowId,workflowName:t.workflowName},t.context.metadata.correlationId),T(void 0)}async pauseWorkflow(e){let t=this.executions.get(e);return t?t.status!=="running"?f(new Error(`Cannot pause workflow in status: ${t.status}`)):(t.status="paused",T(void 0)):f(new Error(`Execution not found: ${e}`))}async resumeWorkflow(e){let t=this.executions.get(e);if(!t)return f(new Error(`Execution not found: ${e}`));if(t.status!=="paused")return f(new Error(`Cannot resume workflow in status: ${t.status}`));let r=this.workflows.get(t.workflowId);return r?(t.status="running",this.runWorkflow(r,t).catch(async n=>{t.status="failed",t.error=String(n)}),T(void 0)):f(new Error(`Workflow definition not found: ${t.workflowId}`))}listWorkflows(){return Array.from(this.workflows.values()).map(e=>({id:e.id,name:e.name,description:e.description,version:e.version,stepCount:e.steps.length,tags:e.tags,triggers:e.triggers?.map(t=>t.eventType)}))}getActiveExecutions(){return Array.from(this.executions.values()).filter(e=>e.status==="running"||e.status==="paused")}getWorkflow(e){return this.workflows.get(e)}approveStep(e,t){let r=`${e}:${t}`,n=this.approvalGates.get(r);return n?(n.resolve({approved:!0}),this.approvalGates.delete(r),!0):!1}rejectStep(e,t,r){let n=`${e}:${t}`,i=this.approvalGates.get(n);return i?(i.resolve({approved:!1,reason:r}),this.approvalGates.delete(n),!0):!1}isActionRegistered(e,t){return!!this.actionRegistry[e]?.[t]}getRegisteredActions(e){return Object.keys(this.actionRegistry[e]||{})}getDomainsWithActions(){return Object.keys(this.actionRegistry)}async spawnWorkflowAgent(e,t,r){return this.agentCoordinator.canSpawn()?this.agentCoordinator.spawn({name:`workflow-agent-${e.slice(0,8)}-${t}`,domain:r,type:"coordinator",capabilities:["workflow-execution",t],config:{workflowId:e,stepId:t}}):f(new Error("Agent limit reached"))}async stopWorkflowAgent(e){return this.agentCoordinator.stop(e)}getAvailableAgentCapacity(){return this.agentCoordinator.canSpawn()?this.config.maxConcurrentWorkflows-this.getActiveExecutions().length:0}registerAction(e,t,r){let n=["__proto__","constructor","prototype"];if(n.includes(e)||n.includes(t))throw new Error("Invalid domain or action name: contains dangerous prototype key");this.actionRegistry[e]||(this.actionRegistry[e]={}),this.actionRegistry[e][t]=r}async executeFromBehaviorTree(e){let t=new Date;try{let r=await e.tick(),n=new Date,i=n.getTime()-t.getTime();return{status:r==="SUCCESS"?"completed":r==="RUNNING"?"running":"failed",startedAt:t,completedAt:n,duration:i,treeStatus:r,treeName:e.name}}catch(r){let n=new Date,i=n.getTime()-t.getTime();return{status:"failed",startedAt:t,completedAt:n,duration:i,treeStatus:"FAILURE",treeName:e.name,error:S(r)}}}async runWorkflow(e,t){let r=e.timeout||this.config.defaultWorkflowTimeout,n=new Promise((i,s)=>{setTimeout(()=>s(new Error(`Workflow timeout after ${r}ms`)),r)});try{await Promise.race([this.executeSteps(e,t),n]),t.status==="running"&&(t.status="completed",t.completedAt=new Date,t.duration=t.completedAt.getTime()-t.startedAt.getTime(),t.progress=100,await this.publishWorkflowCompleted(t))}catch(i){if(t.status==="running"){t.status="failed",t.error=String(i),t.completedAt=new Date,t.duration=t.completedAt.getTime()-t.startedAt.getTime();let s=t.currentSteps[0]||"unknown";await this.publishWorkflowFailed(t,s,String(i))}}this.config.persistExecutions&&await this.persistExecution(t)}async executeSteps(e,t){let r=e.steps,n=new Set(t.completedSteps),i=new Set(t.skippedSteps),s=new Set(t.failedSteps),a=r.filter(c=>!n.has(c.id)&&!i.has(c.id)&&!s.has(c.id));for(;a.length>0&&t.status==="running";){let c=a.filter(m=>(m.dependsOn||[]).every(h=>n.has(h)||i.has(h)));if(c.length===0)break;let l=c.filter(m=>!m.dependsOn?.length),u=c.filter(m=>m.dependsOn?.length);if(l.length>0){t.currentSteps=l.map(g=>g.id);let m=await Promise.allSettled(l.map(g=>this.executeStep(g,t,e)));for(let g=0;g<l.length;g++){let h=l[g],v=m[g];if(v.status==="fulfilled"){let C=v.value;if(C.status==="completed")n.add(h.id),t.completedSteps.push(h.id);else if(C.status==="skipped")i.add(h.id),t.skippedSteps.push(h.id);else if(C.status==="failed"&&(s.add(h.id),t.failedSteps.push(h.id),!h.continueOnFailure)){t.status="failed",t.error=C.error;return}}else if(s.add(h.id),t.failedSteps.push(h.id),!h.continueOnFailure){t.status="failed",t.error=v.reason?.message||"Unknown error";return}let b=a.indexOf(h);b!==-1&&a.splice(b,1)}}for(let m of u){if(t.status!=="running")break;t.currentSteps=[m.id];let g=await this.executeStep(m,t,e);if(g.status==="completed")n.add(m.id),t.completedSteps.push(m.id);else if(g.status==="skipped")i.add(m.id),t.skippedSteps.push(m.id);else if(g.status==="failed"&&(s.add(m.id),t.failedSteps.push(m.id),!m.continueOnFailure)){t.status="failed",t.error=g.error;return}let h=a.indexOf(m);h!==-1&&a.splice(h,1)}let d=r.length,p=n.size+i.size+s.size;t.progress=Math.round(p/d*100)}t.currentSteps=[]}async executeStep(e,t,r){let n=new Date,i={stepId:e.id,status:"pending",startedAt:n};try{if(e.skipCondition&&this.evaluateCondition(e.skipCondition,t.context))return i.status="skipped",i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepSkipped(t,e),i;if(e.condition&&!this.evaluateCondition(e.condition,t.context))return i.status="skipped",i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepSkipped(t,e),i;i.status="running",await this.publishStepStarted(t,e);let s=this.buildStepInput(e,t.context),a,c=e.retry?.maxAttempts||1,l=e.retry?.backoffMs||1e3,u=e.retry?.backoffMultiplier||2;for(let d=1;d<=c;d++){i.retryCount=d-1;try{let p=e.timeout||this.config.defaultStepTimeout,m=await this.executeStepAction(e,s,t.context,p);if(this.mapStepOutput(e,m,t.context),e.approval){let g=await this.waitForApproval(e,t);if(!g.approved)return i.status="failed",i.error=g.reason||"Step rejected at approval gate",i.output=m,i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepFailed(t,e,i.error),i}return i.status="completed",i.output=m,i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepCompleted(t,e,i),i}catch(p){a=w(p),d<c&&(await this.delay(l),l*=u)}}return i.status="failed",i.error=a?.message||"Unknown error",i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),e.rollback&&await this.executeRollback(e.rollback,t.context),await this.publishStepFailed(t,e,i.error),i}catch(s){return i.status="failed",i.error=S(s),i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepFailed(t,e,i.error),i}}async executeStepAction(e,t,r,n){let i=new Promise((c,l)=>{setTimeout(()=>l(new Error(`Step timeout after ${n}ms`)),n)}),s=ZQ(e.domain,e.action);if(s){let c=await Promise.race([s.execute(t,r),i]);if(!c.success)throw c.error;return c.value}let a=this.actionRegistry[e.domain];if(a?.[e.action]){let c=await Promise.race([a[e.action](t,r),i]);if(!c.success)throw c.error;return c.value}throw new Error(`Action '${e.action}' not registered for domain '${e.domain}'. Register it using orchestrator.registerAction('${e.domain}', '${e.action}', handler)`)}async executeRollback(e,t){try{let r=this.actionRegistry[e.domain];if(!r?.[e.action]){console.warn(`Rollback action '${e.action}' not registered for domain '${e.domain}'. Skipping rollback.`);return}let n=await r[e.action](e.input||{},t);n.success||console.error(`Rollback failed for ${e.domain}.${e.action}:`,n.error)}catch(r){console.error(`Rollback failed for ${e.domain}.${e.action}:`,r)}}buildStepInput(e,t){let r={};if(e.inputMapping)for(let[n,i]of Object.entries(e.inputMapping)){let s=this.getValueByPath(t,i);s!==void 0&&(r[n]=s)}return r}mapStepOutput(e,t,r){if(r.results[e.id]=t,e.outputMapping&&typeof t=="object"&&t!==null)for(let[n,i]of Object.entries(e.outputMapping)){let s=this.getValueByPath(t,n);s!==void 0&&this.setValueByPath(r.results,i,s)}}getValueByPath(e,t){let r=t.split("."),n=e;for(let i of r){if(n==null)return;if(typeof n=="object")n=n[i];else return}return n}setValueByPath(e,t,r){let n=t.split("."),i=new Set(["__proto__","constructor","prototype"]);for(let c of n)if(i.has(c))throw new Error("Invalid path: contains dangerous prototype key");let s=e;for(let c=0;c<n.length-1;c++){let l=n[c];Object.hasOwn(s,l)||Object.defineProperty(s,l,{value:Object.create(null),writable:!0,enumerable:!0,configurable:!0}),s=s[l]}let a=n[n.length-1];Object.defineProperty(s,a,{value:r,writable:!0,enumerable:!0,configurable:!0})}evaluateCondition(e,t){let r=this.getValueByPath(t,e.path);switch(e.operator){case"eq":return r===e.value;case"neq":return r!==e.value;case"gt":return typeof r=="number"&&r>e.value;case"gte":return typeof r=="number"&&r>=e.value;case"lt":return typeof r=="number"&&r<e.value;case"lte":return typeof r=="number"&&r<=e.value;case"contains":return Array.isArray(r)?r.includes(e.value):typeof r=="string"?r.includes(String(e.value)):!1;case"exists":return r!=null;default:return!1}}async publishEvent(e,t,r){let n=K(e,"learning-optimization",t,r);await this.eventBus.publish(n)}async publishWorkflowStarted(e,t){await this.publishEvent(Lr.WorkflowStarted,{executionId:e.executionId,workflowId:e.workflowId,workflowName:e.workflowName,stepCount:t.steps.length},e.context.metadata.correlationId)}async publishWorkflowCompleted(e){await this.publishEvent(Lr.WorkflowCompleted,{executionId:e.executionId,workflowId:e.workflowId,workflowName:e.workflowName,duration:e.duration||0,completedSteps:e.completedSteps.length,skippedSteps:e.skippedSteps.length},e.context.metadata.correlationId)}async publishWorkflowFailed(e,t,r){await this.publishEvent(Lr.WorkflowFailed,{executionId:e.executionId,workflowId:e.workflowId,workflowName:e.workflowName,failedStep:t,error:r},e.context.metadata.correlationId)}async publishStepStarted(e,t){await this.publishEvent(Lr.StepStarted,{executionId:e.executionId,workflowId:e.workflowId,stepId:t.id,stepName:t.name,domain:t.domain},e.context.metadata.correlationId)}async publishStepCompleted(e,t,r){await this.publishEvent(Lr.StepCompleted,{executionId:e.executionId,workflowId:e.workflowId,stepId:t.id,stepName:t.name,domain:t.domain,duration:r.duration},e.context.metadata.correlationId)}async publishStepFailed(e,t,r){await this.publishEvent(Lr.StepFailed,{executionId:e.executionId,workflowId:e.workflowId,stepId:t.id,stepName:t.name,domain:t.domain,error:r},e.context.metadata.correlationId)}async publishStepSkipped(e,t){await this.publishEvent(Lr.StepSkipped,{executionId:e.executionId,workflowId:e.workflowId,stepId:t.id,stepName:t.name,domain:t.domain},e.context.metadata.correlationId)}validateWorkflowDefinition(e){if(!e.id)return f(new Error("Workflow ID is required"));if(!e.name)return f(new Error("Workflow name is required"));if(!e.steps||e.steps.length===0)return f(new Error("Workflow must have at least one step"));let t=new Set;for(let n of e.steps){if(!n.id)return f(new Error("Step ID is required"));if(t.has(n.id))return f(new Error(`Duplicate step ID: ${n.id}`));if(t.add(n.id),!n.domain)return f(new Error(`Step ${n.id} must have a domain`));if(!Z.includes(n.domain))return f(new Error(`Invalid domain for step ${n.id}: ${n.domain}`));if(!n.action)return f(new Error(`Step ${n.id} must have an action`));if(n.dependsOn){for(let i of n.dependsOn)if(!e.steps.some(s=>s.id===i))return f(new Error(`Step ${n.id} depends on unknown step: ${i}`))}}let r=this.detectCircularDependencies(e.steps);return r?f(new Error(`Circular dependency detected: ${r}`)):T(void 0)}detectCircularDependencies(e){let t=new Set,r=new Set,n=(i,s)=>{if(r.has(i))return[...s,i].join(" -> ");if(t.has(i))return null;t.add(i),r.add(i);let a=e.find(c=>c.id===i);if(a?.dependsOn)for(let c of a.dependsOn){let l=n(c,[...s,i]);if(l)return l}return r.delete(i),null};for(let i of e){let s=n(i.id,[]);if(s)return s}return null}setupEventTriggers(){let e=this.eventBus.subscribe("*",async t=>{await this.handleEventForTriggers(t)});this.eventSubscriptions.push(e)}registerWorkflowTriggers(e){}async handleEventForTriggers(e){for(let t of this.workflows.values())if(t.triggers)for(let r of t.triggers){if(r.eventType!==e.type||r.sourceDomain&&r.sourceDomain!==e.source)continue;if(r.condition){let i={input:{event:e.payload},results:{},metadata:{executionId:"",workflowId:t.id,startedAt:new Date}};if(!this.evaluateCondition(r.condition,i))continue}let n={};if(r.inputMapping)for(let[i,s]of Object.entries(r.inputMapping)){let a=this.getValueByPath({event:e.payload},s);a!==void 0&&(n[i]=a)}else n.triggerEvent=e.payload;await this.executeWorkflow(t.id,n,e.correlationId)}}registerBuiltInWorkflows(){let e=t3();for(let t of e)this.registerWorkflow(t)}async loadPersistedWorkflows(){try{let e=await this.memory.search("workflow:definition:*",100);for(let t of e){let r=await this.memory.get(t);r&&!this.workflows.has(r.id)&&this.workflows.set(r.id,r)}}catch(e){console.error("Failed to load persisted workflows:",e)}}async persistWorkflows(){try{for(let e of this.workflows.values())r3.includes(e.id)||await this.memory.set(`workflow:definition:${e.id}`,e,{namespace:"coordination",persist:!0})}catch(e){console.error("Failed to persist workflows:",e)}}async persistExecution(e){try{let t={...e,stepResults:Object.fromEntries(e.stepResults)};await this.memory.set(`workflow:execution:${e.executionId}`,t,{namespace:"coordination",ttl:86400*7})}catch(t){console.error("Failed to persist execution:",t)}}async waitForApproval(e,t){let r=typeof e.approval=="object"?e.approval:{},n=r.autoApproveAfter??3e5,i=r.message??`Awaiting approval for step: ${e.name}`,s=t.stepResults.get(e.id);s&&(s.status="awaiting_approval"),await this.publishEvent(Lr.StepAwaitingApproval,{executionId:t.executionId,workflowId:t.workflowId,stepId:e.id,stepName:e.name,domain:e.domain,message:i,autoApproveAfter:n>0?n:void 0},t.context.metadata.correlationId);let a=`${t.executionId}:${e.id}`;return new Promise(c=>{let l={resolve:c};if(this.approvalGates.set(a,l),n>0){let u=setTimeout(()=>{this.approvalGates.has(a)&&(this.approvalGates.delete(a),c({approved:!0}))},n),d=l.resolve;l.resolve=p=>{clearTimeout(u),d(p)}}})}delay(e){return new Promise(t=>setTimeout(t,e))}}});function s3(o,e,t,r){return new AD(o,e,t,r)}var AD,a3=y(()=>{"use strict";L();tA();RD();AD=class extends Ce{constructor(t,r,n,i={}){super(t,r);this.agentCoordinator=n;this.pluginConfig=i}agentCoordinator;workflowOrchestrator=null;pluginConfig;get name(){return"coordination"}get version(){return"1.0.0"}get dependencies(){return Z.filter(t=>t!=="coordination")}getAPI(){return{listWorkflows:async()=>{if(!this.workflowOrchestrator)throw new Error("Workflow orchestrator not initialized");return this.workflowOrchestrator.listWorkflows()}}}async onInitialize(){this.workflowOrchestrator=i3(this.eventBus,this.memory,this.agentCoordinator,this.pluginConfig.workflowConfig),await this.workflowOrchestrator.initialize(),this.updateHealth({status:"healthy",agents:{total:0,active:0,idle:0,failed:0}})}async onDispose(){this.workflowOrchestrator&&(await this.workflowOrchestrator.dispose(),this.workflowOrchestrator=null)}async onEvent(t){t.type.startsWith("coordination.")&&await this.handleCoordinationEvent(t)}subscribeToEvents(){this.eventBus.subscribe("coordination.workflow.execute",async t=>{await this.handleEvent(t)})}async handleCoordinationEvent(t){t.type.split(".")[1]==="workflow"&&await this.handleWorkflowEvent(t)}async handleWorkflowEvent(t){this.workflowOrchestrator}}});var tt,xD,rt,Ra=y(()=>{"use strict";tt={CoverageAnalyzerService:"coverage-analysis.CoverageAnalyzerService",SecurityScannerService:"security-compliance.SecurityScannerService",isSemgrepAvailable:"security-compliance.isSemgrepAvailable",runSemgrepWithRules:"security-compliance.runSemgrepWithRules",convertSemgrepFindings:"security-compliance.convertSemgrepFindings",createTestGeneratorService:"test-generation.createTestGeneratorService",KnowledgeGraphService:"code-intelligence.KnowledgeGraphService",QualityAnalyzerService:"quality-assessment.QualityAnalyzerService"},xD=class{factories=new Map;register(e,t){this.factories.set(e,t)}resolve(e){let t=this.factories.get(e);if(!t)throw new Error(`DomainServiceRegistry: service '${e}' not registered. Ensure the domain module is initialized before coordination.`);return t}has(e){return this.factories.has(e)}clear(){this.factories.clear()}keys(){return Array.from(this.factories.keys())}},rt=new xD});var o3=y(()=>{"use strict";mk();dk();Ao();py();uk();Ra();Ao();rt.register(tt.createTestGeneratorService,o=>Ln(o))});var c3=y(()=>{"use strict";Ud();Mv();Zk();Ys();Gd();tP();nP();sP();Ra();Ud();rt.register(tt.CoverageAnalyzerService,o=>new nn(o))});var l3=y(()=>{"use strict";hM();mM();jp();gC();hC();Ra();jp();KI();rt.register(tt.SecurityScannerService,o=>new Mr(o));rt.register(tt.isSemgrepAvailable,Vp);rt.register(tt.runSemgrepWithRules,jb);rt.register(tt.convertSemgrepFindings,Qb)});var u3=y(()=>{"use strict";qI();OI();oa();dp();Xo();Ra();oa();rt.register(tt.KnowledgeGraphService,o=>new er(o))});var oT=y(()=>{"use strict";Wo()});var kD=y(()=>{"use strict";Wo();tp();rp();oT();tp();rp();oT()});var p3=y(()=>{"use strict";L();Qd();kD();tp();rp();k();oT()});var m3=y(()=>{"use strict";xP();RP();Qd();Kd();Uv();p3();kD();Ra();Kd();rt.register(tt.QualityAnalyzerService,o=>new Qn(o))});var Aa,Ume,cT,lT,g3=y(()=>{"use strict";N();q();L();qt();zt();Vt();k();Aa={SoapOperationTested:"enterprise-integration.SoapOperationTested",MessageFlowTested:"enterprise-integration.MessageFlowTested",BapiTested:"enterprise-integration.BapiTested",IDocValidated:"enterprise-integration.IDocValidated",ODataTested:"enterprise-integration.ODataTested",SodAnalyzed:"enterprise-integration.SodAnalyzed",MiddlewareFlowTested:"enterprise-integration.MiddlewareFlowTested",IntegrationValidationFailed:"enterprise-integration.IntegrationValidationFailed"},Ume={maxConcurrentWorkflows:8,defaultTimeout:12e4,publishEvents:!0,enableMinCutAwareness:!0,topologyHealthThreshold:.5,pauseOnCriticalTopology:!1,enableConsensus:!0,consensusThreshold:.7,consensusStrategy:"weighted",consensusMinModels:2},cT=M.create("enterprise-integration"),lT=class extends ke{constructor(t,r,n,i={}){let s={...Ume,...i};super(t,"enterprise-integration",s,{verifyFindingTypes:["soap-fault","message-ordering-violation","rfc-compatibility-break","idoc-validation-failure","odata-contract-break","sod-conflict"],modelTimeout:12e4});this.memory=r;this.agentCoordinator=n}memory;agentCoordinator;async onInitialize(){this.subscribeToEvents(),cT.info("Enterprise Integration Coordinator initialized")}async onDispose(){}subscribeToEvents(){this.eventBus.subscribe("contract-testing.ContractVerified",this.handleContractVerified.bind(this)),this.eventBus.subscribe("chaos-resilience.FaultInjected",this.handleFaultInjected.bind(this))}getActiveWorkflows(){return super.getActiveWorkflows()}async validateWsdl(t){let r=E();try{if(this.startWorkflow(r,"soap"),this.minCutMixin.shouldPauseOperations())return f(new Error("WSDL validation paused: topology is in critical state"));let n=await this.spawnAgent(r,"qe-soap-tester",{task:"validate-wsdl",url:t});if(!n.success)return this.failWorkflow(r,n.error.message),n;let i={url:t,version:"1.1",services:[],schemas:[]};return await this.memory.set(`enterprise-integration:wsdl:${encodeURIComponent(t)}`,i,{namespace:"enterprise-integration",persist:!0}),this.completeWorkflow(r),T(i)}catch(n){return this.failWorkflow(r,String(n)),f(w(n))}}async testSoapOperation(t,r,n){let i=E();try{this.startWorkflow(i,"soap");let s=await this.spawnAgent(i,"qe-soap-tester",{task:"test-operation",wsdl:t,operation:r,input:n});if(!s.success)return this.failWorkflow(i,s.error.message),f(s.error);let a={operation:r,passed:!0,request:JSON.stringify(n),response:"",validationErrors:[],duration:0};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.SoapOperationTested,this.domainName,{operation:r,wsdlUrl:t.url,passed:a.passed,errors:a.validationErrors.length})),this.completeWorkflow(i),T(a)}catch(s){return this.failWorkflow(i,String(s)),f(w(s))}}async testMessageFlow(t,r){let n=E();try{this.startWorkflow(n,"messaging");let i=await this.spawnAgent(n,"qe-message-broker-tester",{task:"test-message-flow",brokerConfig:t,testCase:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={testCaseId:r.id,passed:!0,sentAt:new Date,receivedAt:new Date,latency:0,actualOutcome:r.expectedOutcome,errors:[]};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.MessageFlowTested,this.domainName,{protocol:t.protocol,queue:r.queue,passed:s.passed,latency:s.latency})),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async testDlqHandling(t,r){let n=E();try{this.startWorkflow(n,"messaging");let i=await this.spawnAgent(n,"qe-message-broker-tester",{task:"test-dlq",brokerConfig:t,queue:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={queue:r,messageCount:0,poisonMessages:0,reprocessable:0,errors:[]};return this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async testBapiCall(t,r){let n=E();try{if(this.startWorkflow(n,"rfc"),this.minCutMixin.shouldPauseOperations())return f(new Error("BAPI testing paused: topology is in critical state"));let i=await this.spawnAgent(n,"qe-sap-rfc-tester",{task:"test-bapi",connection:t,bapi:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={bapiName:r.name,passed:!0,returnMessages:[],exportValues:{},tableData:{},duration:0,transactionCommitted:!1};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.BapiTested,this.domainName,{bapiName:r.name,passed:s.passed,returnType:s.returnMessages.length>0?s.returnMessages[0].type:"S"})),await this.memory.set(`enterprise-integration:bapi:${r.name}:${Date.now()}`,{bapiName:r.name,importParams:Object.keys(r.importParams),passed:s.passed,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",persist:!0}),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async validateIdoc(t,r){let n=E();try{this.startWorkflow(n,"idoc");let i=await this.spawnAgent(n,"qe-sap-idoc-tester",{task:"validate-idoc",definition:t,content:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={idocType:t.type,direction:"inbound",passed:!0,statusCode:3,statusMessage:"IDoc validated successfully",segmentValidation:[],processingTime:0};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.IDocValidated,this.domainName,{idocType:t.type,direction:s.direction,passed:s.passed,statusCode:s.statusCode})),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async validateODataMetadata(t){let r=E();try{this.startWorkflow(r,"odata");let n=await this.spawnAgent(r,"qe-odata-contract-tester",{task:"validate-metadata",serviceUrl:t});if(!n.success)return this.failWorkflow(r,n.error.message),f(n.error);let i={version:"v4",serviceUrl:t,entitySets:[],functionImports:[],actions:[]};return await this.memory.set(`enterprise-integration:odata:${encodeURIComponent(t)}`,i,{namespace:"enterprise-integration",persist:!0}),this.completeWorkflow(r),T(i)}catch(n){return this.failWorkflow(r,String(n)),f(w(n))}}async testODataEntitySet(t,r){let n=E();try{this.startWorkflow(n,"odata");let i=await this.spawnAgent(n,"qe-odata-contract-tester",{task:"test-entity-set",metadata:t,entitySet:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={entitySet:r,operation:"CRUD",passed:!0,statusCode:200,validationErrors:[],duration:0};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.ODataTested,this.domainName,{entitySet:r,operation:s.operation,passed:s.passed,version:t.version})),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async validateMessageFlow(t,r){let n=E();try{this.startWorkflow(n,"middleware");let i=await this.spawnAgent(n,"qe-middleware-validator",{task:"validate-flow",flow:t,input:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={flowName:t.name,passed:!0,routingCorrect:!0,transformationCorrect:!0,errorHandlingCorrect:!0,validationErrors:[],duration:0};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.MiddlewareFlowTested,this.domainName,{flowName:t.name,passed:s.passed,routingCorrect:s.routingCorrect,transformationCorrect:s.transformationCorrect})),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async validateTransformation(t,r,n){let i=E();try{this.startWorkflow(i,"middleware");let s=await this.spawnAgent(i,"qe-middleware-validator",{task:"validate-transformation",spec:t,input:r,expectedOutput:n});return s.success?(this.completeWorkflow(i),T(!0)):(this.failWorkflow(i,s.error.message),f(s.error))}catch(s){return this.failWorkflow(i,String(s)),f(w(s))}}async analyzeSod(t,r){let n=E();try{this.startWorkflow(n,"sod");let i=await this.spawnAgent(n,"qe-sod-analyzer",{task:"analyze-sod",userId:t,ruleset:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={userId:t,conflicts:[],riskScore:0,compliant:!0,recommendations:[]};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.SodAnalyzed,this.domainName,{userId:t,conflicts:s.conflicts.length,compliant:s.compliant,riskScore:s.riskScore})),await this.memory.set(`enterprise-integration:sod:${t}:${Date.now()}`,{userId:t,ruleset:r.name,conflicts:s.conflicts.length,compliant:s.compliant,riskScore:s.riskScore,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",persist:!0}),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async spawnAgent(t,r,n){let i={name:`${r}-${t.slice(0,8)}`,domain:"enterprise-integration",type:r,capabilities:[r],config:{workflowId:t,...n}},s=await this.agentCoordinator.spawn(i);return s.success&&this.addAgentToWorkflow(t,s.value),s}async verifyCriticalFinding(t,r){let n=ie({id:E(),type:t.type,confidence:r,description:t.description,payload:t.payload,detectedBy:"enterprise-integration-coordinator",severity:r>.9?"critical":"high"});if(this.consensusMixin.requiresConsensus(n)){let i=await this.consensusMixin.verifyFinding(n);return i.success&&i.value.verdict==="verified"?(cT.info(`Finding verified by consensus: ${t.type}`),!0):(cT.warn(`Finding NOT verified: ${t.type}`),!1)}return!0}async handleContractVerified(t){let r=t.payload;(r?.contractType==="soap"||r?.contractType==="odata")&&await this.memory.set(`enterprise-integration:contract-event:${Date.now()}`,{contractId:r.contractId,type:r.contractType,passed:r.passed,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",ttl:86400})}async handleFaultInjected(t){let r=t.payload;(r?.targetService?.includes("middleware")||r?.targetService?.includes("esb"))&&cT.info(`Middleware fault injection detected: ${r.targetService}`)}}});function h3(o,e,t,r){return new PD(o,e,t,r)}var PD,f3=y(()=>{"use strict";L();$t();k();g3();PD=class extends Ce{constructor(t,r,n,i={}){super(t,r);this.agentCoordinator=n;this.pluginConfig=i}agentCoordinator;coordinator=null;pluginConfig;get name(){return"enterprise-integration"}get version(){return"1.0.0"}get dependencies(){return[]}getAPI(){return{validateWsdl:this.validateWsdl.bind(this),testSoapOperation:this.testSoapOperation.bind(this),testMessageFlow:this.testMessageFlow.bind(this),testDlqHandling:this.testDlqHandling.bind(this),testBapiCall:this.testBapiCall.bind(this),validateIdoc:this.validateIdoc.bind(this),validateODataMetadata:this.validateODataMetadata.bind(this),testODataEntitySet:this.testODataEntitySet.bind(this),validateMessageFlow:this.validateMessageFlow.bind(this),validateTransformation:this.validateTransformation.bind(this),analyzeSod:this.analyzeSod.bind(this),getCoordinator:()=>this.coordinator,getActiveWorkflows:()=>this.coordinator?.getActiveWorkflows()||[]}}getTaskHandlers(){return new Map([["enterprise-integration:soap-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.wsdl,n=t.operation,i=t.input;return t.url&&!r?this.coordinator.validateWsdl(t.url):!r||!n?f(new Error("Invalid soap-test payload: missing wsdl or operation")):this.coordinator.testSoapOperation(r,n,i)}],["enterprise-integration:message-broker-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.brokerConfig,n=t.testCase,i=t.queue;return r?i&&!n?this.coordinator.testDlqHandling(r,i):n?this.coordinator.testMessageFlow(r,n):f(new Error("Invalid message-broker-test payload: missing testCase")):f(new Error("Invalid message-broker-test payload: missing brokerConfig"))}],["enterprise-integration:sap-rfc-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.connection,n=t.bapi;return!r||!n?f(new Error("Invalid sap-rfc-test payload: missing connection or bapi")):this.coordinator.testBapiCall(r,n)}],["enterprise-integration:sap-idoc-validate",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.definition,n=t.content;return!r||!n?f(new Error("Invalid sap-idoc-validate payload: missing definition or content")):this.coordinator.validateIdoc(r,n)}],["enterprise-integration:odata-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.serviceUrl,n=t.metadata,i=t.entitySet;return r&&!n?this.coordinator.validateODataMetadata(r):!n||!i?f(new Error("Invalid odata-test payload: missing metadata or entitySet")):this.coordinator.testODataEntitySet(n,i)}],["enterprise-integration:esb-flow-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.flow,n=t.input,i=t.spec;if(i){let s=t.transformInput,a=t.expectedOutput;return!s||!a?f(new Error("Invalid esb-flow-test payload: missing transformInput or expectedOutput for transformation")):this.coordinator.validateTransformation(i,s,a)}return!r||!n?f(new Error("Invalid esb-flow-test payload: missing flow or input")):this.coordinator.validateMessageFlow(r,n)}],["enterprise-integration:sod-analyze",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.userId,n=t.ruleset;return!r||!n?f(new Error("Invalid sod-analyze payload: missing userId or ruleset")):this.coordinator.analyzeSod(r,n)}]])}async onInitialize(){this.coordinator=new lT(this.eventBus,this.memory,this.agentCoordinator,this.pluginConfig.coordinator),await this.coordinator.initialize(),this.updateHealth({status:"idle",agents:{total:0,active:0,idle:0,failed:0},lastActivity:new Date,errors:[]})}async onDispose(){this.coordinator&&await this.coordinator.dispose(),this.coordinator=null}subscribeToEvents(){this.eventBus.subscribe("contract-testing.ContractVerified",this.handleContractVerified.bind(this)),this.eventBus.subscribe("quality-assessment.QualityGateEvaluated",this.handleQualityGate.bind(this)),this.eventBus.subscribe("chaos-resilience.FaultInjected",this.handleFaultInjected.bind(this))}async onEvent(t){switch(this.updateHealth({lastActivity:new Date}),t.type){case"contract-testing.ContractVerified":await this.handleContractVerified(t);break;case"quality-assessment.QualityGateEvaluated":await this.handleQualityGate(t);break;case"chaos-resilience.FaultInjected":await this.handleFaultInjected(t);break;default:break}}async validateWsdl(t){this.ensureInitialized();try{let r=await this.coordinator.validateWsdl(t);return r.success?this.trackSuccessfulOperation("validateWsdl"):this.trackFailedOperation(new Error(r.error.message)),r}catch(r){return this.handleError(r)}}async testSoapOperation(t,r,n){this.ensureInitialized();try{let i=await this.coordinator.testSoapOperation(t,r,n);return i.success?this.trackSuccessfulOperation("testSoapOperation"):this.trackFailedOperation(new Error(i.error.message)),i}catch(i){return this.handleError(i)}}async testMessageFlow(t,r){this.ensureInitialized();try{let n=await this.coordinator.testMessageFlow(t,r);return n.success?this.trackSuccessfulOperation("testMessageFlow"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async testDlqHandling(t,r){this.ensureInitialized();try{let n=await this.coordinator.testDlqHandling(t,r);return n.success?this.trackSuccessfulOperation("testDlqHandling"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async testBapiCall(t,r){this.ensureInitialized();try{let n=await this.coordinator.testBapiCall(t,r);return n.success?this.trackSuccessfulOperation("testBapiCall"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async validateIdoc(t,r){this.ensureInitialized();try{let n=await this.coordinator.validateIdoc(t,r);return n.success?this.trackSuccessfulOperation("validateIdoc"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async validateODataMetadata(t){this.ensureInitialized();try{let r=await this.coordinator.validateODataMetadata(t);return r.success?this.trackSuccessfulOperation("validateODataMetadata"):this.trackFailedOperation(new Error(r.error.message)),r}catch(r){return this.handleError(r)}}async testODataEntitySet(t,r){this.ensureInitialized();try{let n=await this.coordinator.testODataEntitySet(t,r);return n.success?this.trackSuccessfulOperation("testODataEntitySet"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async validateMessageFlow(t,r){this.ensureInitialized();try{let n=await this.coordinator.validateMessageFlow(t,r);return n.success?this.trackSuccessfulOperation("validateMessageFlow"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async validateTransformation(t,r,n){this.ensureInitialized();try{let i=await this.coordinator.validateTransformation(t,r,n);return i.success?this.trackSuccessfulOperation("validateTransformation"):this.trackFailedOperation(new Error(i.error.message)),i}catch(i){return this.handleError(i)}}async analyzeSod(t,r){this.ensureInitialized();try{let n=await this.coordinator.analyzeSod(t,r);return n.success?this.trackSuccessfulOperation("analyzeSod"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async handleContractVerified(t){let r=t.payload;(r.contractType==="soap"||r.contractType==="odata")&&await this.memory.set(`enterprise-integration:contract-verified:${r.contractId}`,{contractId:r.contractId,type:r.contractType,passed:r.passed,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",ttl:86400})}async handleQualityGate(t){let r=t.payload;r.checks.find(i=>i.name==="enterprise-integration")||await this.memory.set(`enterprise-integration:quality-gate-warning:${r.gateId}`,{warning:"Enterprise integration testing not included in quality gate",timestamp:new Date().toISOString()},{namespace:"enterprise-integration",ttl:86400})}async handleFaultInjected(t){let r=t.payload;(r.targetService?.includes("middleware")||r.targetService?.includes("esb")||r.targetService?.includes("broker")||r.targetService?.includes("mq"))&&await this.memory.set(`enterprise-integration:fault-correlation:${r.faultId||Date.now()}`,{targetService:r.targetService,faultType:r.faultType,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",ttl:3600})}ensureInitialized(){if(!this._initialized)throw new Error("EnterpriseIntegrationPlugin is not initialized");if(!this.coordinator)throw new Error("EnterpriseIntegrationPlugin coordinator is not available")}handleError(t){let r=w(t),n=this.getHealth();return this.updateHealth({errors:[...n.errors.slice(-9),r.message],status:n.errors.length>=5?"degraded":n.status}),{success:!1,error:r}}trackSuccessfulOperation(t){let r=this.getHealth();this.updateHealth({agents:{...r.agents,total:r.agents.total+1,idle:r.agents.idle+1},lastActivity:new Date})}trackFailedOperation(t){let r=this.getHealth();this.updateHealth({agents:{...r.agents,failed:r.agents.failed+1},errors:[...r.errors.slice(-9),t.message]})}}});var v3={};Q(v3,{AgentMemoryBranch:()=>ID});import{existsSync as Tm,mkdirSync as zme,unlinkSync as uT,readdirSync as Vme,statSync as Gme}from"fs";import{join as y3,basename as Hme}from"path";var Wme,ID,b3=y(()=>{"use strict";Wme={branchDir:".agentic-qe/branches",defaultStrategy:"child-wins",orphanMaxAgeMs:36e5},ID=class{config;parentAdapter;activeBranches=new Map;witnessChain=null;constructor(e,t){this.parentAdapter=e,this.config={...Wme,...t}}setWitnessChain(e){this.witnessChain=e}createBranch(e){if(this.activeBranches.has(e))throw new Error(`Branch already exists for agent ${e}`);Tm(this.config.branchDir)||zme(this.config.branchDir,{recursive:!0});let t=y3(this.config.branchDir,`${e}.rvf`),r=this.parentAdapter.path(),n=this.parentAdapter.derive(t),i={agentId:e,childPath:t,parentPath:r,childAdapter:n,createdAt:Date.now(),ingestLog:[]};return this.activeBranches.set(e,i),i}recordIngest(e,t){let r=this.activeBranches.get(e);if(r)for(let n of t)r.ingestLog.push({id:n.id,vector:n.vector})}async mergeBranch(e,t){let r=t??this.config.defaultStrategy,n=performance.now(),i=0;if(r==="child-wins"&&e.ingestLog.length>0)try{i=this.parentAdapter.ingest(e.ingestLog).accepted}catch(s){console.warn(`[AgentMemoryBranch] Merge replay failed for ${e.agentId}:`,s)}return this.witnessChain?.append("BRANCH_MERGE",{agentId:e.agentId,strategy:r,vectorsMerged:i,branchPath:e.childPath},`agent-${e.agentId}`),this.cleanupBranchFile(e),this.activeBranches.delete(e.agentId),{vectorsMerged:i,strategy:r,durationMs:performance.now()-n}}discardBranch(e){this.witnessChain?.append("BRANCH_DISCARD",{agentId:e.agentId,action:"discard",branchPath:e.childPath},`agent-${e.agentId}`),this.cleanupBranchFile(e),this.activeBranches.delete(e.agentId)}getBranch(e){return this.activeBranches.get(e)}getActiveBranches(){return Array.from(this.activeBranches.values())}listBranchFiles(){return Tm(this.config.branchDir)?Vme(this.config.branchDir).filter(t=>t.endsWith(".rvf")).map(t=>{let r=y3(this.config.branchDir,t),n=Gme(r);return{agentId:Hme(t,".rvf"),path:r,sizeBytes:n.size,modifiedAt:n.mtime}}):[]}cleanupOrphans(e){let t=e??this.config.orphanMaxAgeMs,r=Date.now(),n=0;for(let i of this.listBranchFiles())if(r-i.modifiedAt.getTime()>t&&!this.activeBranches.has(i.agentId))try{uT(i.path);let a=`${i.path}.idmap.json`;Tm(a)&&uT(a),n++}catch{}return n}cleanupBranchFile(e){try{e.childAdapter.close()}catch{}try{Tm(e.childPath)&&uT(e.childPath);let t=`${e.childPath}.idmap.json`;Tm(t)&&uT(t)}catch{}}}});var jme,dT,C3=y(()=>{"use strict";jme={sampleSize:50,windowDurationMs:6048e5,compactionThreshold:.3,scoreTolerance:.05},dT=class{config;db=null;rvfStore=null;history=[];constructor(e){this.config={...jme,...e}}setSqliteDb(e){this.db=e}setRvfStore(e){this.rvfStore=e}runCheck(){let e={timestamp:Date.now(),samplesChecked:0,divergences:0,divergenceRate:0,details:[],deadSpaceRatio:null,compactionTriggered:!1};if(!this.db||!this.rvfStore)return this.history.push(e),e;let t=this.getSampleIds(this.config.sampleSize);if(e.samplesChecked=t.length,t.length===0)return this.history.push(e),e;for(let r of t){let n=this.getSqliteEmbedding(r);if(!n){e.divergences++,e.details.push({patternId:r,issue:"missing-in-sqlite"});continue}try{let i=this.rvfStore.search(n,1);i.length===0?(e.divergences++,e.details.push({patternId:r,issue:"missing-in-rvf"})):i[0].id!==r&&i[0].score<.99&&(e.divergences++,e.details.push({patternId:r,issue:"score-mismatch",rvfScore:i[0].score}))}catch{e.divergences++,e.details.push({patternId:r,issue:"missing-in-rvf"})}}e.divergenceRate=e.samplesChecked>0?e.divergences/e.samplesChecked:0;try{let n=this.rvfStore.status().deadSpaceRatio;e.deadSpaceRatio=n??null,n!=null&&n>this.config.compactionThreshold&&(this.triggerCompaction(),e.compactionTriggered=!0)}catch{}return this.history.push(e),this.pruneHistory(),e}getRollingDivergenceRate(){let e=Date.now()-this.config.windowDurationMs,t=this.history.filter(i=>i.timestamp>=e);if(t.length===0)return 0;let r=t.reduce((i,s)=>i+s.samplesChecked,0),n=t.reduce((i,s)=>i+s.divergences,0);return r>0?n/r:0}getCheckCount(){let e=Date.now()-this.config.windowDurationMs;return this.history.filter(t=>t.timestamp>=e).length}getHistory(){let e=Date.now()-this.config.windowDurationMs;return this.history.filter(t=>t.timestamp>=e)}getSampleIds(e){if(!this.db)return[];try{return this.db.prepare("SELECT pattern_id FROM qe_pattern_embeddings ORDER BY RANDOM() LIMIT ?").all(e).map(r=>r.pattern_id)}catch{return[]}}getSqliteEmbedding(e){if(!this.db)return null;try{let t=this.db.prepare("SELECT embedding, dimension FROM qe_pattern_embeddings WHERE pattern_id = ?").get(e);return t?new Float32Array(t.embedding.buffer,t.embedding.byteOffset,t.dimension):null}catch{return null}}triggerCompaction(){try{this.rvfStore.compact?.()}catch{}}pruneHistory(){let e=Date.now()-this.config.windowDurationMs;this.history=this.history.filter(t=>t.timestamp>=e)}}});var Qme,pT,T3=y(()=>{"use strict";Qme={maxDivergenceRate2to3:1e-4,maxReadLatencyRatio2to3:2,maxFallbacks3to4:0,maxWriteLatencyRatio3to4:1.5,minChecksRequired:10},pT=class{config;witnessChain=null;constructor(e){this.config={...Qme,...e}}setWitnessChain(e){this.witnessChain=e}evaluate(e,t,r){let n=Math.min(e+1,4);if(e>=4)return{canPromote:!1,currentStage:e,targetStage:4,checks:[],summary:"Already at maximum stage (4: RVF primary)"};if(e<2)return{canPromote:!0,currentStage:e,targetStage:n,checks:[],summary:`Stage ${e}\u2192${n} has no automated gates \u2014 manual promotion allowed`};let i=[];if(e===2){let c=t.getRollingDivergenceRate(),l=t.getCheckCount();i.push({name:"consistency-checks-count",passed:l>=this.config.minChecksRequired,actual:`${l} checks`,threshold:`>= ${this.config.minChecksRequired} checks`}),i.push({name:"divergence-rate",passed:c<=this.config.maxDivergenceRate2to3,actual:`${(c*100).toFixed(4)}%`,threshold:`<= ${(this.config.maxDivergenceRate2to3*100).toFixed(4)}%`});let u=r.sqliteReadLatencyAvgMs>0?r.rvfReadLatencyAvgMs/r.sqliteReadLatencyAvgMs:0;i.push({name:"read-latency-ratio",passed:u<=this.config.maxReadLatencyRatio2to3||r.rvfReadLatencyAvgMs===0,actual:`${u.toFixed(2)}x`,threshold:`<= ${this.config.maxReadLatencyRatio2to3}x`})}if(e===3){i.push({name:"fallback-count",passed:r.fallbacksUsed<=this.config.maxFallbacks3to4,actual:`${r.fallbacksUsed} fallbacks`,threshold:`<= ${this.config.maxFallbacks3to4} fallbacks`});let c=r.sqliteWriteLatencyAvgMs??r.sqliteReadLatencyAvgMs,l=r.rvfWriteLatencyAvgMs??r.rvfReadLatencyAvgMs,u=c>0?l/c:0;i.push({name:"write-latency-ratio",passed:u<=this.config.maxWriteLatencyRatio3to4||l===0,actual:`${u.toFixed(2)}x`,threshold:`<= ${this.config.maxWriteLatencyRatio3to4}x`})}let s=i.length>0&&i.every(c=>c.passed),a=i.filter(c=>!c.passed).map(c=>c.name);return{canPromote:s,currentStage:e,targetStage:n,checks:i,summary:s?`All gates passed \u2014 safe to promote to stage ${n}`:`Blocked: ${a.join(", ")} failed`}}promote(e,t,r,n=!1){let i=this.evaluate(e,t,r);if(!i.canPromote&&!n)return this.recordWitness("QUALITY_GATE_FAIL",{action:"stage-promotion-blocked",from:e,to:i.targetStage,failedChecks:i.checks.filter(a=>!a.passed),summary:i.summary}),{promoted:!1,newStage:e,result:i};let s=i.targetStage;return this.recordWitness("QUALITY_GATE_PASS",{action:n?"stage-promotion-forced":"stage-promotion-approved",from:e,to:s,checks:i.checks,forced:n,summary:i.summary}),{promoted:!0,newStage:s,result:i}}recordWitness(e,t){try{this.witnessChain?.append(e,t,"rvf-stage-gate")}catch{}}}});var S3={};Q(S3,{RvfMigrationCoordinator:()=>Sm});var mT,Sm,MD=y(()=>{"use strict";lI();C3();T3();mT=null,Sm=class o{adapter;validator;gate;currentStage;initialized=!1;constructor(e){this.currentStage=e?.stage??1,this.adapter=new Dp({stage:this.currentStage,rvfPath:e?.rvfPath??".agentic-qe/patterns.rvf",dimensions:e?.dimensions??384,enableFallback:!0}),this.validator=new dT({sampleSize:50,windowDurationMs:10080*60*1e3,compactionThreshold:.3,scoreTolerance:.05}),this.gate=new pT({minChecksRequired:10})}attachSqliteDb(e){this.adapter.setSqliteDb(e),this.validator.setSqliteDb(e)}attachRvfStore(e){this.adapter.setRvfStore(e),this.validator.setRvfStore(e)}attachWitnessChain(e){this.gate.setWitnessChain(e)}async initialize(){if(!this.initialized){if(this.currentStage===1)try{let{getRvfMigrationStage:e}=await Promise.resolve().then(()=>(se(),cr)),t=e();this.currentStage=t,this.adapter.setStage(t)}catch{}try{let{UnifiedMemoryManager:e}=await Promise.resolve().then(()=>(Y(),Cr)),t=e.getInstance();await t.initialize();let r=t.getDatabase();r&&this.attachSqliteDb(r)}catch{}try{let{getSharedRvfAdapter:e}=await Promise.resolve().then(()=>(ec(),Zo)),t=e();t&&this.attachRvfStore(t)}catch{}try{let{WitnessChain:e}=await Promise.resolve().then(()=>(ip(),YH)),t=new e;await t.initialize(),this.attachWitnessChain(t)}catch{}this.initialized=!0}}getStatus(){let e=this.adapter.getMetrics(),t=this.adapter.status(),r=this.validator.getHistory(),n=this.gate.evaluate(this.currentStage,this.validator,e);return{stage:this.currentStage,stageName:Db[this.currentStage],metrics:e,consistencyHistory:{totalChecks:this.validator.getCheckCount(),rollingDivergenceRate:this.validator.getRollingDivergenceRate(),lastCheck:r.length>0?r[r.length-1]:null},gateEvaluation:n,engineStatus:{sqliteVectorCount:t.sqlite.vectorCount,rvfAvailable:t.rvf!==null,rvfVectorCount:t.rvf?.totalVectors??null,rvfDeadSpaceRatio:t.rvf?.deadSpaceRatio??null}}}runConsistencyCheck(){return this.validator.runCheck()}evaluateGate(){return this.gate.evaluate(this.currentStage,this.validator,this.adapter.getMetrics())}promote(e=!1){let t=this.currentStage,{promoted:r,newStage:n,result:i}=this.gate.promote(this.currentStage,this.validator,this.adapter.getMetrics(),e);return r&&(this.currentStage=n,this.adapter.setStage(n)),{promoted:r,previousStage:t,newStage:n,result:i}}write(e,t){return this.adapter.write(e,t)}search(e,t){return this.adapter.search(e,t)}getAdapter(){return this.adapter}static getInstance(e){return mT||(mT=new o(e)),mT}static resetInstance(){mT=null}}});import{randomUUID as Kme}from"crypto";import*as xa from"path";import*as hT from"fs";var w3,Xme,gT,E3=y(()=>{"use strict";L();l0();cB();lB();d0();_f();X0();l0();Hr();Y();Si();PU();eA();MU();mk();tH();sP();xP();aW();qP();qI();hM();oj();Dj();$j();YQ();a3();o3();c3();l3();u3();m3();f3();w3={"test-generation":(o,e,t)=>pk(o,e,t),"test-execution":(o,e)=>eH(o,e),"coverage-analysis":(o,e)=>iP(o,e),"quality-assessment":(o,e,t)=>AP(o,e,t),"defect-intelligence":(o,e,t)=>sW(o,e,t),"requirements-validation":(o,e,t)=>$P(o,e,t),"code-intelligence":(o,e,t)=>$I(o,e,t),"security-compliance":(o,e,t)=>gM(o,e,t),"contract-testing":(o,e,t)=>aj(o,e,t),"visual-accessibility":(o,e,t)=>Mj(o,e,t),"chaos-resilience":(o,e,t)=>Oj(o,e,t),"learning-optimization":(o,e,t)=>JQ(o,e,t),"enterprise-integration":(o,e,t)=>h3(o,e,t),coordination:(o,e,t)=>s3(o,e,t)},Xme={maxConcurrentAgents:hu.MAX_CONCURRENT_AGENTS,memoryBackend:"hybrid",hnswEnabled:!0,lazyLoading:!0,enabledDomains:[...Z],dataDir:void 0},gT=class{_eventBus;_coordinator;_plugins;_memory;_config;_startTime;_initialized=!1;_loopTracker;_experienceBridge;constructor(e={}){this._config={...Xme,...e},this._startTime=new Date,this._memory=new ks,this._eventBus=new cf,this._coordinator=new lf(this._config.maxConcurrentAgents),this._plugins=new fu(this._eventBus,this._memory,this._config.lazyLoading),this._loopTracker=new vo}get eventBus(){return this._eventBus}get coordinator(){return this._coordinator}get plugins(){return this._plugins}get memory(){return this._memory}async initialize(){if(this._initialized)return;let e=Xr(),t=this._config.dataDir||xa.join(e,".agentic-qe");if(hT.existsSync(t)||hT.mkdirSync(t,{recursive:!0}),this._config.memoryBackend==="memory"){let n=xa.join(ve("os").tmpdir(),`aqe-test-${Date.now()}-${Kme().slice(0,12)}.db`);await J0({dbPath:n})}else this._memory=new Jr({sqlite:{path:xa.join(t,"memory.db"),walMode:!0,poolSize:3,busyTimeout:Ke.BUSY_TIMEOUT_MS},enableFallback:!0,defaultNamespace:"qe-kernel"}),this._plugins=new fu(this._eventBus,this._memory,this._config.lazyLoading);for(let n of this._config.enabledDomains){let i=w3[n];i&&this._plugins.registerFactory(n,async(s,a)=>Promise.resolve(i(s,a,this._coordinator)))}await this._memory.initialize();let r=new Uf({agentId:"qe-kernel"});this._eventBus.registerMiddleware(r);try{let n=xa.join(t,"plugins"),i=new Co({cacheDir:n}),a=new Gf({cache:i}).resolveLoadOrder();for(let c of a.ordered){let l=c.manifest,u=i.get(l.name,l.version);if(!u)continue;let d=xa.join(u.path,l.entryPoint);for(let p of l.domains){let m=p;if(w3[m])continue;this._plugins.registerFactory(m,async(h,v)=>{let b=await import(d),C=b.default??b.createPlugin;if(typeof C!="function")throw new Error(`Plugin "${l.name}" entry point must export a default function or "createPlugin" function`);return C(h,v,this._coordinator)})}}}catch{}this._config.lazyLoading||await this._plugins.loadAll();try{let{isAgentMemoryBranchingEnabled:n,isRVFPatternStoreEnabled:i}=await Promise.resolve().then(()=>(se(),cr));if(n()&&i()){let{getSharedRvfAdapter:s}=await Promise.resolve().then(()=>(ec(),Zo)),{AgentMemoryBranch:a}=await Promise.resolve().then(()=>(b3(),v3)),c=s(t,384);if(c){let l=new a(c,{branchDir:xa.join(t,"branches")});this._coordinator.setMemoryBranch(l)}}}catch{}try{let{getRvfMigrationStage:n}=await Promise.resolve().then(()=>(se(),cr)),i=n();if(i>=2){let{RvfMigrationCoordinator:s}=await Promise.resolve().then(()=>(MD(),S3));await s.getInstance({stage:i}).initialize()}}catch{}try{this._experienceBridge=new Hf(this._eventBus,this._memory),await this._experienceBridge.start()}catch(n){console.warn("[QEKernel] CapturedExperienceBridge failed to start:",n instanceof Error?n.message:n),this._experienceBridge=void 0}this._initialized=!0}async dispose(){this._experienceBridge&&(await this._experienceBridge.stop(),this._experienceBridge=void 0),await this._plugins.disposeAll(),await this._coordinator.dispose(),await this._eventBus.dispose(),await this._memory.dispose(),this._initialized=!1}getDomainAPI(e){return this._plugins.getPlugin(e)?.getAPI()}async getDomainAPIAsync(e){let t=this._plugins.getPlugin(e);if(!t&&this._config.lazyLoading&&this._config.enabledDomains.includes(e))try{t=await this._plugins.load(e)}catch(r){console.error(`[QEKernel] Failed to lazy load domain ${e}:`,r);return}return t?.getAPI()}async ensureDomainLoaded(e){if(this._plugins.isLoaded(e))return!0;if(!this._config.enabledDomains.includes(e))return console.warn(`[QEKernel] Domain ${e} is not enabled`),!1;try{return await this._plugins.load(e),!0}catch(t){return console.error(`[QEKernel] Failed to load domain ${e}:`,t),!1}}isDomainLoaded(e){return this._plugins.isLoaded(e)}getLoadedDomains(){return this._plugins.getLoaded()}getPendingDomains(){let e=new Set(this._plugins.getLoaded());return this._config.enabledDomains.filter(t=>!e.has(t))}getHealth(){let e=this._coordinator.listAgents(),t={};for(let l of this._plugins.getLoaded()){let u=this._plugins.getPlugin(l);u&&(t[l]=u.getHealth())}for(let l of Z)if(!t[l]){let u=this._config.enabledDomains.includes(l),d=this._config.lazyLoading&&u;t[l]={status:d?"healthy":u?"degraded":"healthy",agents:{total:0,active:0,idle:0,failed:0},errors:d?[]:u?["Domain not yet loaded"]:[],loaded:!1,lazyLoadable:d}}let r=this._coordinator.getActiveCount(),n=0,i=Number.MAX_SAFE_INTEGER;if(this._memory instanceof ks){let l=this._memory.getStats();n=l.entries+l.vectors}else n=0;let a=this._eventBus.getMiddlewares().find(l=>l.name==="semantic-anti-drift"),c=a?a.getStats():void 0;return{status:this.determineOverallStatus(t),uptime:Date.now()-this._startTime.getTime(),domains:t,agents:{total:e.length,active:r,maxAllowed:this._config.maxConcurrentAgents},memory:{used:n,available:i},...c?{antiDrift:c}:{}}}determineOverallStatus(e){let t=Object.values(e).map(r=>r.status);return t.some(r=>r==="unhealthy")?"unhealthy":t.some(r=>r==="degraded")?"degraded":"healthy"}getConfig(){return{...this._config}}checkToolCall(e,t,r){if(process.env.AQE_LOOP_DETECTION_ENABLED==="false")return this._loopTracker.trackCall(e,t,r);let n=this._loopTracker.trackCall(e,t,r);if(n.action==="warn"){let i={id:`loop-warn-${e}-${Date.now()}`,type:c0.LOOP_WARNING,timestamp:new Date,source:"coordination",correlationId:e,payload:{agentId:e,toolName:t,callCount:n.callCount,signature:n.signature}};this._eventBus.publish(i)}else if(n.action==="steer"){let i={id:`loop-detected-${e}-${Date.now()}`,type:c0.LOOP_DETECTED,timestamp:new Date,source:"coordination",correlationId:e,payload:{agentId:e,toolName:t,callCount:n.callCount,signature:n.signature,steeringMessage:n.steeringMessage}};this._eventBus.publish(i)}return n}get loopTracker(){return this._loopTracker}}});function Jme(o,e,t){let r=0,n=o.length;for(;r<n;){let i=r+n>>>1;t(o[i],e)<=0?r=i+1:n=i}return r}function R3(o,e,t){let r=Jme(o,e,t);return o.splice(r,0,e),r}function A3(){return(o,e)=>o.createdAt.getTime()-e.createdAt.getTime()}var x3=y(()=>{"use strict"});var fT=y(()=>{"use strict";hi();Pn();x3();fe();Lp()});function DD(o){return new yT(o)}var Yme,yT,k3=y(()=>{"use strict";Yme={enableConsoleLog:!0,maxEntries:1e3,logPrefix:"[TASK]"},yT=class{entries=[];config;constructor(e={}){this.config={...Yme,...e}}log(e,t,r){let n={timestamp:new Date,operation:e,taskId:t,agentId:r?.agentId,domain:r?.domain,details:r?.details};if(this.entries.push(n),this.entries.length>this.config.maxEntries&&this.entries.splice(0,this.entries.length-this.config.maxEntries),this.config.enableConsoleLog){let i=r?.agentId?` by ${r.agentId}`:"",s=r?.domain?` (${r.domain})`:"";console.log(`${this.config.logPrefix} ${e.toUpperCase()} ${t}${i}${s}`)}}logSubmit(e,t){this.log("submit",e,{details:t})}logAssign(e,t,r){this.log("assign",e,{agentId:t,domain:r})}logReassign(e,t,r,n){this.log("reassign",e,{agentId:r,domain:n,details:{fromAgent:t}})}logComplete(e,t){this.log("complete",e,{agentId:t})}logFail(e,t,r){this.log("fail",e,{agentId:t,details:r?{error:r}:void 0})}logCancel(e){this.log("cancel",e)}logSteal(e,t,r){this.log("steal",e,{domain:r,details:{fromDomain:t}})}logQueue(e,t){this.log("queue",e,{details:{position:t}})}logDequeue(e){this.log("dequeue",e)}getEntries(e){let t=[...this.entries];e&&(e.operation&&(t=t.filter(n=>n.operation===e.operation)),e.taskId&&(t=t.filter(n=>n.taskId===e.taskId)),e.agentId&&(t=t.filter(n=>n.agentId===e.agentId)),e.domain&&(t=t.filter(n=>n.domain===e.domain)),e.fromTimestamp&&(t=t.filter(n=>n.timestamp>=e.fromTimestamp)),e.toTimestamp&&(t=t.filter(n=>n.timestamp<=e.toTimestamp)));let r=e?.limit??t.length;return t.slice(-r)}getStatistics(){let e={submit:0,assign:0,reassign:0,complete:0,fail:0,cancel:0,steal:0,queue:0,dequeue:0},t=new Set,r=new Set;for(let n of this.entries)e[n.operation]++,t.add(n.taskId),n.agentId&&r.add(n.agentId);return{totalEntries:this.entries.length,operationCounts:e,taskCount:t.size,agentCount:r.size}}clear(){this.entries.length=0}}});var P3=y(()=>{"use strict";k3()});var wm,vT=y(()=>{"use strict";wm={healthyThreshold:3,warningThreshold:2,checkIntervalMs:5e3,maxHistoryEntries:100,alertsEnabled:!0,alertCooldownMs:6e4,selfHealingEnabled:!1,maxHealingActionsPerMinute:5}});function Em(o,e,t,r){return new bT(o,e,t,r)}var bT,CT=y(()=>{"use strict";N();Wi();vT();bT=class{calculator;config;eventBus;persistence;graph;history=[];alerts=new Map;lastAlertTime=new Map;monitoringInterval=null;isMonitoring=!1;constructor(e,t={},r,n){this.graph=e,this.config={...wm,...t},this.calculator=rn(),this.eventBus=r,this.persistence=n}start(){this.isMonitoring||(this.isMonitoring=!0,this.monitoringInterval=setInterval(()=>this.checkHealth(),this.config.checkIntervalMs),this.checkHealth())}stop(){this.monitoringInterval&&(clearInterval(this.monitoringInterval),this.monitoringInterval=null),this.isMonitoring=!1}updateGraph(e){this.graph=e,this.isMonitoring&&this.checkHealth()}isEmptyTopology(){return this.graph.getVerticesByType("agent").length===0}checkHealth(){let e=this.calculator.getMinCutValue(this.graph),t=this.calculator.findWeakVertices(this.graph),r=this.isEmptyTopology()?"idle":this.determineStatus(e),n=this.calculateTrend();return this.recordHistory(e),this.isEmptyTopology()||this.checkAlertConditions(e,t,r),this.persistence&&t.length>0&&this.persistence.saveWeakVertices(t).catch(i=>console.warn("[MinCutHealthMonitor] Failed to persist weak vertices:",i)),this.emitEvent("mincut.updated",e,{status:r,weakVertexCount:t.length}),{status:r,minCutValue:e,healthyThreshold:this.config.healthyThreshold,warningThreshold:this.config.warningThreshold,weakVertexCount:t.length,topWeakVertices:t.slice(0,5),trend:n,history:this.history.slice(-20),lastUpdated:new Date}}getHealth(){let e=this.calculator.getMinCutValue(this.graph),t=this.calculator.findWeakVertices(this.graph);return{status:this.isEmptyTopology()?"idle":this.determineStatus(e),minCutValue:e,healthyThreshold:this.config.healthyThreshold,warningThreshold:this.config.warningThreshold,weakVertexCount:t.length,topWeakVertices:t.slice(0,5),trend:this.calculateTrend(),history:this.history.slice(-20),lastUpdated:new Date}}getMinCutValue(){return this.calculator.getMinCutValue(this.graph)}getWeakVertices(){return this.calculator.findWeakVertices(this.graph)}isCritical(){return this.calculator.getMinCutValue(this.graph)<this.config.warningThreshold}isHealthy(){return this.calculator.getMinCutValue(this.graph)>=this.config.healthyThreshold}getActiveAlerts(){return Array.from(this.alerts.values()).filter(e=>!e.acknowledged).sort((e,t)=>{let r={critical:0,high:1,medium:2,low:3,info:4};return r[e.severity]-r[t.severity]})}getAllAlerts(){return Array.from(this.alerts.values())}acknowledgeAlert(e){let t=this.alerts.get(e);return t?(t.acknowledged=!0,!0):!1}clearAcknowledgedAlerts(){let e=[];for(let[t,r]of this.alerts)r.acknowledged&&e.push(t);for(let t of e)this.alerts.delete(t);return e.length}getHistory(){return[...this.history]}getTrend(){return this.calculateTrend()}getStats(e=6e4){let t=Date.now()-e,r=this.history.filter(i=>i.timestamp.getTime()>t);if(r.length===0){let i=this.calculator.getMinCutValue(this.graph);return{min:i,max:i,average:i,count:0}}let n=r.map(i=>i.value);return{min:Math.min(...n),max:Math.max(...n),average:n.reduce((i,s)=>i+s,0)/n.length,count:r.length}}updateConfig(e){Object.assign(this.config,e),e.checkIntervalMs&&this.isMonitoring&&(this.stop(),this.start())}getConfig(){return{...this.config}}determineStatus(e){return e>=this.config.healthyThreshold?"healthy":e>=this.config.warningThreshold?"warning":"critical"}calculateTrend(){if(this.history.length<3)return"stable";let e=this.history.slice(-5),t=e[0].value,n=e[e.length-1].value-t,s=e.reduce((a,c)=>a+c.value,0)/e.length*.1;return n>s?"improving":n<-s?"degrading":"stable"}recordHistory(e){let t={timestamp:new Date,value:e,vertexCount:this.graph.vertexCount,edgeCount:this.graph.edgeCount};for(this.history.push(t);this.history.length>this.config.maxHistoryEntries;)this.history.shift()}checkAlertConditions(e,t,r){if(!this.config.alertsEnabled)return;let n=Date.now();r==="critical"?this.maybeGenerateAlert("critical-threshold","critical",`MinCut value (${e.toFixed(2)}) is below critical threshold (${this.config.warningThreshold})`,e,this.config.warningThreshold,t):r==="warning"&&this.maybeGenerateAlert("warning-threshold","high",`MinCut value (${e.toFixed(2)}) is below healthy threshold (${this.config.healthyThreshold})`,e,this.config.healthyThreshold,t);let i=t.filter(a=>a.weightedDegree===0);i.length>0&&this.maybeGenerateAlert("isolated-vertices","high",`${i.length} isolated vertex(es) detected`,e,0,i);let s=t.filter(a=>a.riskScore>.8);s.length>0&&this.maybeGenerateAlert("critical-vertices","medium",`${s.length} critical vertex(es) with high risk score`,e,0,s)}maybeGenerateAlert(e,t,r,n,i,s){let a=Date.now(),c=this.lastAlertTime.get(e)||0;if(a-c<this.config.alertCooldownMs)return;let l={id:E(),severity:t,message:r,minCutValue:n,threshold:i,affectedVertices:s.map(u=>u.vertexId),timestamp:new Date,acknowledged:!1,remediations:s.flatMap(u=>u.suggestions).slice(0,5)};this.alerts.set(l.id,l),this.persistence&&this.persistence.saveAlert(l).catch(u=>console.warn("[MinCutHealthMonitor] Failed to persist alert:",u)),this.lastAlertTime.set(e,a),this.emitEvent("mincut.alert.generated",n,{alert:l})}emitEvent(e,t,r){if(!this.eventBus)return;let n={id:E(),type:e,source:"coordination",timestamp:new Date,correlationId:E(),payload:{minCutValue:t,...r}};this.eventBus.publish(n).catch(i=>{console.error("Failed to publish MinCut event:",i)})}}});function _D(o){return new TT(o)}var TT,LD=y(()=>{"use strict";N();Y();$();TT=class{memory;initialized=!1;constructor(e){this.memory=e??V()}async initialize(){this.initialized||(this.memory.isInitialized()||await this.memory.initialize(),this.initialized=!0)}async saveSnapshot(e){this.ensureInitialized();let t=E();return this.memory.getDatabase().prepare(`
|
|
4763
|
+
`).get();e=e??a?.total??0,t=t??a?.successful??0}catch{}}e=e??0,t=t??0,r=r??0;let i=e>0?Math.round(t/e*1e4)/100:0;return T({successRate:i,totalOutcomes:e,successfulOutcomes:t,confidenceCorrelation:r,source:n})}},Mme=[xme,kme,Pme,Ime]});function t3(){return[Dme(),_me(),Lme(),Fme(),Nme(),Ome()]}function Dme(){return{id:"comprehensive-testing",name:"Comprehensive Testing Workflow",description:"test-generation -> test-execution -> coverage-analysis -> quality-assessment",version:"1.0.0",tags:["testing","quality"],steps:[{id:"generate-tests",name:"Generate Tests",domain:"test-generation",action:"generateTests",inputMapping:{sourceFiles:"input.sourceFiles",framework:"input.framework"},outputMapping:{testFiles:"generatedTests.files",testCount:"generatedTests.count"},timeout:12e4,retry:{maxAttempts:2,backoffMs:1e3}},{id:"execute-tests",name:"Execute Tests",domain:"test-execution",action:"execute",dependsOn:["generate-tests"],inputMapping:{testFiles:"results.generatedTests.files"},outputMapping:{runId:"execution.runId",passed:"execution.passed",failed:"execution.failed"},timeout:3e5},{id:"analyze-coverage",name:"Analyze Coverage",domain:"coverage-analysis",action:"analyze",dependsOn:["execute-tests"],inputMapping:{runId:"results.execution.runId"},outputMapping:{line:"coverage.line",branch:"coverage.branch",overall:"coverage.overall"}},{id:"assess-quality",name:"Assess Quality",domain:"quality-assessment",action:"evaluateGate",dependsOn:["analyze-coverage"],inputMapping:{coverage:"results.coverage",testResults:"results.execution"},outputMapping:{passed:"quality.gatePassed",score:"quality.score"}},{id:"generate-more-tests",name:"Generate Additional Tests",domain:"test-generation",action:"generateTests",dependsOn:["analyze-coverage"],condition:{path:"results.coverage.overall",operator:"lt",value:80},inputMapping:{sourceFiles:"input.sourceFiles",targetCoverage:"input.targetCoverage"},continueOnFailure:!0}]}}function _me(){return{id:"defect-prevention",name:"Defect Prevention Workflow",description:"code-intelligence (impact) -> defect-intelligence (predict) -> test-generation (for risky areas)",version:"1.0.0",tags:["defect","prevention","ai"],steps:[{id:"analyze-impact",name:"Analyze Code Impact",domain:"code-intelligence",action:"analyzeImpact",inputMapping:{changedFiles:"input.changedFiles"},outputMapping:{impactedFiles:"impact.files",impactedTests:"impact.tests",riskLevel:"impact.riskLevel"},timeout:6e4},{id:"predict-defects",name:"Predict Defects",domain:"defect-intelligence",action:"predictDefects",dependsOn:["analyze-impact"],inputMapping:{files:"results.impact.files"},outputMapping:{predictions:"defects.predictions",highRiskFiles:"defects.highRiskFiles"}},{id:"generate-targeted-tests",name:"Generate Targeted Tests",domain:"test-generation",action:"generateTests",dependsOn:["predict-defects"],condition:{path:"results.defects.highRiskFiles",operator:"exists",value:!0},inputMapping:{sourceFiles:"results.defects.highRiskFiles",priority:"input.priority"}}],triggers:[{eventType:"code-intelligence.ImpactAnalysisCompleted",inputMapping:{changedFiles:"event.changedFiles"}}]}}function Lme(){return{id:"pre-release",name:"Pre-Release Workflow",description:"security-audit -> quality-gate -> deployment-advisor",version:"1.0.0",tags:["release","security","deployment"],steps:[{id:"security-audit",name:"Security Audit",domain:"security-compliance",action:"runAudit",inputMapping:{targetFiles:"input.targetFiles",includeDependencies:"input.includeDependencies"},outputMapping:{vulnerabilities:"security.vulnerabilities",riskScore:"security.riskScore",passed:"security.passed"},timeout:18e4},{id:"quality-gate",name:"Quality Gate Evaluation",domain:"quality-assessment",action:"evaluateGate",dependsOn:["security-audit"],inputMapping:{securityResults:"results.security",releaseCandidate:"input.releaseCandidate"},outputMapping:{passed:"quality.gatePassed",checks:"quality.checks"}},{id:"deployment-advice",name:"Get Deployment Advice",domain:"quality-assessment",action:"getDeploymentAdvice",dependsOn:["quality-gate"],inputMapping:{releaseCandidate:"input.releaseCandidate",qualityResults:"results.quality",securityResults:"results.security"},outputMapping:{decision:"deployment.decision",recommendations:"deployment.recommendations",riskScore:"deployment.riskScore"}}],triggers:[{eventType:"quality-assessment.QualityGateEvaluated",condition:{path:"event.passed",operator:"eq",value:!0}}]}}function Fme(){return{id:"continuous-learning",name:"Continuous Learning Workflow",description:"Collect patterns -> consolidate -> transfer -> optimize",version:"1.0.0",tags:["learning","optimization","ai"],steps:[{id:"collect-patterns",name:"Collect Patterns",domain:"learning-optimization",action:"runLearningCycle",inputMapping:{domain:"input.targetDomain"},outputMapping:{patternsLearned:"learning.patterns",experiencesProcessed:"learning.experiences"}},{id:"consolidate-patterns",name:"Consolidate Patterns",domain:"learning-optimization",action:"shareCrossDomainLearnings",dependsOn:["collect-patterns"],condition:{path:"results.learning.patterns",operator:"gt",value:0},outputMapping:{knowledgeShared:"consolidation.shared",domainsUpdated:"consolidation.domains"}},{id:"transfer-knowledge",name:"Transfer Knowledge",domain:"learning-optimization",action:"shareCrossDomainLearnings",dependsOn:["consolidate-patterns"],outputMapping:{transferSuccessRate:"transfer.successRate",newPatternsCreated:"transfer.newPatterns"}},{id:"optimize-strategies",name:"Optimize Strategies",domain:"learning-optimization",action:"optimizeAllStrategies",dependsOn:["transfer-knowledge"],outputMapping:{domainsOptimized:"optimization.domains",avgImprovement:"optimization.improvement"}}]}}function Nme(){return{id:"morning-sync",name:"Morning Sync Protocol",description:"Daily quality synchronization across all domains",version:"1.0.0",tags:["protocol","daily","sync"],steps:[{id:"collect-metrics",name:"Collect Quality Metrics",domain:"quality-assessment",action:"analyzeQuality",inputMapping:{sourceFiles:"input.sourceFiles"},outputMapping:{score:"metrics.qualityScore"}},{id:"analyze-trends",name:"Analyze Coverage Trends",domain:"coverage-analysis",action:"getTrend",inputMapping:{timeRange:"input.timeRange",granularity:"input.granularity"},outputMapping:{trend:"trends.coverage",forecast:"trends.forecast"}},{id:"check-security",name:"Check Security Posture",domain:"security-compliance",action:"getSecurityPosture",outputMapping:{overallScore:"security.score",criticalIssues:"security.critical",recommendations:"security.recommendations"}},{id:"get-defect-predictions",name:"Get Defect Predictions",domain:"defect-intelligence",action:"predictDefects",inputMapping:{files:"input.changedFiles"},outputMapping:{predictions:"defects.predictions"}},{id:"generate-learning-report",name:"Generate Learning Dashboard",domain:"learning-optimization",action:"getLearningDashboard",dependsOn:["collect-metrics","analyze-trends","check-security","get-defect-predictions"],outputMapping:{learningRate:"learning.rate",topDomains:"learning.topDomains"}}]}}function Ome(){return{id:"qcsd-ideation-swarm",name:"QCSD Ideation Swarm",description:"Quality Conscious Software Delivery ideation phase: [url-extraction] -> [flag-detection] -> quality-criteria (HTSM) -> [testability, risk, requirements, security*, accessibility*, qx*] in parallel -> aggregated report. Supports live website URLs with conditional agent spawning based on HAS_UI, HAS_SECURITY, HAS_UX flags.",version:"3.0.0",tags:["qcsd","ideation","quality-criteria","htsm","shift-left","url-analysis"],steps:[{id:"website-content-extraction",name:"Website Content Extraction",domain:"requirements-validation",action:"extractWebsiteContent",inputMapping:{url:"input.url"},outputMapping:{extractedDescription:"extraction.description",extractedFeatures:"extraction.features",extractedAcceptanceCriteria:"extraction.acceptanceCriteria",detectedFlags:"extraction.flags",isWebsite:"extraction.isWebsite"},timeout:6e4,continueOnFailure:!0},{id:"quality-criteria-analysis",name:"HTSM Quality Criteria Analysis",domain:"requirements-validation",action:"analyzeQualityCriteria",dependsOn:["website-content-extraction"],inputMapping:{targetId:"input.targetId",targetType:"input.targetType",description:"results.website-content-extraction.extractedDescription || input.description",acceptanceCriteria:"results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria"},outputMapping:{qualityCriteria:"qualityCriteria.criteria",qualityScore:"qualityCriteria.score"},timeout:18e4,retry:{maxAttempts:2,backoffMs:2e3}},{id:"testability-assessment",name:"Testability Scoring (10 Principles)",domain:"requirements-validation",action:"assessTestability",dependsOn:["quality-criteria-analysis"],inputMapping:{targetId:"input.targetId",description:"results.website-content-extraction.extractedDescription || input.description",acceptanceCriteria:"results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria"},outputMapping:{overallScore:"testability.overallScore",principles:"testability.principles",blockers:"testability.blockers",recommendations:"testability.recommendations"},timeout:12e4,continueOnFailure:!0},{id:"risk-assessment",name:"Quality Risk Assessment",domain:"requirements-validation",action:"assessRisks",dependsOn:["quality-criteria-analysis"],inputMapping:{targetId:"input.targetId",targetType:"input.targetType",description:"results.website-content-extraction.extractedDescription || input.description"},outputMapping:{overallRisk:"risks.overallRisk",riskScore:"risks.riskScore",factors:"risks.factors",mitigations:"risks.mitigations"},timeout:9e4,continueOnFailure:!0},{id:"requirements-validation",name:"Requirements & Acceptance Criteria Validation",domain:"requirements-validation",action:"validateRequirements",dependsOn:["quality-criteria-analysis"],inputMapping:{targetId:"input.targetId",description:"results.website-content-extraction.extractedDescription || input.description",acceptanceCriteria:"results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria"},outputMapping:{valid:"requirements.valid",issues:"requirements.issues",suggestions:"requirements.suggestions"},timeout:9e4,continueOnFailure:!0},{id:"security-threat-modeling",name:"Early Security Threat Modeling (STRIDE)",domain:"security-compliance",action:"modelSecurityThreats",dependsOn:["quality-criteria-analysis"],condition:{path:"results.website-content-extraction.detectedFlags.hasSecurity || input.securityCritical",operator:"eq",value:!0},inputMapping:{targetId:"input.targetId",description:"results.website-content-extraction.extractedDescription || input.description",securityCritical:"results.website-content-extraction.detectedFlags.hasSecurity || input.securityCritical"},outputMapping:{threats:"security.threats",overallRisk:"security.overallRisk",recommendations:"security.recommendations"},timeout:12e4,continueOnFailure:!0},{id:"accessibility-audit",name:"Accessibility Audit (WCAG 2.2)",domain:"visual-accessibility",action:"auditAccessibility",dependsOn:["quality-criteria-analysis"],condition:{path:"results.website-content-extraction.detectedFlags.hasUI || input.hasUI",operator:"eq",value:!0},inputMapping:{targetId:"input.targetId",url:"input.url",description:"results.website-content-extraction.extractedDescription || input.description",features:"results.website-content-extraction.extractedFeatures"},outputMapping:{wcagLevel:"accessibility.wcagLevel",violations:"accessibility.violations",recommendations:"accessibility.recommendations"},timeout:18e4,continueOnFailure:!0},{id:"quality-experience-analysis",name:"Quality Experience Analysis (QX Partner)",domain:"coordination",action:"analyzeQualityExperience",dependsOn:["quality-criteria-analysis"],condition:{path:"results.website-content-extraction.detectedFlags.hasUX || input.hasUX",operator:"eq",value:!0},inputMapping:{targetId:"input.targetId",url:"input.url",description:"results.website-content-extraction.extractedDescription || input.description",features:"results.website-content-extraction.extractedFeatures"},outputMapping:{journeys:"qx.journeys",frictionPoints:"qx.frictionPoints",recommendations:"qx.recommendations"},timeout:15e4,continueOnFailure:!0},{id:"aggregate-ideation-report",name:"Generate Ideation Report",domain:"requirements-validation",action:"generateIdeationReport",dependsOn:["quality-criteria-analysis","testability-assessment","risk-assessment","requirements-validation","security-threat-modeling","accessibility-audit","quality-experience-analysis"],inputMapping:{targetId:"input.targetId",targetType:"input.targetType"},outputMapping:{report:"ideation.report",readyForDevelopment:"ideation.readyForDevelopment",blockers:"ideation.blockers",recommendations:"ideation.recommendations",testStrategy:"ideation.testStrategy"},timeout:6e4},{id:"store-ideation-learnings",name:"Store Ideation Learnings",domain:"learning-optimization",action:"storeIdeationLearnings",dependsOn:["aggregate-ideation-report"],inputMapping:{targetId:"input.targetId",report:"results.ideation.report"},outputMapping:{stored:"learning.stored",patternId:"learning.patternId"},continueOnFailure:!0}],triggers:[{eventType:"requirements-validation.EpicCreated",inputMapping:{targetId:"event.epicId",targetType:"event.type",description:"event.description",acceptanceCriteria:"event.acceptanceCriteria"}},{eventType:"requirements-validation.SprintPlanningStarted",inputMapping:{targetId:"event.sprintId",targetType:"event.type",description:"event.description",acceptanceCriteria:"event.acceptanceCriteria"}}]}}var r3,n3=y(()=>{"use strict";r3=["comprehensive-testing","defect-prevention","pre-release","continuous-learning","morning-sync","qcsd-ideation-swarm"]});function i3(o,e,t,r){return new Cm(o,e,t,r)}var Cm,RD=y(()=>{"use strict";N();L();qt();k();ED();ED();e3();n3();Cm=class{constructor(e,t,r,n={}){this.eventBus=e;this.memory=t;this.agentCoordinator=r;this.config={...wD,...n}}eventBus;memory;agentCoordinator;config;workflows=new Map;executions=new Map;actionRegistry={};eventSubscriptions=[];approvalGates=new Map;initialized=!1;async initialize(){this.initialized||(this.registerBuiltInWorkflows(),this.config.enableEventTriggers&&this.setupEventTriggers(),await this.loadPersistedWorkflows(),this.initialized=!0)}async dispose(){for(let e of this.executions.values())e.status==="running"&&await this.cancelWorkflow(e.executionId);for(let e of this.eventSubscriptions)e.unsubscribe();await this.persistWorkflows(),this.initialized=!1}registerWorkflow(e){try{let t=this.validateWorkflowDefinition(e);return t.success?(this.workflows.set(e.id,e),this.config.enableEventTriggers&&e.triggers&&this.registerWorkflowTriggers(e),T(void 0)):t}catch(t){return f(w(t))}}unregisterWorkflow(e){if(!this.workflows.has(e))return f(new Error(`Workflow not found: ${e}`));let t=Array.from(this.executions.values()).filter(r=>r.workflowId===e&&r.status==="running");return t.length>0?f(new Error(`Cannot unregister workflow with ${t.length} active execution(s)`)):(this.workflows.delete(e),T(void 0))}async executeWorkflow(e,t={},r){let n=this.workflows.get(e);if(!n)return f(new Error(`Workflow not found: ${e}`));if(Array.from(this.executions.values()).filter(u=>u.status==="running").length>=this.config.maxConcurrentWorkflows)return f(new Error(`Maximum concurrent workflows (${this.config.maxConcurrentWorkflows}) reached`));let s=E(),a=new Date,c={input:t,results:{},metadata:{executionId:s,workflowId:e,correlationId:r||s,startedAt:a}},l={executionId:s,workflowId:e,workflowName:n.name,status:"running",startedAt:a,progress:0,currentSteps:[],completedSteps:[],failedSteps:[],skippedSteps:[],context:c,stepResults:new Map};return this.executions.set(s,l),await this.publishWorkflowStarted(l,n),this.runWorkflow(n,l).catch(async u=>{l.status="failed",l.error=String(u),l.completedAt=new Date,l.duration=l.completedAt.getTime()-a.getTime(),await this.publishWorkflowFailed(l,"unknown",String(u))}),T(s)}getWorkflowStatus(e){return this.executions.get(e)}async cancelWorkflow(e){let t=this.executions.get(e);if(!t)return f(new Error(`Execution not found: ${e}`));if(t.status!=="running"&&t.status!=="paused")return f(new Error(`Cannot cancel workflow in status: ${t.status}`));t.status="cancelled",t.completedAt=new Date,t.duration=t.completedAt.getTime()-t.startedAt.getTime();for(let[r,n]of this.approvalGates.entries())r.startsWith(`${e}:`)&&(n.resolve({approved:!1,reason:"Workflow cancelled"}),this.approvalGates.delete(r));return await this.publishEvent(Lr.WorkflowCancelled,{executionId:e,workflowId:t.workflowId,workflowName:t.workflowName},t.context.metadata.correlationId),T(void 0)}async pauseWorkflow(e){let t=this.executions.get(e);return t?t.status!=="running"?f(new Error(`Cannot pause workflow in status: ${t.status}`)):(t.status="paused",T(void 0)):f(new Error(`Execution not found: ${e}`))}async resumeWorkflow(e){let t=this.executions.get(e);if(!t)return f(new Error(`Execution not found: ${e}`));if(t.status!=="paused")return f(new Error(`Cannot resume workflow in status: ${t.status}`));let r=this.workflows.get(t.workflowId);return r?(t.status="running",this.runWorkflow(r,t).catch(async n=>{t.status="failed",t.error=String(n)}),T(void 0)):f(new Error(`Workflow definition not found: ${t.workflowId}`))}listWorkflows(){return Array.from(this.workflows.values()).map(e=>({id:e.id,name:e.name,description:e.description,version:e.version,stepCount:e.steps.length,tags:e.tags,triggers:e.triggers?.map(t=>t.eventType)}))}getActiveExecutions(){return Array.from(this.executions.values()).filter(e=>e.status==="running"||e.status==="paused")}getWorkflow(e){return this.workflows.get(e)}approveStep(e,t){let r=`${e}:${t}`,n=this.approvalGates.get(r);return n?(n.resolve({approved:!0}),this.approvalGates.delete(r),!0):!1}rejectStep(e,t,r){let n=`${e}:${t}`,i=this.approvalGates.get(n);return i?(i.resolve({approved:!1,reason:r}),this.approvalGates.delete(n),!0):!1}isActionRegistered(e,t){return!!this.actionRegistry[e]?.[t]}getRegisteredActions(e){return Object.keys(this.actionRegistry[e]||{})}getDomainsWithActions(){return Object.keys(this.actionRegistry)}async spawnWorkflowAgent(e,t,r){return this.agentCoordinator.canSpawn()?this.agentCoordinator.spawn({name:`workflow-agent-${e.slice(0,8)}-${t}`,domain:r,type:"coordinator",capabilities:["workflow-execution",t],config:{workflowId:e,stepId:t}}):f(new Error("Agent limit reached"))}async stopWorkflowAgent(e){return this.agentCoordinator.stop(e)}getAvailableAgentCapacity(){return this.agentCoordinator.canSpawn()?this.config.maxConcurrentWorkflows-this.getActiveExecutions().length:0}registerAction(e,t,r){let n=["__proto__","constructor","prototype"];if(n.includes(e)||n.includes(t))throw new Error("Invalid domain or action name: contains dangerous prototype key");this.actionRegistry[e]||(this.actionRegistry[e]={}),this.actionRegistry[e][t]=r}async executeFromBehaviorTree(e){let t=new Date;try{let r=await e.tick(),n=new Date,i=n.getTime()-t.getTime();return{status:r==="SUCCESS"?"completed":r==="RUNNING"?"running":"failed",startedAt:t,completedAt:n,duration:i,treeStatus:r,treeName:e.name}}catch(r){let n=new Date,i=n.getTime()-t.getTime();return{status:"failed",startedAt:t,completedAt:n,duration:i,treeStatus:"FAILURE",treeName:e.name,error:S(r)}}}async runWorkflow(e,t){let r=e.timeout||this.config.defaultWorkflowTimeout,n=new Promise((i,s)=>{setTimeout(()=>s(new Error(`Workflow timeout after ${r}ms`)),r)});try{await Promise.race([this.executeSteps(e,t),n]),t.status==="running"&&(t.status="completed",t.completedAt=new Date,t.duration=t.completedAt.getTime()-t.startedAt.getTime(),t.progress=100,await this.publishWorkflowCompleted(t))}catch(i){if(t.status==="running"){t.status="failed",t.error=String(i),t.completedAt=new Date,t.duration=t.completedAt.getTime()-t.startedAt.getTime();let s=t.currentSteps[0]||"unknown";await this.publishWorkflowFailed(t,s,String(i))}}this.config.persistExecutions&&await this.persistExecution(t)}async executeSteps(e,t){let r=e.steps,n=new Set(t.completedSteps),i=new Set(t.skippedSteps),s=new Set(t.failedSteps),a=r.filter(c=>!n.has(c.id)&&!i.has(c.id)&&!s.has(c.id));for(;a.length>0&&t.status==="running";){let c=a.filter(m=>(m.dependsOn||[]).every(h=>n.has(h)||i.has(h)));if(c.length===0)break;let l=c.filter(m=>!m.dependsOn?.length),u=c.filter(m=>m.dependsOn?.length);if(l.length>0){t.currentSteps=l.map(g=>g.id);let m=await Promise.allSettled(l.map(g=>this.executeStep(g,t,e)));for(let g=0;g<l.length;g++){let h=l[g],v=m[g];if(v.status==="fulfilled"){let C=v.value;if(C.status==="completed")n.add(h.id),t.completedSteps.push(h.id);else if(C.status==="skipped")i.add(h.id),t.skippedSteps.push(h.id);else if(C.status==="failed"&&(s.add(h.id),t.failedSteps.push(h.id),!h.continueOnFailure)){t.status="failed",t.error=C.error;return}}else if(s.add(h.id),t.failedSteps.push(h.id),!h.continueOnFailure){t.status="failed",t.error=v.reason?.message||"Unknown error";return}let b=a.indexOf(h);b!==-1&&a.splice(b,1)}}for(let m of u){if(t.status!=="running")break;t.currentSteps=[m.id];let g=await this.executeStep(m,t,e);if(g.status==="completed")n.add(m.id),t.completedSteps.push(m.id);else if(g.status==="skipped")i.add(m.id),t.skippedSteps.push(m.id);else if(g.status==="failed"&&(s.add(m.id),t.failedSteps.push(m.id),!m.continueOnFailure)){t.status="failed",t.error=g.error;return}let h=a.indexOf(m);h!==-1&&a.splice(h,1)}let d=r.length,p=n.size+i.size+s.size;t.progress=Math.round(p/d*100)}t.currentSteps=[]}async executeStep(e,t,r){let n=new Date,i={stepId:e.id,status:"pending",startedAt:n};try{if(e.skipCondition&&this.evaluateCondition(e.skipCondition,t.context))return i.status="skipped",i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepSkipped(t,e),i;if(e.condition&&!this.evaluateCondition(e.condition,t.context))return i.status="skipped",i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepSkipped(t,e),i;i.status="running",await this.publishStepStarted(t,e);let s=this.buildStepInput(e,t.context),a,c=e.retry?.maxAttempts||1,l=e.retry?.backoffMs||1e3,u=e.retry?.backoffMultiplier||2;for(let d=1;d<=c;d++){i.retryCount=d-1;try{let p=e.timeout||this.config.defaultStepTimeout,m=await this.executeStepAction(e,s,t.context,p);if(this.mapStepOutput(e,m,t.context),e.approval){let g=await this.waitForApproval(e,t);if(!g.approved)return i.status="failed",i.error=g.reason||"Step rejected at approval gate",i.output=m,i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepFailed(t,e,i.error),i}return i.status="completed",i.output=m,i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepCompleted(t,e,i),i}catch(p){a=w(p),d<c&&(await this.delay(l),l*=u)}}return i.status="failed",i.error=a?.message||"Unknown error",i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),e.rollback&&await this.executeRollback(e.rollback,t.context),await this.publishStepFailed(t,e,i.error),i}catch(s){return i.status="failed",i.error=S(s),i.completedAt=new Date,i.duration=i.completedAt.getTime()-n.getTime(),t.stepResults.set(e.id,i),await this.publishStepFailed(t,e,i.error),i}}async executeStepAction(e,t,r,n){let i=new Promise((c,l)=>{setTimeout(()=>l(new Error(`Step timeout after ${n}ms`)),n)}),s=ZQ(e.domain,e.action);if(s){let c=await Promise.race([s.execute(t,r),i]);if(!c.success)throw c.error;return c.value}let a=this.actionRegistry[e.domain];if(a?.[e.action]){let c=await Promise.race([a[e.action](t,r),i]);if(!c.success)throw c.error;return c.value}throw new Error(`Action '${e.action}' not registered for domain '${e.domain}'. Register it using orchestrator.registerAction('${e.domain}', '${e.action}', handler)`)}async executeRollback(e,t){try{let r=this.actionRegistry[e.domain];if(!r?.[e.action]){console.warn(`Rollback action '${e.action}' not registered for domain '${e.domain}'. Skipping rollback.`);return}let n=await r[e.action](e.input||{},t);n.success||console.error(`Rollback failed for ${e.domain}.${e.action}:`,n.error)}catch(r){console.error(`Rollback failed for ${e.domain}.${e.action}:`,r)}}buildStepInput(e,t){let r={};if(e.inputMapping)for(let[n,i]of Object.entries(e.inputMapping)){let s=this.getValueByPath(t,i);s!==void 0&&(r[n]=s)}return r}mapStepOutput(e,t,r){if(r.results[e.id]=t,e.outputMapping&&typeof t=="object"&&t!==null)for(let[n,i]of Object.entries(e.outputMapping)){let s=this.getValueByPath(t,n);s!==void 0&&this.setValueByPath(r.results,i,s)}}getValueByPath(e,t){let r=t.split("."),n=e;for(let i of r){if(n==null)return;if(typeof n=="object")n=n[i];else return}return n}setValueByPath(e,t,r){let n=t.split("."),i=new Set(["__proto__","constructor","prototype"]);for(let c of n)if(i.has(c))throw new Error("Invalid path: contains dangerous prototype key");let s=e;for(let c=0;c<n.length-1;c++){let l=n[c];Object.hasOwn(s,l)||Object.defineProperty(s,l,{value:Object.create(null),writable:!0,enumerable:!0,configurable:!0}),s=s[l]}let a=n[n.length-1];Object.defineProperty(s,a,{value:r,writable:!0,enumerable:!0,configurable:!0})}evaluateCondition(e,t){let r=this.getValueByPath(t,e.path);switch(e.operator){case"eq":return r===e.value;case"neq":return r!==e.value;case"gt":return typeof r=="number"&&r>e.value;case"gte":return typeof r=="number"&&r>=e.value;case"lt":return typeof r=="number"&&r<e.value;case"lte":return typeof r=="number"&&r<=e.value;case"contains":return Array.isArray(r)?r.includes(e.value):typeof r=="string"?r.includes(String(e.value)):!1;case"exists":return r!=null;default:return!1}}async publishEvent(e,t,r){let n=K(e,"learning-optimization",t,r);await this.eventBus.publish(n)}async publishWorkflowStarted(e,t){await this.publishEvent(Lr.WorkflowStarted,{executionId:e.executionId,workflowId:e.workflowId,workflowName:e.workflowName,stepCount:t.steps.length},e.context.metadata.correlationId)}async publishWorkflowCompleted(e){await this.publishEvent(Lr.WorkflowCompleted,{executionId:e.executionId,workflowId:e.workflowId,workflowName:e.workflowName,duration:e.duration||0,completedSteps:e.completedSteps.length,skippedSteps:e.skippedSteps.length},e.context.metadata.correlationId)}async publishWorkflowFailed(e,t,r){await this.publishEvent(Lr.WorkflowFailed,{executionId:e.executionId,workflowId:e.workflowId,workflowName:e.workflowName,failedStep:t,error:r},e.context.metadata.correlationId)}async publishStepStarted(e,t){await this.publishEvent(Lr.StepStarted,{executionId:e.executionId,workflowId:e.workflowId,stepId:t.id,stepName:t.name,domain:t.domain},e.context.metadata.correlationId)}async publishStepCompleted(e,t,r){await this.publishEvent(Lr.StepCompleted,{executionId:e.executionId,workflowId:e.workflowId,stepId:t.id,stepName:t.name,domain:t.domain,duration:r.duration},e.context.metadata.correlationId)}async publishStepFailed(e,t,r){await this.publishEvent(Lr.StepFailed,{executionId:e.executionId,workflowId:e.workflowId,stepId:t.id,stepName:t.name,domain:t.domain,error:r},e.context.metadata.correlationId)}async publishStepSkipped(e,t){await this.publishEvent(Lr.StepSkipped,{executionId:e.executionId,workflowId:e.workflowId,stepId:t.id,stepName:t.name,domain:t.domain},e.context.metadata.correlationId)}validateWorkflowDefinition(e){if(!e.id)return f(new Error("Workflow ID is required"));if(!e.name)return f(new Error("Workflow name is required"));if(!e.steps||e.steps.length===0)return f(new Error("Workflow must have at least one step"));let t=new Set;for(let n of e.steps){if(!n.id)return f(new Error("Step ID is required"));if(t.has(n.id))return f(new Error(`Duplicate step ID: ${n.id}`));if(t.add(n.id),!n.domain)return f(new Error(`Step ${n.id} must have a domain`));if(!Z.includes(n.domain))return f(new Error(`Invalid domain for step ${n.id}: ${n.domain}`));if(!n.action)return f(new Error(`Step ${n.id} must have an action`));if(n.dependsOn){for(let i of n.dependsOn)if(!e.steps.some(s=>s.id===i))return f(new Error(`Step ${n.id} depends on unknown step: ${i}`))}}let r=this.detectCircularDependencies(e.steps);return r?f(new Error(`Circular dependency detected: ${r}`)):T(void 0)}detectCircularDependencies(e){let t=new Set,r=new Set,n=(i,s)=>{if(r.has(i))return[...s,i].join(" -> ");if(t.has(i))return null;t.add(i),r.add(i);let a=e.find(c=>c.id===i);if(a?.dependsOn)for(let c of a.dependsOn){let l=n(c,[...s,i]);if(l)return l}return r.delete(i),null};for(let i of e){let s=n(i.id,[]);if(s)return s}return null}setupEventTriggers(){let e=this.eventBus.subscribe("*",async t=>{await this.handleEventForTriggers(t)});this.eventSubscriptions.push(e)}registerWorkflowTriggers(e){}async handleEventForTriggers(e){for(let t of this.workflows.values())if(t.triggers)for(let r of t.triggers){if(r.eventType!==e.type||r.sourceDomain&&r.sourceDomain!==e.source)continue;if(r.condition){let i={input:{event:e.payload},results:{},metadata:{executionId:"",workflowId:t.id,startedAt:new Date}};if(!this.evaluateCondition(r.condition,i))continue}let n={};if(r.inputMapping)for(let[i,s]of Object.entries(r.inputMapping)){let a=this.getValueByPath({event:e.payload},s);a!==void 0&&(n[i]=a)}else n.triggerEvent=e.payload;await this.executeWorkflow(t.id,n,e.correlationId)}}registerBuiltInWorkflows(){let e=t3();for(let t of e)this.registerWorkflow(t)}async loadPersistedWorkflows(){try{let e=await this.memory.search("workflow:definition:*",100);for(let t of e){let r=await this.memory.get(t);r&&!this.workflows.has(r.id)&&this.workflows.set(r.id,r)}}catch(e){console.error("Failed to load persisted workflows:",e)}}async persistWorkflows(){try{for(let e of this.workflows.values())r3.includes(e.id)||await this.memory.set(`workflow:definition:${e.id}`,e,{namespace:"coordination",persist:!0})}catch(e){console.error("Failed to persist workflows:",e)}}async persistExecution(e){try{let t={...e,stepResults:Object.fromEntries(e.stepResults)};await this.memory.set(`workflow:execution:${e.executionId}`,t,{namespace:"coordination",ttl:86400*7})}catch(t){console.error("Failed to persist execution:",t)}}async waitForApproval(e,t){let r=typeof e.approval=="object"?e.approval:{},n=r.autoApproveAfter??3e5,i=r.message??`Awaiting approval for step: ${e.name}`,s=t.stepResults.get(e.id);s&&(s.status="awaiting_approval"),await this.publishEvent(Lr.StepAwaitingApproval,{executionId:t.executionId,workflowId:t.workflowId,stepId:e.id,stepName:e.name,domain:e.domain,message:i,autoApproveAfter:n>0?n:void 0},t.context.metadata.correlationId);let a=`${t.executionId}:${e.id}`;return new Promise(c=>{let l={resolve:c};if(this.approvalGates.set(a,l),n>0){let u=setTimeout(()=>{this.approvalGates.has(a)&&(this.approvalGates.delete(a),c({approved:!0}))},n),d=l.resolve;l.resolve=p=>{clearTimeout(u),d(p)}}})}delay(e){return new Promise(t=>setTimeout(t,e))}}});function s3(o,e,t,r){return new AD(o,e,t,r)}var AD,a3=y(()=>{"use strict";L();tA();RD();AD=class extends Ce{constructor(t,r,n,i={}){super(t,r);this.agentCoordinator=n;this.pluginConfig=i}agentCoordinator;workflowOrchestrator=null;pluginConfig;get name(){return"coordination"}get version(){return"1.0.0"}get dependencies(){return Z.filter(t=>t!=="coordination")}getAPI(){return{listWorkflows:async()=>{if(!this.workflowOrchestrator)throw new Error("Workflow orchestrator not initialized");return this.workflowOrchestrator.listWorkflows()}}}async onInitialize(){this.workflowOrchestrator=i3(this.eventBus,this.memory,this.agentCoordinator,this.pluginConfig.workflowConfig),await this.workflowOrchestrator.initialize(),this.updateHealth({status:"healthy",agents:{total:0,active:0,idle:0,failed:0}})}async onDispose(){this.workflowOrchestrator&&(await this.workflowOrchestrator.dispose(),this.workflowOrchestrator=null)}async onEvent(t){t.type.startsWith("coordination.")&&await this.handleCoordinationEvent(t)}subscribeToEvents(){this.eventBus.subscribe("coordination.workflow.execute",async t=>{await this.handleEvent(t)})}async handleCoordinationEvent(t){t.type.split(".")[1]==="workflow"&&await this.handleWorkflowEvent(t)}async handleWorkflowEvent(t){this.workflowOrchestrator}}});var tt,xD,rt,Ra=y(()=>{"use strict";tt={CoverageAnalyzerService:"coverage-analysis.CoverageAnalyzerService",SecurityScannerService:"security-compliance.SecurityScannerService",isSemgrepAvailable:"security-compliance.isSemgrepAvailable",runSemgrepWithRules:"security-compliance.runSemgrepWithRules",convertSemgrepFindings:"security-compliance.convertSemgrepFindings",createTestGeneratorService:"test-generation.createTestGeneratorService",KnowledgeGraphService:"code-intelligence.KnowledgeGraphService",QualityAnalyzerService:"quality-assessment.QualityAnalyzerService"},xD=class{factories=new Map;register(e,t){this.factories.set(e,t)}resolve(e){let t=this.factories.get(e);if(!t)throw new Error(`DomainServiceRegistry: service '${e}' not registered. Ensure the domain module is initialized before coordination.`);return t}has(e){return this.factories.has(e)}clear(){this.factories.clear()}keys(){return Array.from(this.factories.keys())}},rt=new xD});var o3=y(()=>{"use strict";mk();dk();Ao();py();uk();Ra();Ao();rt.register(tt.createTestGeneratorService,o=>Ln(o))});var c3=y(()=>{"use strict";Ud();Mv();Zk();Ys();Gd();tP();nP();sP();Ra();Ud();rt.register(tt.CoverageAnalyzerService,o=>new nn(o))});var l3=y(()=>{"use strict";hM();mM();jp();gC();hC();Ra();jp();KI();rt.register(tt.SecurityScannerService,o=>new Mr(o));rt.register(tt.isSemgrepAvailable,Vp);rt.register(tt.runSemgrepWithRules,jb);rt.register(tt.convertSemgrepFindings,Qb)});var u3=y(()=>{"use strict";qI();OI();oa();dp();Xo();Ra();oa();rt.register(tt.KnowledgeGraphService,o=>new er(o))});var oT=y(()=>{"use strict";Wo()});var kD=y(()=>{"use strict";Wo();tp();rp();oT();tp();rp();oT()});var p3=y(()=>{"use strict";L();Qd();kD();tp();rp();k();oT()});var m3=y(()=>{"use strict";xP();RP();Qd();Kd();Uv();p3();kD();Ra();Kd();rt.register(tt.QualityAnalyzerService,o=>new Qn(o))});var Aa,Ume,cT,lT,g3=y(()=>{"use strict";N();q();L();qt();zt();Vt();k();Aa={SoapOperationTested:"enterprise-integration.SoapOperationTested",MessageFlowTested:"enterprise-integration.MessageFlowTested",BapiTested:"enterprise-integration.BapiTested",IDocValidated:"enterprise-integration.IDocValidated",ODataTested:"enterprise-integration.ODataTested",SodAnalyzed:"enterprise-integration.SodAnalyzed",MiddlewareFlowTested:"enterprise-integration.MiddlewareFlowTested",IntegrationValidationFailed:"enterprise-integration.IntegrationValidationFailed"},Ume={maxConcurrentWorkflows:8,defaultTimeout:12e4,publishEvents:!0,enableMinCutAwareness:!0,topologyHealthThreshold:.5,pauseOnCriticalTopology:!1,enableConsensus:!0,consensusThreshold:.7,consensusStrategy:"weighted",consensusMinModels:2},cT=M.create("enterprise-integration"),lT=class extends ke{constructor(t,r,n,i={}){let s={...Ume,...i};super(t,"enterprise-integration",s,{verifyFindingTypes:["soap-fault","message-ordering-violation","rfc-compatibility-break","idoc-validation-failure","odata-contract-break","sod-conflict"],modelTimeout:12e4});this.memory=r;this.agentCoordinator=n}memory;agentCoordinator;async onInitialize(){this.subscribeToEvents(),cT.info("Enterprise Integration Coordinator initialized")}async onDispose(){}subscribeToEvents(){this.eventBus.subscribe("contract-testing.ContractVerified",this.handleContractVerified.bind(this)),this.eventBus.subscribe("chaos-resilience.FaultInjected",this.handleFaultInjected.bind(this))}getActiveWorkflows(){return super.getActiveWorkflows()}async validateWsdl(t){let r=E();try{if(this.startWorkflow(r,"soap"),this.minCutMixin.shouldPauseOperations())return f(new Error("WSDL validation paused: topology is in critical state"));let n=await this.spawnAgent(r,"qe-soap-tester",{task:"validate-wsdl",url:t});if(!n.success)return this.failWorkflow(r,n.error.message),n;let i={url:t,version:"1.1",services:[],schemas:[]};return await this.memory.set(`enterprise-integration:wsdl:${encodeURIComponent(t)}`,i,{namespace:"enterprise-integration",persist:!0}),this.completeWorkflow(r),T(i)}catch(n){return this.failWorkflow(r,String(n)),f(w(n))}}async testSoapOperation(t,r,n){let i=E();try{this.startWorkflow(i,"soap");let s=await this.spawnAgent(i,"qe-soap-tester",{task:"test-operation",wsdl:t,operation:r,input:n});if(!s.success)return this.failWorkflow(i,s.error.message),f(s.error);let a={operation:r,passed:!0,request:JSON.stringify(n),response:"",validationErrors:[],duration:0};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.SoapOperationTested,this.domainName,{operation:r,wsdlUrl:t.url,passed:a.passed,errors:a.validationErrors.length})),this.completeWorkflow(i),T(a)}catch(s){return this.failWorkflow(i,String(s)),f(w(s))}}async testMessageFlow(t,r){let n=E();try{this.startWorkflow(n,"messaging");let i=await this.spawnAgent(n,"qe-message-broker-tester",{task:"test-message-flow",brokerConfig:t,testCase:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={testCaseId:r.id,passed:!0,sentAt:new Date,receivedAt:new Date,latency:0,actualOutcome:r.expectedOutcome,errors:[]};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.MessageFlowTested,this.domainName,{protocol:t.protocol,queue:r.queue,passed:s.passed,latency:s.latency})),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async testDlqHandling(t,r){let n=E();try{this.startWorkflow(n,"messaging");let i=await this.spawnAgent(n,"qe-message-broker-tester",{task:"test-dlq",brokerConfig:t,queue:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={queue:r,messageCount:0,poisonMessages:0,reprocessable:0,errors:[]};return this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async testBapiCall(t,r){let n=E();try{if(this.startWorkflow(n,"rfc"),this.minCutMixin.shouldPauseOperations())return f(new Error("BAPI testing paused: topology is in critical state"));let i=await this.spawnAgent(n,"qe-sap-rfc-tester",{task:"test-bapi",connection:t,bapi:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={bapiName:r.name,passed:!0,returnMessages:[],exportValues:{},tableData:{},duration:0,transactionCommitted:!1};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.BapiTested,this.domainName,{bapiName:r.name,passed:s.passed,returnType:s.returnMessages.length>0?s.returnMessages[0].type:"S"})),await this.memory.set(`enterprise-integration:bapi:${r.name}:${Date.now()}`,{bapiName:r.name,importParams:Object.keys(r.importParams),passed:s.passed,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",persist:!0}),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async validateIdoc(t,r){let n=E();try{this.startWorkflow(n,"idoc");let i=await this.spawnAgent(n,"qe-sap-idoc-tester",{task:"validate-idoc",definition:t,content:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={idocType:t.type,direction:"inbound",passed:!0,statusCode:3,statusMessage:"IDoc validated successfully",segmentValidation:[],processingTime:0};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.IDocValidated,this.domainName,{idocType:t.type,direction:s.direction,passed:s.passed,statusCode:s.statusCode})),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async validateODataMetadata(t){let r=E();try{this.startWorkflow(r,"odata");let n=await this.spawnAgent(r,"qe-odata-contract-tester",{task:"validate-metadata",serviceUrl:t});if(!n.success)return this.failWorkflow(r,n.error.message),f(n.error);let i={version:"v4",serviceUrl:t,entitySets:[],functionImports:[],actions:[]};return await this.memory.set(`enterprise-integration:odata:${encodeURIComponent(t)}`,i,{namespace:"enterprise-integration",persist:!0}),this.completeWorkflow(r),T(i)}catch(n){return this.failWorkflow(r,String(n)),f(w(n))}}async testODataEntitySet(t,r){let n=E();try{this.startWorkflow(n,"odata");let i=await this.spawnAgent(n,"qe-odata-contract-tester",{task:"test-entity-set",metadata:t,entitySet:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={entitySet:r,operation:"CRUD",passed:!0,statusCode:200,validationErrors:[],duration:0};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.ODataTested,this.domainName,{entitySet:r,operation:s.operation,passed:s.passed,version:t.version})),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async validateMessageFlow(t,r){let n=E();try{this.startWorkflow(n,"middleware");let i=await this.spawnAgent(n,"qe-middleware-validator",{task:"validate-flow",flow:t,input:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={flowName:t.name,passed:!0,routingCorrect:!0,transformationCorrect:!0,errorHandlingCorrect:!0,validationErrors:[],duration:0};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.MiddlewareFlowTested,this.domainName,{flowName:t.name,passed:s.passed,routingCorrect:s.routingCorrect,transformationCorrect:s.transformationCorrect})),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async validateTransformation(t,r,n){let i=E();try{this.startWorkflow(i,"middleware");let s=await this.spawnAgent(i,"qe-middleware-validator",{task:"validate-transformation",spec:t,input:r,expectedOutput:n});return s.success?(this.completeWorkflow(i),T(!0)):(this.failWorkflow(i,s.error.message),f(s.error))}catch(s){return this.failWorkflow(i,String(s)),f(w(s))}}async analyzeSod(t,r){let n=E();try{this.startWorkflow(n,"sod");let i=await this.spawnAgent(n,"qe-sod-analyzer",{task:"analyze-sod",userId:t,ruleset:r});if(!i.success)return this.failWorkflow(n,i.error.message),f(i.error);let s={userId:t,conflicts:[],riskScore:0,compliant:!0,recommendations:[]};return this.config.publishEvents&&await this.eventBus.publish(K(Aa.SodAnalyzed,this.domainName,{userId:t,conflicts:s.conflicts.length,compliant:s.compliant,riskScore:s.riskScore})),await this.memory.set(`enterprise-integration:sod:${t}:${Date.now()}`,{userId:t,ruleset:r.name,conflicts:s.conflicts.length,compliant:s.compliant,riskScore:s.riskScore,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",persist:!0}),this.completeWorkflow(n),T(s)}catch(i){return this.failWorkflow(n,String(i)),f(w(i))}}async spawnAgent(t,r,n){let i={name:`${r}-${t.slice(0,8)}`,domain:"enterprise-integration",type:r,capabilities:[r],config:{workflowId:t,...n}},s=await this.agentCoordinator.spawn(i);return s.success&&this.addAgentToWorkflow(t,s.value),s}async verifyCriticalFinding(t,r){let n=ie({id:E(),type:t.type,confidence:r,description:t.description,payload:t.payload,detectedBy:"enterprise-integration-coordinator",severity:r>.9?"critical":"high"});if(this.consensusMixin.requiresConsensus(n)){let i=await this.consensusMixin.verifyFinding(n);return i.success&&i.value.verdict==="verified"?(cT.info(`Finding verified by consensus: ${t.type}`),!0):(cT.warn(`Finding NOT verified: ${t.type}`),!1)}return!0}async handleContractVerified(t){let r=t.payload;(r?.contractType==="soap"||r?.contractType==="odata")&&await this.memory.set(`enterprise-integration:contract-event:${Date.now()}`,{contractId:r.contractId,type:r.contractType,passed:r.passed,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",ttl:86400})}async handleFaultInjected(t){let r=t.payload;(r?.targetService?.includes("middleware")||r?.targetService?.includes("esb"))&&cT.info(`Middleware fault injection detected: ${r.targetService}`)}}});function h3(o,e,t,r){return new PD(o,e,t,r)}var PD,f3=y(()=>{"use strict";L();$t();k();g3();PD=class extends Ce{constructor(t,r,n,i={}){super(t,r);this.agentCoordinator=n;this.pluginConfig=i}agentCoordinator;coordinator=null;pluginConfig;get name(){return"enterprise-integration"}get version(){return"1.0.0"}get dependencies(){return[]}getAPI(){return{validateWsdl:this.validateWsdl.bind(this),testSoapOperation:this.testSoapOperation.bind(this),testMessageFlow:this.testMessageFlow.bind(this),testDlqHandling:this.testDlqHandling.bind(this),testBapiCall:this.testBapiCall.bind(this),validateIdoc:this.validateIdoc.bind(this),validateODataMetadata:this.validateODataMetadata.bind(this),testODataEntitySet:this.testODataEntitySet.bind(this),validateMessageFlow:this.validateMessageFlow.bind(this),validateTransformation:this.validateTransformation.bind(this),analyzeSod:this.analyzeSod.bind(this),getCoordinator:()=>this.coordinator,getActiveWorkflows:()=>this.coordinator?.getActiveWorkflows()||[]}}getTaskHandlers(){return new Map([["enterprise-integration:soap-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.wsdl,n=t.operation,i=t.input;return t.url&&!r?this.coordinator.validateWsdl(t.url):!r||!n?f(new Error("Invalid soap-test payload: missing wsdl or operation")):this.coordinator.testSoapOperation(r,n,i)}],["enterprise-integration:message-broker-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.brokerConfig,n=t.testCase,i=t.queue;return r?i&&!n?this.coordinator.testDlqHandling(r,i):n?this.coordinator.testMessageFlow(r,n):f(new Error("Invalid message-broker-test payload: missing testCase")):f(new Error("Invalid message-broker-test payload: missing brokerConfig"))}],["enterprise-integration:sap-rfc-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.connection,n=t.bapi;return!r||!n?f(new Error("Invalid sap-rfc-test payload: missing connection or bapi")):this.coordinator.testBapiCall(r,n)}],["enterprise-integration:sap-idoc-validate",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.definition,n=t.content;return!r||!n?f(new Error("Invalid sap-idoc-validate payload: missing definition or content")):this.coordinator.validateIdoc(r,n)}],["enterprise-integration:odata-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.serviceUrl,n=t.metadata,i=t.entitySet;return r&&!n?this.coordinator.validateODataMetadata(r):!n||!i?f(new Error("Invalid odata-test payload: missing metadata or entitySet")):this.coordinator.testODataEntitySet(n,i)}],["enterprise-integration:esb-flow-test",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.flow,n=t.input,i=t.spec;if(i){let s=t.transformInput,a=t.expectedOutput;return!s||!a?f(new Error("Invalid esb-flow-test payload: missing transformInput or expectedOutput for transformation")):this.coordinator.validateTransformation(i,s,a)}return!r||!n?f(new Error("Invalid esb-flow-test payload: missing flow or input")):this.coordinator.validateMessageFlow(r,n)}],["enterprise-integration:sod-analyze",async t=>{if(!this.coordinator)return f(new Error("Enterprise integration coordinator not initialized"));let r=t.userId,n=t.ruleset;return!r||!n?f(new Error("Invalid sod-analyze payload: missing userId or ruleset")):this.coordinator.analyzeSod(r,n)}]])}async onInitialize(){this.coordinator=new lT(this.eventBus,this.memory,this.agentCoordinator,this.pluginConfig.coordinator),await this.coordinator.initialize(),this.updateHealth({status:"idle",agents:{total:0,active:0,idle:0,failed:0},lastActivity:new Date,errors:[]})}async onDispose(){this.coordinator&&await this.coordinator.dispose(),this.coordinator=null}subscribeToEvents(){this.eventBus.subscribe("contract-testing.ContractVerified",this.handleContractVerified.bind(this)),this.eventBus.subscribe("quality-assessment.QualityGateEvaluated",this.handleQualityGate.bind(this)),this.eventBus.subscribe("chaos-resilience.FaultInjected",this.handleFaultInjected.bind(this))}async onEvent(t){switch(this.updateHealth({lastActivity:new Date}),t.type){case"contract-testing.ContractVerified":await this.handleContractVerified(t);break;case"quality-assessment.QualityGateEvaluated":await this.handleQualityGate(t);break;case"chaos-resilience.FaultInjected":await this.handleFaultInjected(t);break;default:break}}async validateWsdl(t){this.ensureInitialized();try{let r=await this.coordinator.validateWsdl(t);return r.success?this.trackSuccessfulOperation("validateWsdl"):this.trackFailedOperation(new Error(r.error.message)),r}catch(r){return this.handleError(r)}}async testSoapOperation(t,r,n){this.ensureInitialized();try{let i=await this.coordinator.testSoapOperation(t,r,n);return i.success?this.trackSuccessfulOperation("testSoapOperation"):this.trackFailedOperation(new Error(i.error.message)),i}catch(i){return this.handleError(i)}}async testMessageFlow(t,r){this.ensureInitialized();try{let n=await this.coordinator.testMessageFlow(t,r);return n.success?this.trackSuccessfulOperation("testMessageFlow"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async testDlqHandling(t,r){this.ensureInitialized();try{let n=await this.coordinator.testDlqHandling(t,r);return n.success?this.trackSuccessfulOperation("testDlqHandling"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async testBapiCall(t,r){this.ensureInitialized();try{let n=await this.coordinator.testBapiCall(t,r);return n.success?this.trackSuccessfulOperation("testBapiCall"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async validateIdoc(t,r){this.ensureInitialized();try{let n=await this.coordinator.validateIdoc(t,r);return n.success?this.trackSuccessfulOperation("validateIdoc"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async validateODataMetadata(t){this.ensureInitialized();try{let r=await this.coordinator.validateODataMetadata(t);return r.success?this.trackSuccessfulOperation("validateODataMetadata"):this.trackFailedOperation(new Error(r.error.message)),r}catch(r){return this.handleError(r)}}async testODataEntitySet(t,r){this.ensureInitialized();try{let n=await this.coordinator.testODataEntitySet(t,r);return n.success?this.trackSuccessfulOperation("testODataEntitySet"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async validateMessageFlow(t,r){this.ensureInitialized();try{let n=await this.coordinator.validateMessageFlow(t,r);return n.success?this.trackSuccessfulOperation("validateMessageFlow"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async validateTransformation(t,r,n){this.ensureInitialized();try{let i=await this.coordinator.validateTransformation(t,r,n);return i.success?this.trackSuccessfulOperation("validateTransformation"):this.trackFailedOperation(new Error(i.error.message)),i}catch(i){return this.handleError(i)}}async analyzeSod(t,r){this.ensureInitialized();try{let n=await this.coordinator.analyzeSod(t,r);return n.success?this.trackSuccessfulOperation("analyzeSod"):this.trackFailedOperation(new Error(n.error.message)),n}catch(n){return this.handleError(n)}}async handleContractVerified(t){let r=t.payload;(r.contractType==="soap"||r.contractType==="odata")&&await this.memory.set(`enterprise-integration:contract-verified:${r.contractId}`,{contractId:r.contractId,type:r.contractType,passed:r.passed,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",ttl:86400})}async handleQualityGate(t){let r=t.payload;r.checks.find(i=>i.name==="enterprise-integration")||await this.memory.set(`enterprise-integration:quality-gate-warning:${r.gateId}`,{warning:"Enterprise integration testing not included in quality gate",timestamp:new Date().toISOString()},{namespace:"enterprise-integration",ttl:86400})}async handleFaultInjected(t){let r=t.payload;(r.targetService?.includes("middleware")||r.targetService?.includes("esb")||r.targetService?.includes("broker")||r.targetService?.includes("mq"))&&await this.memory.set(`enterprise-integration:fault-correlation:${r.faultId||Date.now()}`,{targetService:r.targetService,faultType:r.faultType,timestamp:new Date().toISOString()},{namespace:"enterprise-integration",ttl:3600})}ensureInitialized(){if(!this._initialized)throw new Error("EnterpriseIntegrationPlugin is not initialized");if(!this.coordinator)throw new Error("EnterpriseIntegrationPlugin coordinator is not available")}handleError(t){let r=w(t),n=this.getHealth();return this.updateHealth({errors:[...n.errors.slice(-9),r.message],status:n.errors.length>=5?"degraded":n.status}),{success:!1,error:r}}trackSuccessfulOperation(t){let r=this.getHealth();this.updateHealth({agents:{...r.agents,total:r.agents.total+1,idle:r.agents.idle+1},lastActivity:new Date})}trackFailedOperation(t){let r=this.getHealth();this.updateHealth({agents:{...r.agents,failed:r.agents.failed+1},errors:[...r.errors.slice(-9),t.message]})}}});var v3={};Q(v3,{AgentMemoryBranch:()=>ID});import{existsSync as Tm,mkdirSync as zme,unlinkSync as uT,readdirSync as Vme,statSync as Gme}from"fs";import{join as y3,basename as Hme}from"path";var Wme,ID,b3=y(()=>{"use strict";Wme={branchDir:".agentic-qe/branches",defaultStrategy:"child-wins",orphanMaxAgeMs:36e5},ID=class{config;parentAdapter;activeBranches=new Map;witnessChain=null;constructor(e,t){this.parentAdapter=e,this.config={...Wme,...t}}setWitnessChain(e){this.witnessChain=e}createBranch(e){if(this.activeBranches.has(e))throw new Error(`Branch already exists for agent ${e}`);Tm(this.config.branchDir)||zme(this.config.branchDir,{recursive:!0});let t=y3(this.config.branchDir,`${e}.rvf`),r=this.parentAdapter.path(),n=this.parentAdapter.derive(t),i={agentId:e,childPath:t,parentPath:r,childAdapter:n,createdAt:Date.now(),ingestLog:[]};return this.activeBranches.set(e,i),i}recordIngest(e,t){let r=this.activeBranches.get(e);if(r)for(let n of t)r.ingestLog.push({id:n.id,vector:n.vector})}async mergeBranch(e,t){let r=t??this.config.defaultStrategy,n=performance.now(),i=0;if(r==="child-wins"&&e.ingestLog.length>0)try{i=this.parentAdapter.ingest(e.ingestLog).accepted}catch(s){console.warn(`[AgentMemoryBranch] Merge replay failed for ${e.agentId}:`,s)}return this.witnessChain?.append("BRANCH_MERGE",{agentId:e.agentId,strategy:r,vectorsMerged:i,branchPath:e.childPath},`agent-${e.agentId}`),this.cleanupBranchFile(e),this.activeBranches.delete(e.agentId),{vectorsMerged:i,strategy:r,durationMs:performance.now()-n}}discardBranch(e){this.witnessChain?.append("BRANCH_DISCARD",{agentId:e.agentId,action:"discard",branchPath:e.childPath},`agent-${e.agentId}`),this.cleanupBranchFile(e),this.activeBranches.delete(e.agentId)}getBranch(e){return this.activeBranches.get(e)}getActiveBranches(){return Array.from(this.activeBranches.values())}listBranchFiles(){return Tm(this.config.branchDir)?Vme(this.config.branchDir).filter(t=>t.endsWith(".rvf")).map(t=>{let r=y3(this.config.branchDir,t),n=Gme(r);return{agentId:Hme(t,".rvf"),path:r,sizeBytes:n.size,modifiedAt:n.mtime}}):[]}cleanupOrphans(e){let t=e??this.config.orphanMaxAgeMs,r=Date.now(),n=0;for(let i of this.listBranchFiles())if(r-i.modifiedAt.getTime()>t&&!this.activeBranches.has(i.agentId))try{uT(i.path);let a=`${i.path}.idmap.json`;Tm(a)&&uT(a),n++}catch{}return n}cleanupBranchFile(e){try{e.childAdapter.close()}catch{}try{Tm(e.childPath)&&uT(e.childPath);let t=`${e.childPath}.idmap.json`;Tm(t)&&uT(t)}catch{}}}});var jme,dT,C3=y(()=>{"use strict";jme={sampleSize:50,windowDurationMs:6048e5,compactionThreshold:.3,scoreTolerance:.05},dT=class{config;db=null;rvfStore=null;history=[];constructor(e){this.config={...jme,...e}}setSqliteDb(e){this.db=e}setRvfStore(e){this.rvfStore=e}runCheck(){let e={timestamp:Date.now(),samplesChecked:0,divergences:0,divergenceRate:0,details:[],deadSpaceRatio:null,compactionTriggered:!1};if(!this.db||!this.rvfStore)return this.history.push(e),e;let t=this.getSampleIds(this.config.sampleSize);if(e.samplesChecked=t.length,t.length===0)return this.history.push(e),e;for(let r of t){let n=this.getSqliteEmbedding(r);if(!n){e.divergences++,e.details.push({patternId:r,issue:"missing-in-sqlite"});continue}try{let i=this.rvfStore.search(n,1);i.length===0?(e.divergences++,e.details.push({patternId:r,issue:"missing-in-rvf"})):i[0].id!==r&&i[0].score<.99&&(e.divergences++,e.details.push({patternId:r,issue:"score-mismatch",rvfScore:i[0].score}))}catch{e.divergences++,e.details.push({patternId:r,issue:"missing-in-rvf"})}}e.divergenceRate=e.samplesChecked>0?e.divergences/e.samplesChecked:0;try{let n=this.rvfStore.status().deadSpaceRatio;e.deadSpaceRatio=n??null,n!=null&&n>this.config.compactionThreshold&&(this.triggerCompaction(),e.compactionTriggered=!0)}catch{}return this.history.push(e),this.pruneHistory(),e}getRollingDivergenceRate(){let e=Date.now()-this.config.windowDurationMs,t=this.history.filter(i=>i.timestamp>=e);if(t.length===0)return 0;let r=t.reduce((i,s)=>i+s.samplesChecked,0),n=t.reduce((i,s)=>i+s.divergences,0);return r>0?n/r:0}getCheckCount(){let e=Date.now()-this.config.windowDurationMs;return this.history.filter(t=>t.timestamp>=e).length}getHistory(){let e=Date.now()-this.config.windowDurationMs;return this.history.filter(t=>t.timestamp>=e)}getSampleIds(e){if(!this.db)return[];try{return this.db.prepare("SELECT pattern_id FROM qe_pattern_embeddings ORDER BY RANDOM() LIMIT ?").all(e).map(r=>r.pattern_id)}catch{return[]}}getSqliteEmbedding(e){if(!this.db)return null;try{let t=this.db.prepare("SELECT embedding, dimension FROM qe_pattern_embeddings WHERE pattern_id = ?").get(e);return t?new Float32Array(t.embedding.buffer,t.embedding.byteOffset,t.dimension):null}catch{return null}}triggerCompaction(){try{this.rvfStore.compact?.()}catch{}}pruneHistory(){let e=Date.now()-this.config.windowDurationMs;this.history=this.history.filter(t=>t.timestamp>=e)}}});var Qme,pT,T3=y(()=>{"use strict";Qme={maxDivergenceRate2to3:1e-4,maxReadLatencyRatio2to3:2,maxFallbacks3to4:0,maxWriteLatencyRatio3to4:1.5,minChecksRequired:10},pT=class{config;witnessChain=null;constructor(e){this.config={...Qme,...e}}setWitnessChain(e){this.witnessChain=e}evaluate(e,t,r){let n=Math.min(e+1,4);if(e>=4)return{canPromote:!1,currentStage:e,targetStage:4,checks:[],summary:"Already at maximum stage (4: RVF primary)"};if(e<2)return{canPromote:!0,currentStage:e,targetStage:n,checks:[],summary:`Stage ${e}\u2192${n} has no automated gates \u2014 manual promotion allowed`};let i=[];if(e===2){let c=t.getRollingDivergenceRate(),l=t.getCheckCount();i.push({name:"consistency-checks-count",passed:l>=this.config.minChecksRequired,actual:`${l} checks`,threshold:`>= ${this.config.minChecksRequired} checks`}),i.push({name:"divergence-rate",passed:c<=this.config.maxDivergenceRate2to3,actual:`${(c*100).toFixed(4)}%`,threshold:`<= ${(this.config.maxDivergenceRate2to3*100).toFixed(4)}%`});let u=r.sqliteReadLatencyAvgMs>0?r.rvfReadLatencyAvgMs/r.sqliteReadLatencyAvgMs:0;i.push({name:"read-latency-ratio",passed:u<=this.config.maxReadLatencyRatio2to3||r.rvfReadLatencyAvgMs===0,actual:`${u.toFixed(2)}x`,threshold:`<= ${this.config.maxReadLatencyRatio2to3}x`})}if(e===3){i.push({name:"fallback-count",passed:r.fallbacksUsed<=this.config.maxFallbacks3to4,actual:`${r.fallbacksUsed} fallbacks`,threshold:`<= ${this.config.maxFallbacks3to4} fallbacks`});let c=r.sqliteWriteLatencyAvgMs??r.sqliteReadLatencyAvgMs,l=r.rvfWriteLatencyAvgMs??r.rvfReadLatencyAvgMs,u=c>0?l/c:0;i.push({name:"write-latency-ratio",passed:u<=this.config.maxWriteLatencyRatio3to4||l===0,actual:`${u.toFixed(2)}x`,threshold:`<= ${this.config.maxWriteLatencyRatio3to4}x`})}let s=i.length>0&&i.every(c=>c.passed),a=i.filter(c=>!c.passed).map(c=>c.name);return{canPromote:s,currentStage:e,targetStage:n,checks:i,summary:s?`All gates passed \u2014 safe to promote to stage ${n}`:`Blocked: ${a.join(", ")} failed`}}promote(e,t,r,n=!1){let i=this.evaluate(e,t,r);if(!i.canPromote&&!n)return this.recordWitness("QUALITY_GATE_FAIL",{action:"stage-promotion-blocked",from:e,to:i.targetStage,failedChecks:i.checks.filter(a=>!a.passed),summary:i.summary}),{promoted:!1,newStage:e,result:i};let s=i.targetStage;return this.recordWitness("QUALITY_GATE_PASS",{action:n?"stage-promotion-forced":"stage-promotion-approved",from:e,to:s,checks:i.checks,forced:n,summary:i.summary}),{promoted:!0,newStage:s,result:i}}recordWitness(e,t){try{this.witnessChain?.append(e,t,"rvf-stage-gate")}catch{}}}});var S3={};Q(S3,{RvfMigrationCoordinator:()=>Sm});var mT,Sm,MD=y(()=>{"use strict";lI();C3();T3();mT=null,Sm=class o{adapter;validator;gate;currentStage;initialized=!1;constructor(e){this.currentStage=e?.stage??1,this.adapter=new Dp({stage:this.currentStage,rvfPath:e?.rvfPath??".agentic-qe/patterns.rvf",dimensions:e?.dimensions??384,enableFallback:!0}),this.validator=new dT({sampleSize:50,windowDurationMs:10080*60*1e3,compactionThreshold:.3,scoreTolerance:.05}),this.gate=new pT({minChecksRequired:10})}attachSqliteDb(e){this.adapter.setSqliteDb(e),this.validator.setSqliteDb(e)}attachRvfStore(e){this.adapter.setRvfStore(e),this.validator.setRvfStore(e)}attachWitnessChain(e){this.gate.setWitnessChain(e)}async initialize(){if(!this.initialized){if(this.currentStage===1)try{let{getRvfMigrationStage:e}=await Promise.resolve().then(()=>(se(),cr)),t=e();this.currentStage=t,this.adapter.setStage(t)}catch{}try{let{UnifiedMemoryManager:e}=await Promise.resolve().then(()=>(Y(),Cr)),t=e.getInstance();await t.initialize();let r=t.getDatabase();r&&this.attachSqliteDb(r)}catch{}try{let{getSharedRvfAdapter:e}=await Promise.resolve().then(()=>(ec(),Zo)),t=e();t&&this.attachRvfStore(t)}catch{}try{let{WitnessChain:e}=await Promise.resolve().then(()=>(ip(),YH)),t=new e;await t.initialize(),this.attachWitnessChain(t)}catch{}this.initialized=!0}}getStatus(){let e=this.adapter.getMetrics(),t=this.adapter.status(),r=this.validator.getHistory(),n=this.gate.evaluate(this.currentStage,this.validator,e);return{stage:this.currentStage,stageName:Db[this.currentStage],metrics:e,consistencyHistory:{totalChecks:this.validator.getCheckCount(),rollingDivergenceRate:this.validator.getRollingDivergenceRate(),lastCheck:r.length>0?r[r.length-1]:null},gateEvaluation:n,engineStatus:{sqliteVectorCount:t.sqlite.vectorCount,rvfAvailable:t.rvf!==null,rvfVectorCount:t.rvf?.totalVectors??null,rvfDeadSpaceRatio:t.rvf?.deadSpaceRatio??null}}}runConsistencyCheck(){return this.validator.runCheck()}evaluateGate(){return this.gate.evaluate(this.currentStage,this.validator,this.adapter.getMetrics())}promote(e=!1){let t=this.currentStage,{promoted:r,newStage:n,result:i}=this.gate.promote(this.currentStage,this.validator,this.adapter.getMetrics(),e);return r&&(this.currentStage=n,this.adapter.setStage(n)),{promoted:r,previousStage:t,newStage:n,result:i}}write(e,t){return this.adapter.write(e,t)}search(e,t){return this.adapter.search(e,t)}getAdapter(){return this.adapter}static getInstance(e){return mT||(mT=new o(e)),mT}static resetInstance(){mT=null}}});import{randomUUID as Kme}from"crypto";import*as xa from"path";import*as hT from"fs";var w3,Xme,gT,E3=y(()=>{"use strict";L();l0();cB();lB();d0();_f();X0();l0();Hr();Y();Si();PU();eA();MU();mk();tH();sP();xP();aW();qP();qI();hM();oj();Dj();$j();YQ();a3();o3();c3();l3();u3();m3();f3();w3={"test-generation":(o,e,t)=>pk(o,e,t),"test-execution":(o,e)=>eH(o,e),"coverage-analysis":(o,e)=>iP(o,e),"quality-assessment":(o,e,t)=>AP(o,e,t),"defect-intelligence":(o,e,t)=>sW(o,e,t),"requirements-validation":(o,e,t)=>$P(o,e,t),"code-intelligence":(o,e,t)=>$I(o,e,t),"security-compliance":(o,e,t)=>gM(o,e,t),"contract-testing":(o,e,t)=>aj(o,e,t),"visual-accessibility":(o,e,t)=>Mj(o,e,t),"chaos-resilience":(o,e,t)=>Oj(o,e,t),"learning-optimization":(o,e,t)=>JQ(o,e,t),"enterprise-integration":(o,e,t)=>h3(o,e,t),coordination:(o,e,t)=>s3(o,e,t)},Xme={maxConcurrentAgents:hu.MAX_CONCURRENT_AGENTS,memoryBackend:"hybrid",hnswEnabled:!0,lazyLoading:!0,enabledDomains:[...Z],dataDir:void 0,enableExperienceBridge:!0},gT=class{_eventBus;_coordinator;_plugins;_memory;_config;_startTime;_initialized=!1;_loopTracker;_experienceBridge;constructor(e={}){this._config={...Xme,...e},this._startTime=new Date,this._memory=new ks,this._eventBus=new cf,this._coordinator=new lf(this._config.maxConcurrentAgents),this._plugins=new fu(this._eventBus,this._memory,this._config.lazyLoading),this._loopTracker=new vo}get eventBus(){return this._eventBus}get coordinator(){return this._coordinator}get plugins(){return this._plugins}get memory(){return this._memory}async initialize(){if(this._initialized)return;let e=Xr(),t=this._config.dataDir||xa.join(e,".agentic-qe");if(hT.existsSync(t)||hT.mkdirSync(t,{recursive:!0}),this._config.memoryBackend==="memory"){let n=xa.join(ve("os").tmpdir(),`aqe-test-${Date.now()}-${Kme().slice(0,12)}.db`);await J0({dbPath:n})}else this._memory=new Jr({sqlite:{path:xa.join(t,"memory.db"),walMode:!0,poolSize:3,busyTimeout:Ke.BUSY_TIMEOUT_MS},enableFallback:!0,defaultNamespace:"qe-kernel"}),this._plugins=new fu(this._eventBus,this._memory,this._config.lazyLoading);for(let n of this._config.enabledDomains){let i=w3[n];i&&this._plugins.registerFactory(n,async(s,a)=>Promise.resolve(i(s,a,this._coordinator)))}await this._memory.initialize();let r=new Uf({agentId:"qe-kernel"});this._eventBus.registerMiddleware(r);try{let n=xa.join(t,"plugins"),i=new Co({cacheDir:n}),a=new Gf({cache:i}).resolveLoadOrder();for(let c of a.ordered){let l=c.manifest,u=i.get(l.name,l.version);if(!u)continue;let d=xa.join(u.path,l.entryPoint);for(let p of l.domains){let m=p;if(w3[m])continue;this._plugins.registerFactory(m,async(h,v)=>{let b=await import(d),C=b.default??b.createPlugin;if(typeof C!="function")throw new Error(`Plugin "${l.name}" entry point must export a default function or "createPlugin" function`);return C(h,v,this._coordinator)})}}}catch{}this._config.lazyLoading||await this._plugins.loadAll();try{let{isAgentMemoryBranchingEnabled:n,isRVFPatternStoreEnabled:i}=await Promise.resolve().then(()=>(se(),cr));if(n()&&i()){let{getSharedRvfAdapter:s}=await Promise.resolve().then(()=>(ec(),Zo)),{AgentMemoryBranch:a}=await Promise.resolve().then(()=>(b3(),v3)),c=s(t,384);if(c){let l=new a(c,{branchDir:xa.join(t,"branches")});this._coordinator.setMemoryBranch(l)}}}catch{}try{let{getRvfMigrationStage:n}=await Promise.resolve().then(()=>(se(),cr)),i=n();if(i>=2){let{RvfMigrationCoordinator:s}=await Promise.resolve().then(()=>(MD(),S3));await s.getInstance({stage:i}).initialize()}}catch{}if(this._config.enableExperienceBridge!==!1){try{await this._plugins.loadAll()}catch(n){console.warn("[QEKernel] domain plugin pre-load (for bridge subscribers) failed:",n instanceof Error?n.message:n)}try{this._experienceBridge=new Hf(this._eventBus,this._memory),await this._experienceBridge.start()}catch(n){console.warn("[QEKernel] CapturedExperienceBridge failed to start:",n instanceof Error?n.message:n),this._experienceBridge=void 0}}this._initialized=!0}async dispose(){this._experienceBridge&&(await this._experienceBridge.stop(),this._experienceBridge=void 0),await this._plugins.disposeAll(),await this._coordinator.dispose(),await this._eventBus.dispose(),await this._memory.dispose(),this._initialized=!1}getDomainAPI(e){return this._plugins.getPlugin(e)?.getAPI()}async getDomainAPIAsync(e){let t=this._plugins.getPlugin(e);if(!t&&this._config.lazyLoading&&this._config.enabledDomains.includes(e))try{t=await this._plugins.load(e)}catch(r){console.error(`[QEKernel] Failed to lazy load domain ${e}:`,r);return}return t?.getAPI()}async ensureDomainLoaded(e){if(this._plugins.isLoaded(e))return!0;if(!this._config.enabledDomains.includes(e))return console.warn(`[QEKernel] Domain ${e} is not enabled`),!1;try{return await this._plugins.load(e),!0}catch(t){return console.error(`[QEKernel] Failed to load domain ${e}:`,t),!1}}isDomainLoaded(e){return this._plugins.isLoaded(e)}getLoadedDomains(){return this._plugins.getLoaded()}getPendingDomains(){let e=new Set(this._plugins.getLoaded());return this._config.enabledDomains.filter(t=>!e.has(t))}getHealth(){let e=this._coordinator.listAgents(),t={};for(let l of this._plugins.getLoaded()){let u=this._plugins.getPlugin(l);u&&(t[l]=u.getHealth())}for(let l of Z)if(!t[l]){let u=this._config.enabledDomains.includes(l),d=this._config.lazyLoading&&u;t[l]={status:d?"healthy":u?"degraded":"healthy",agents:{total:0,active:0,idle:0,failed:0},errors:d?[]:u?["Domain not yet loaded"]:[],loaded:!1,lazyLoadable:d}}let r=this._coordinator.getActiveCount(),n=0,i=Number.MAX_SAFE_INTEGER;if(this._memory instanceof ks){let l=this._memory.getStats();n=l.entries+l.vectors}else n=0;let a=this._eventBus.getMiddlewares().find(l=>l.name==="semantic-anti-drift"),c=a?a.getStats():void 0;return{status:this.determineOverallStatus(t),uptime:Date.now()-this._startTime.getTime(),domains:t,agents:{total:e.length,active:r,maxAllowed:this._config.maxConcurrentAgents},memory:{used:n,available:i},...c?{antiDrift:c}:{}}}determineOverallStatus(e){let t=Object.values(e).map(r=>r.status);return t.some(r=>r==="unhealthy")?"unhealthy":t.some(r=>r==="degraded")?"degraded":"healthy"}getConfig(){return{...this._config}}checkToolCall(e,t,r){if(process.env.AQE_LOOP_DETECTION_ENABLED==="false")return this._loopTracker.trackCall(e,t,r);let n=this._loopTracker.trackCall(e,t,r);if(n.action==="warn"){let i={id:`loop-warn-${e}-${Date.now()}`,type:c0.LOOP_WARNING,timestamp:new Date,source:"coordination",correlationId:e,payload:{agentId:e,toolName:t,callCount:n.callCount,signature:n.signature}};this._eventBus.publish(i)}else if(n.action==="steer"){let i={id:`loop-detected-${e}-${Date.now()}`,type:c0.LOOP_DETECTED,timestamp:new Date,source:"coordination",correlationId:e,payload:{agentId:e,toolName:t,callCount:n.callCount,signature:n.signature,steeringMessage:n.steeringMessage}};this._eventBus.publish(i)}return n}get loopTracker(){return this._loopTracker}}});function Jme(o,e,t){let r=0,n=o.length;for(;r<n;){let i=r+n>>>1;t(o[i],e)<=0?r=i+1:n=i}return r}function R3(o,e,t){let r=Jme(o,e,t);return o.splice(r,0,e),r}function A3(){return(o,e)=>o.createdAt.getTime()-e.createdAt.getTime()}var x3=y(()=>{"use strict"});var fT=y(()=>{"use strict";hi();Pn();x3();fe();Lp()});function DD(o){return new yT(o)}var Yme,yT,k3=y(()=>{"use strict";Yme={enableConsoleLog:!0,maxEntries:1e3,logPrefix:"[TASK]"},yT=class{entries=[];config;constructor(e={}){this.config={...Yme,...e}}log(e,t,r){let n={timestamp:new Date,operation:e,taskId:t,agentId:r?.agentId,domain:r?.domain,details:r?.details};if(this.entries.push(n),this.entries.length>this.config.maxEntries&&this.entries.splice(0,this.entries.length-this.config.maxEntries),this.config.enableConsoleLog){let i=r?.agentId?` by ${r.agentId}`:"",s=r?.domain?` (${r.domain})`:"";console.log(`${this.config.logPrefix} ${e.toUpperCase()} ${t}${i}${s}`)}}logSubmit(e,t){this.log("submit",e,{details:t})}logAssign(e,t,r){this.log("assign",e,{agentId:t,domain:r})}logReassign(e,t,r,n){this.log("reassign",e,{agentId:r,domain:n,details:{fromAgent:t}})}logComplete(e,t){this.log("complete",e,{agentId:t})}logFail(e,t,r){this.log("fail",e,{agentId:t,details:r?{error:r}:void 0})}logCancel(e){this.log("cancel",e)}logSteal(e,t,r){this.log("steal",e,{domain:r,details:{fromDomain:t}})}logQueue(e,t){this.log("queue",e,{details:{position:t}})}logDequeue(e){this.log("dequeue",e)}getEntries(e){let t=[...this.entries];e&&(e.operation&&(t=t.filter(n=>n.operation===e.operation)),e.taskId&&(t=t.filter(n=>n.taskId===e.taskId)),e.agentId&&(t=t.filter(n=>n.agentId===e.agentId)),e.domain&&(t=t.filter(n=>n.domain===e.domain)),e.fromTimestamp&&(t=t.filter(n=>n.timestamp>=e.fromTimestamp)),e.toTimestamp&&(t=t.filter(n=>n.timestamp<=e.toTimestamp)));let r=e?.limit??t.length;return t.slice(-r)}getStatistics(){let e={submit:0,assign:0,reassign:0,complete:0,fail:0,cancel:0,steal:0,queue:0,dequeue:0},t=new Set,r=new Set;for(let n of this.entries)e[n.operation]++,t.add(n.taskId),n.agentId&&r.add(n.agentId);return{totalEntries:this.entries.length,operationCounts:e,taskCount:t.size,agentCount:r.size}}clear(){this.entries.length=0}}});var P3=y(()=>{"use strict";k3()});var wm,vT=y(()=>{"use strict";wm={healthyThreshold:3,warningThreshold:2,checkIntervalMs:5e3,maxHistoryEntries:100,alertsEnabled:!0,alertCooldownMs:6e4,selfHealingEnabled:!1,maxHealingActionsPerMinute:5}});function Em(o,e,t,r){return new bT(o,e,t,r)}var bT,CT=y(()=>{"use strict";N();Wi();vT();bT=class{calculator;config;eventBus;persistence;graph;history=[];alerts=new Map;lastAlertTime=new Map;monitoringInterval=null;isMonitoring=!1;constructor(e,t={},r,n){this.graph=e,this.config={...wm,...t},this.calculator=rn(),this.eventBus=r,this.persistence=n}start(){this.isMonitoring||(this.isMonitoring=!0,this.monitoringInterval=setInterval(()=>this.checkHealth(),this.config.checkIntervalMs),this.checkHealth())}stop(){this.monitoringInterval&&(clearInterval(this.monitoringInterval),this.monitoringInterval=null),this.isMonitoring=!1}updateGraph(e){this.graph=e,this.isMonitoring&&this.checkHealth()}isEmptyTopology(){return this.graph.getVerticesByType("agent").length===0}checkHealth(){let e=this.calculator.getMinCutValue(this.graph),t=this.calculator.findWeakVertices(this.graph),r=this.isEmptyTopology()?"idle":this.determineStatus(e),n=this.calculateTrend();return this.recordHistory(e),this.isEmptyTopology()||this.checkAlertConditions(e,t,r),this.persistence&&t.length>0&&this.persistence.saveWeakVertices(t).catch(i=>console.warn("[MinCutHealthMonitor] Failed to persist weak vertices:",i)),this.emitEvent("mincut.updated",e,{status:r,weakVertexCount:t.length}),{status:r,minCutValue:e,healthyThreshold:this.config.healthyThreshold,warningThreshold:this.config.warningThreshold,weakVertexCount:t.length,topWeakVertices:t.slice(0,5),trend:n,history:this.history.slice(-20),lastUpdated:new Date}}getHealth(){let e=this.calculator.getMinCutValue(this.graph),t=this.calculator.findWeakVertices(this.graph);return{status:this.isEmptyTopology()?"idle":this.determineStatus(e),minCutValue:e,healthyThreshold:this.config.healthyThreshold,warningThreshold:this.config.warningThreshold,weakVertexCount:t.length,topWeakVertices:t.slice(0,5),trend:this.calculateTrend(),history:this.history.slice(-20),lastUpdated:new Date}}getMinCutValue(){return this.calculator.getMinCutValue(this.graph)}getWeakVertices(){return this.calculator.findWeakVertices(this.graph)}isCritical(){return this.calculator.getMinCutValue(this.graph)<this.config.warningThreshold}isHealthy(){return this.calculator.getMinCutValue(this.graph)>=this.config.healthyThreshold}getActiveAlerts(){return Array.from(this.alerts.values()).filter(e=>!e.acknowledged).sort((e,t)=>{let r={critical:0,high:1,medium:2,low:3,info:4};return r[e.severity]-r[t.severity]})}getAllAlerts(){return Array.from(this.alerts.values())}acknowledgeAlert(e){let t=this.alerts.get(e);return t?(t.acknowledged=!0,!0):!1}clearAcknowledgedAlerts(){let e=[];for(let[t,r]of this.alerts)r.acknowledged&&e.push(t);for(let t of e)this.alerts.delete(t);return e.length}getHistory(){return[...this.history]}getTrend(){return this.calculateTrend()}getStats(e=6e4){let t=Date.now()-e,r=this.history.filter(i=>i.timestamp.getTime()>t);if(r.length===0){let i=this.calculator.getMinCutValue(this.graph);return{min:i,max:i,average:i,count:0}}let n=r.map(i=>i.value);return{min:Math.min(...n),max:Math.max(...n),average:n.reduce((i,s)=>i+s,0)/n.length,count:r.length}}updateConfig(e){Object.assign(this.config,e),e.checkIntervalMs&&this.isMonitoring&&(this.stop(),this.start())}getConfig(){return{...this.config}}determineStatus(e){return e>=this.config.healthyThreshold?"healthy":e>=this.config.warningThreshold?"warning":"critical"}calculateTrend(){if(this.history.length<3)return"stable";let e=this.history.slice(-5),t=e[0].value,n=e[e.length-1].value-t,s=e.reduce((a,c)=>a+c.value,0)/e.length*.1;return n>s?"improving":n<-s?"degrading":"stable"}recordHistory(e){let t={timestamp:new Date,value:e,vertexCount:this.graph.vertexCount,edgeCount:this.graph.edgeCount};for(this.history.push(t);this.history.length>this.config.maxHistoryEntries;)this.history.shift()}checkAlertConditions(e,t,r){if(!this.config.alertsEnabled)return;let n=Date.now();r==="critical"?this.maybeGenerateAlert("critical-threshold","critical",`MinCut value (${e.toFixed(2)}) is below critical threshold (${this.config.warningThreshold})`,e,this.config.warningThreshold,t):r==="warning"&&this.maybeGenerateAlert("warning-threshold","high",`MinCut value (${e.toFixed(2)}) is below healthy threshold (${this.config.healthyThreshold})`,e,this.config.healthyThreshold,t);let i=t.filter(a=>a.weightedDegree===0);i.length>0&&this.maybeGenerateAlert("isolated-vertices","high",`${i.length} isolated vertex(es) detected`,e,0,i);let s=t.filter(a=>a.riskScore>.8);s.length>0&&this.maybeGenerateAlert("critical-vertices","medium",`${s.length} critical vertex(es) with high risk score`,e,0,s)}maybeGenerateAlert(e,t,r,n,i,s){let a=Date.now(),c=this.lastAlertTime.get(e)||0;if(a-c<this.config.alertCooldownMs)return;let l={id:E(),severity:t,message:r,minCutValue:n,threshold:i,affectedVertices:s.map(u=>u.vertexId),timestamp:new Date,acknowledged:!1,remediations:s.flatMap(u=>u.suggestions).slice(0,5)};this.alerts.set(l.id,l),this.persistence&&this.persistence.saveAlert(l).catch(u=>console.warn("[MinCutHealthMonitor] Failed to persist alert:",u)),this.lastAlertTime.set(e,a),this.emitEvent("mincut.alert.generated",n,{alert:l})}emitEvent(e,t,r){if(!this.eventBus)return;let n={id:E(),type:e,source:"coordination",timestamp:new Date,correlationId:E(),payload:{minCutValue:t,...r}};this.eventBus.publish(n).catch(i=>{console.error("Failed to publish MinCut event:",i)})}}});function _D(o){return new TT(o)}var TT,LD=y(()=>{"use strict";N();Y();$();TT=class{memory;initialized=!1;constructor(e){this.memory=e??V()}async initialize(){this.initialized||(this.memory.isInitialized()||await this.memory.initialize(),this.initialized=!0)}async saveSnapshot(e){this.ensureInitialized();let t=E();return this.memory.getDatabase().prepare(`
|
|
4764
4764
|
INSERT INTO mincut_snapshots (
|
|
4765
4765
|
id, timestamp, vertex_count, edge_count, total_weight,
|
|
4766
4766
|
is_connected, component_count, vertices_json, edges_json
|
|
@@ -5902,7 +5902,7 @@ ${i.errors.join(`
|
|
|
5902
5902
|
ORDER BY ended_at DESC
|
|
5903
5903
|
LIMIT ?
|
|
5904
5904
|
`).all(gbe);if(i.length===0)return;let s=r.prepare("UPDATE qe_trajectories SET feedback = ? WHERE id = ?");for(let a of i)try{let c=await hbe(a,o,e);c&&s.run(JSON.stringify(c),a.id)}catch{}}async function hbe(o,e,t){let r=["You are a quality engineering judge scoring a completed task trajectory.","",`Task: ${o.task.slice(0,400)}`,`Agent: ${o.agent??"unknown"}`,`Domain: ${o.domain??"general"}`,`Outcome: ${o.success?"success":"failure"}`,"",'Respond ONLY with JSON: {"quality": 0..1, "reasoning": "\u2264120 chars", "improvement": "\u2264120 chars or omit"}.'].join(`
|
|
5905
|
-
`),n=await fetch(`${t}/v1/messages`,{method:"POST",headers:{"content-type":"application/json","x-api-key":e,"anthropic-version":"2023-06-01"},body:JSON.stringify({model:pbe,max_tokens:mbe,messages:[{role:"user",content:r}]})});if(!n.ok)return null;let s=(await n.json()).content?.[0]?.text;if(!s)return null;let a=s.match(/\{[\s\S]*\}/);if(!a)return null;try{let c=JSON.parse(a[0]);return typeof c.quality!="number"||typeof c.reasoning!="string"?null:{quality:Math.max(0,Math.min(1,c.quality)),reasoning:c.reasoning.slice(0,200),improvement:typeof c.improvement=="string"?c.improvement.slice(0,200):void 0}}catch{return null}}var pbe,mbe,gbe,CX=y(()=>{"use strict";Y();pbe="claude-haiku-4-5-20251001",mbe=200,gbe=5});var EN={};Q(EN,{handleModelRoute:()=>zw,handleReasoningBankStats:()=>Cbe,handleRoutingEconomics:()=>Gw,handleRoutingMetrics:()=>Vw,handleTaskCancel:()=>Bw,handleTaskList:()=>$w,handleTaskOrchestrate:()=>Uw,handleTaskOutcomeRecord:()=>bbe,handleTaskStatus:()=>qw,handleTaskStatusWithLearning:()=>Tbe,handleTaskSubmit:()=>Ow,subscribeTrajectoryEvents:()=>Sbe,unsubscribeTrajectoryEvents:()=>wX});async function Ow(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=await e.submitTask({type:o.type,priority:o.priority||"p1",targetDomains:o.targetDomains||[],payload:o.payload||{},timeout:o.timeout||3e5});if(!t.success)return{success:!1,error:t.error.message};let r=e.getTaskStatus(t.value);return{success:!0,data:{taskId:t.value,type:o.type,priority:o.priority||"p1",status:r?.status==="running"?"pending":"queued",assignedDomain:r?.assignedDomain}}}catch(t){return{success:!1,error:`Failed to submit task: ${S(t)}`}}}async function $w(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=e.listTasks({status:o.status,priority:o.priority,domain:o.domain});return{success:!0,data:(typeof o.limit=="number"?t.slice(0,o.limit):t).map(i=>({taskId:i.taskId,type:i.task.type,status:i.status,priority:i.task.priority,assignedDomain:i.assignedDomain,assignedAgents:i.assignedAgents,result:i.result,error:i.error,createdAt:i.task.createdAt.toISOString(),startedAt:i.startedAt?.toISOString(),completedAt:i.completedAt?.toISOString(),duration:i.completedAt&&i.startedAt?i.completedAt.getTime()-i.startedAt.getTime():void 0}))}}catch(t){return{success:!1,error:`Failed to list tasks: ${S(t)}`}}}async function qw(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=e.getTaskStatus(o.taskId);return t?{success:!0,data:{taskId:t.taskId,type:t.task.type,status:t.status,priority:t.task.priority,assignedDomain:t.assignedDomain,assignedAgents:t.assignedAgents,result:o.detailed?t.result:void 0,error:t.error,createdAt:t.task.createdAt.toISOString(),startedAt:t.startedAt?.toISOString(),completedAt:t.completedAt?.toISOString(),duration:t.completedAt&&t.startedAt?t.completedAt.getTime()-t.startedAt.getTime():void 0}}:{success:!1,error:`Task not found: ${o.taskId}`}}catch(t){return{success:!1,error:`Failed to get task status: ${S(t)}`}}}async function Bw(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=await e.cancelTask(o.taskId);return t.success?{success:!0,data:{taskId:o.taskId,cancelled:!0}}:{success:!1,error:t.error.message}}catch(t){return{success:!1,error:`Failed to cancel task: ${S(t)}`}}}async function Uw(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e,workflowOrchestrator:t}=me();try{let r=o.context?.project||SX(o.task),n=o.priority==="critical"||/\b(security|vulnerability|cve|owasp|critical|production|exploit)\b/i.test(o.task),s=await(await ms()).routeTask({task:o.task,codeContext:o.codeContext,filePaths:o.filePaths,manualTier:o.manualTier,isCritical:n,agentType:`qe-${r}`,domain:r,metadata:{inferredDomain:r,hasCodeContext:!!o.codeContext,fileCount:o.filePaths?.length}}),a=await yn(),c=await a.getExperienceGuidance(o.task,o.context?.project),l=await a.searchPatterns(o.task,{limit:5,domain:o.context?.project??r}).catch(()=>[]),u=ybe(o.task),d=vbe(o.priority||"medium"),p=fbe[u];if(p&&t){console.log(`[TaskOrchestrate] Task type '${u}' has workflow '${p}' - executing workflow`);let v=o.task.match(/https?:\/\/[^\s]+/i),b=v?v[0]:void 0;b&&console.log(`[TaskOrchestrate] Detected URL for analysis: ${b}`);let C={targetId:o.context?.project||b||`task-${Date.now()}`,targetType:b?"website":"epic",description:o.task,acceptanceCriteria:o.context?.requirements||[],url:b,routing:{tier:s.decision.tier,modelId:s.modelId,executionStrategy:s.executionStrategy,complexity:s.decision.complexityAnalysis.overall},patternHints:l.length>0?l.map(A=>({patternId:A.id,name:A.name,description:A.description,confidence:A.confidence,similarity:A.qualityScore,canReuse:A.tier==="long-term"})):void 0},R=await t.executeWorkflow(p,C);return R.success?{success:!0,data:{taskId:R.value,type:u,priority:d,strategy:o.strategy||"adaptive",status:"workflow-started",message:`Workflow '${p}' started for task: ${o.task}`,routing:{tier:s.decision.tier,tierName:s.tierInfo.name,modelId:s.modelId,executionStrategy:s.executionStrategy,complexity:s.decision.complexityAnalysis.overall,confidence:s.decision.confidence,useAgentBooster:s.useAgentBooster,rationale:s.decision.rationale,decisionTimeMs:s.decision.metadata.decisionTimeMs}}}:{success:!1,error:`Workflow execution failed: ${R.error.message}`}}let m={description:o.task,strategy:o.strategy||"adaptive",maxAgents:o.maxAgents,context:o.context};u==="generate-tests"&&(m.sourceFiles=o.filePaths||[],m.sourceCode=o.codeContext||"",m.language=m.language||"typescript",m.testType=m.testType||"unit");let g=await e.submitTask({type:u,priority:d,targetDomains:[],payload:{...m,routing:{tier:s.decision.tier,modelId:s.modelId,executionStrategy:s.executionStrategy,useAgentBooster:s.useAgentBooster,agentBoosterTransform:s.decision.agentBoosterTransform,complexity:s.decision.complexityAnalysis.overall,confidence:s.decision.confidence},experienceGuidance:c?{strategy:c.recommendedStrategy,actions:c.suggestedActions,confidence:c.confidence,tokenSavings:c.estimatedTokenSavings}:void 0,patternHints:l.length>0?l.map(v=>({patternId:v.id,name:v.name,description:v.description,confidence:v.confidence,similarity:v.qualityScore,canReuse:v.tier==="long-term"})):void 0},timeout:6e5});if(!g.success)return{success:!1,error:g.error.message};let h=g.value;return await TN(h,o.task,{agent:"queen-coordinator",domain:o.context?.project}),process.env.AQE_TRAJECTORY_JUDGE==="1"&&process.env.ANTHROPIC_API_KEY&&bX().catch(v=>{console.warn("[TrajectoryJudge] failed:",v instanceof Error?v.message:v)}),{success:!0,data:{taskId:h,type:u,priority:d,strategy:o.strategy||"adaptive",status:"submitted",message:`Task orchestrated: ${o.task}${c?" (with experience guidance)":""}`,routing:{tier:s.decision.tier,tierName:s.tierInfo.name,modelId:s.modelId,executionStrategy:s.executionStrategy,complexity:s.decision.complexityAnalysis.overall,confidence:s.decision.confidence,useAgentBooster:s.useAgentBooster,rationale:s.decision.rationale,decisionTimeMs:s.decision.metadata.decisionTimeMs}}}}catch(r){return{success:!1,error:`Failed to orchestrate task: ${S(r)}`}}}async function zw(o){try{let e=await ms(),t=o.domain||SX(o.task),r=o.isCritical??/\b(security|vulnerability|cve|owasp|critical|production|exploit)\b/i.test(o.task),n=await e.routeTask({task:o.task,codeContext:o.codeContext,filePaths:o.filePaths,manualTier:o.manualTier,isCritical:r,agentType:o.agentType||`qe-${t}`,domain:t,metadata:{inferredDomain:t,hasCodeContext:!!o.codeContext,fileCount:o.filePaths?.length}});return{success:!0,data:{tier:n.decision.tier,tierName:n.tierInfo.name,modelId:n.modelId,executionStrategy:n.executionStrategy,useAgentBooster:n.useAgentBooster,agentBoosterTransform:n.decision.agentBoosterTransform,complexity:{overall:n.decision.complexityAnalysis.overall,code:n.decision.complexityAnalysis.codeComplexity,reasoning:n.decision.complexityAnalysis.reasoningComplexity,scope:n.decision.complexityAnalysis.scopeComplexity},confidence:n.decision.confidence,rationale:n.decision.rationale,warnings:n.decision.warnings,budget:{allowed:n.decision.budgetDecision.allowed,wasDowngraded:n.decision.budgetDecision.wasDowngraded,estimatedCostUsd:n.decision.budgetDecision.estimatedCostUsd},decisionTimeMs:n.decision.metadata.decisionTimeMs}}}catch(e){return{success:!1,error:`Failed to route task: ${S(e)}`}}}async function Vw(o){try{let e=await ms(),t=e.getRoutingStats(),r=e.getMetrics(),n={stats:t,modelRouterMetrics:{totalDecisions:r.totalDecisions,avgDecisionTimeMs:r.avgDecisionTimeMs,agentBoosterStats:r.agentBoosterStats,budgetStats:r.budgetStats}};return o.includeLog&&(n.log=e.getRoutingLog(o.logLimit||100)),{success:!0,data:n}}catch(e){return{success:!1,error:`Failed to get routing metrics: ${S(e)}`}}}async function Gw(o){try{let{createRoutingFeedbackCollector:e}=await Promise.resolve().then(()=>(lF(),EK)),{getGlobalCostTracker:t}=await Promise.resolve().then(()=>(aF(),wK)),r=e(100);await r.initialize(),r.enableEconomicRouting({...o.taskComplexity!=null?{}:{}},t());let n=r.getEconomicReport();return n?{success:!0,data:{tierEfficiency:n.tierEfficiency.map(s=>({...s,qualityPerDollar:isFinite(s.qualityPerDollar)?s.qualityPerDollar:"Infinity"})),currentHourlyCostUsd:n.currentHourlyCostUsd,currentDailyCostUsd:n.currentDailyCostUsd,budgetRemaining:n.budgetRemaining,recommendation:n.recommendation,savingsOpportunity:n.savingsOpportunity}}:{success:!1,error:"Economic routing is not available"}}catch(e){return{success:!1,error:`Failed to get economic routing report: ${S(e)}`}}}function SX(o){let e=o.toLowerCase();return/\b(security|vulnerabilit|cve|owasp|secret|credential|injection|xss|csrf)\b/.test(e)?"security-compliance":/\b(chaos|resilience|fault.?inject|disaster|failover)\b/.test(e)?"chaos-resilience":/\b(defect|bug.?predict|risk.?assess|mutation)\b/.test(e)?"defect-intelligence":/\b(coverage|uncovered|gap.?analy)\b/.test(e)?"coverage-analysis":/\b(quality|code.?review|maintain|tech.?debt)\b/.test(e)?"quality-assessment":/\b(contract|api.?compat|breaking.?change|pact)\b/.test(e)?"contract-testing":/\b(index|knowledge.?graph|semantic|code.?intel)\b/.test(e)?"code-intelligence":/\b(accessib|a11y|wcag|screen.?read)\b/.test(e)?"visual-accessibility":/\b(requirement|bdd|acceptance|user.?stor)\b/.test(e)?"requirements-validation":/\b(generat.*test|test.*generat|write.*test|create.*test)\b/.test(e)?"test-generation":/\b(run.*test|execut.*test)\b/.test(e)?"test-execution":"test-generation"}function ybe(o){let e=o.toLowerCase();return/run\s+(?:\w+\s+)*tests?/.test(e)||/execute\s+(?:\w+\s+)*tests?/.test(e)||e.includes("run tests")||e.includes("execute tests")?"execute-tests":e.includes("generate test")||e.includes("create test")||e.includes("write test")?"generate-tests":e.includes("coverage")||e.includes("uncovered")?"analyze-coverage":e.includes("quality")||e.includes("code quality")?"assess-quality":e.includes("defect")||e.includes("bug")||e.includes("predict")?"predict-defects":e.includes("requirement")||e.includes("bdd")||e.includes("acceptance")?"validate-requirements":e.includes("index")||e.includes("knowledge graph")||e.includes("semantic")?"index-code":e.includes("security")||e.includes("vulnerability")||e.includes("owasp")?"scan-security":e.includes("contract")||e.includes("api contract")||e.includes("pact")?"validate-contracts":e.includes("accessibility")||e.includes("a11y")||e.includes("wcag")?"test-accessibility":e.includes("chaos")||e.includes("resilience")||e.includes("fault")?"run-chaos":e.includes("learn")||e.includes("optimize")||e.includes("improve")?"optimize-learning":e.includes("ideation")||e.includes("quality criteria")||e.includes("htsm")||e.includes("qcsd")||e.includes("testability")||e.includes("pi planning")||e.includes("sprint planning")?"ideation-assessment":"generate-tests"}function vbe(o){switch(o){case"critical":return"p0";case"high":return"p1";case"medium":return"p2";case"low":return"p3";default:return"p1"}}async function bbe(o){try{let e=await yn(),t={taskId:o.taskId,task:o.task,taskType:o.taskType,success:o.success,executionTimeMs:o.executionTimeMs,agentId:o.agentId,domain:o.domain,modelTier:o.modelTier,qualityScore:o.qualityScore,error:o.error,metrics:o.metrics};await e.recordTaskOutcome(t);let r=o.success&&(o.qualityScore||.5)>=.6;return{success:!0,data:{recorded:!0,patternStored:r,message:r?`Outcome recorded and pattern stored for task ${o.taskId}`:`Outcome recorded for task ${o.taskId}`}}}catch(e){return{success:!1,error:`Failed to record task outcome: ${S(e)}`}}}async function Cbe(){try{let e=await(await yn()).getStats();return{success:!0,data:{service:e.service,patterns:{totalPatterns:e.reasoningBank.totalPatterns,byDomain:e.reasoningBank.byDomain,byTier:e.reasoningBank.byTier,learningOutcomes:e.reasoningBank.learningOutcomes,patternSuccessRate:e.reasoningBank.patternSuccessRate},embeddings:{cacheSize:e.reasoningBank.embeddingCacheSize,dimension:e.reasoningBank.embeddingDimension,transformerAvailable:e.reasoningBank.transformerAvailable},performance:{avgRoutingLatencyMs:e.reasoningBank.avgRoutingLatencyMs,p95RoutingLatencyMs:e.reasoningBank.p95RoutingLatencyMs}}}}catch(o){return{success:!1,error:`Failed to get ReasoningBank stats: ${S(o)}`}}}async function Tbe(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=e.getTaskStatus(o.taskId);if(!t)return{success:!1,error:`Task not found: ${o.taskId}`};let r={taskId:t.taskId,type:t.task.type,status:t.status,priority:t.task.priority,assignedDomain:t.assignedDomain,assignedAgents:t.assignedAgents,result:o.detailed?t.result:void 0,error:t.error,createdAt:t.task.createdAt.toISOString(),startedAt:t.startedAt?.toISOString(),completedAt:t.completedAt?.toISOString(),duration:t.completedAt&&t.startedAt?t.completedAt.getTime()-t.startedAt.getTime():void 0};if((t.status==="completed"||t.status==="failed")&&!TX.has(o.taskId)){TX.add(o.taskId);try{let n=await yn(),i=r.duration||0,s=t.status==="completed",a=t.task.payload||{},c=typeof a.description=="string"?a.description:t.task.type,l=a.routing,u=await Lg(o.taskId,s,t.error),d=u?.metrics.averageQuality??(s?.7:.3);await n.recordTaskOutcome({taskId:o.taskId,task:c,taskType:t.task.type,success:s,executionTimeMs:i,agentId:t.assignedAgents?.[0],domain:t.assignedDomain,modelTier:l?.tier,qualityScore:d,error:t.error,metrics:{testsGenerated:typeof t.result=="object"&&t.result?t.result.testsGenerated:void 0,testsPassed:typeof t.result=="object"&&t.result?t.result.testsPassed:void 0}}),console.error(`[TaskHandler] Recorded learning outcome: task=${o.taskId} success=${s} quality=${d.toFixed(2)} trajectorySteps=${u?.steps.length??0}`)}catch(n){console.error("[TaskHandler] Failed to record outcome:",n)}}return{success:!0,data:r}}catch(t){return{success:!1,error:`Failed to get task status: ${S(t)}`}}}function Sbe(o){wX(o);let e=o.subscribeToEventType("TaskCompleted",async r=>{let{taskId:n}=r.payload;n&&await Lg(n,!0).catch(()=>{})}),t=o.subscribeToEventType("TaskFailed",async r=>{let{taskId:n,error:i}=r.payload;n&&await Lg(n,!1,i).catch(()=>{})});wN=[e,t]}function wX(o){for(let e of wN)o.unsubscribe(e);wN=[]}var fbe,TX,wN,Hw=y(()=>{"use strict";hs();IS();SN();CX();k();fbe={"ideation-assessment":"qcsd-ideation-swarm"};TX=new Set;wN=[]});var RX={};Q(RX,{DEFAULT_STRUCTURAL_HEALTH_CONFIG:()=>EX,StructuralHealthMonitor:()=>Ww,createStructuralHealthMonitor:()=>wbe});function wbe(o){return new Ww(o)}var EX,Ww,AX=y(()=>{"use strict";xL();EX={healthyThreshold:.4,warningThreshold:.2,maxHistoryEntries:100,enableLogging:!1},Ww=class{config;minCutService;history=[];constructor(e){this.config={...EX,...e},this.minCutService=CS()}computeFleetHealth(e){if(e.length===0)return this.emptyFleetResult();let t=this.minCutService.buildTaskGraphFromTopology(e);return this.computeFleetHealthFromGraph(t,e.length)}computeFleetHealthFromGraph(e,t){if(e.nodes.length===0)return this.emptyFleetResult();let r=this.minCutService.getStructuralHealth(e),n=this.determineStatus(r.normalizedLambda),i={lambda:r.lambda,healthy:r.healthy,weakPoints:r.weakPoints,normalizedLambda:r.normalizedLambda,riskScore:r.riskScore,status:n,suggestions:r.suggestions,measuredAt:new Date};return this.addHistoryEntry({lambda:r.lambda,healthy:r.healthy,weakPointCount:r.weakPoints.length,agentCount:t??e.nodes.length,timestamp:i.measuredAt}),this.config.enableLogging&&this.logHealth(i),i}getTrend(){if(this.history.length<2)return"stable";let e=Math.min(5,this.history.length),t=this.history.slice(-e),r=t[0].lambda,i=t[t.length-1].lambda-r;return Math.abs(i)<.05?"stable":i>0?"improving":"degrading"}getHistory(e){let t=[...this.history];return e!==void 0&&e<t.length?t.slice(-e):t}clearHistory(){this.history.length=0}getMinCutService(){return this.minCutService}determineStatus(e){return e>=this.config.healthyThreshold?"healthy":e>=this.config.warningThreshold?"warning":"critical"}addHistoryEntry(e){this.history.push(e),this.history.length>this.config.maxHistoryEntries&&this.history.splice(0,this.history.length-this.config.maxHistoryEntries)}emptyFleetResult(){return{lambda:0,healthy:!1,weakPoints:[],normalizedLambda:0,riskScore:1,status:"empty",suggestions:["No agents in fleet. Spawn agents to build a topology."],measuredAt:new Date}}logHealth(e){console.error(`[StructuralHealth] Status: ${e.status} | Lambda: ${e.normalizedLambda.toFixed(3)} | Weak points: ${e.weakPoints.length} | Risk: ${(e.riskScore*100).toFixed(0)}%`)}}});function me(){return z}function ge(){return z.initialized&&z.kernel!==null&&z.queen!==null}function kX(o,e){if(z.topology!=="hierarchical"){let i={agentId:o,domain:e,level:"worker",spawnedAt:new Date};return z.agentLevels.set(o,i),"worker"}let r=Array.from(z.agentLevels.values()).find(i=>i.domain===e&&i.level==="lead")?"worker":"lead",n={agentId:o,domain:e,level:r,spawnedAt:new Date};return z.agentLevels.set(o,n),r}function PX(o){return z.agentLevels.get(o)}async function Fg(o){try{if(z.initialized&&z.kernel&&z.queen)return{success:!0,data:{fleetId:z.fleetId,topology:o.topology||"hierarchical",maxAgents:o.maxAgents||15,enabledDomains:o.enabledDomains||xX,status:"ready"}};z.fleetId=`fleet-${E().slice(0,8)}`;let e=o.enabledDomains||[...Z],t=e.filter(c=>c!=="coordination");z.kernel=new gT({maxConcurrentAgents:o.maxAgents||15,memoryBackend:o.memoryBackend||"hybrid",hnswEnabled:!0,lazyLoading:o.lazyLoading!==!1,enabledDomains:e}),await z.kernel.initialize(),z.router=new YT(z.kernel.eventBus),await z.router.initialize();let r=c=>z.kernel.getDomainAPI(c),n=new Fw(z.kernel.eventBus,z.kernel.memory,r),i=z.kernel.plugins;await i.loadAll();let s=new Map;for(let c of i.getLoaded()){let l=i.getPlugin(c);l&&s.set(c,l)}z.queen=j5(z.kernel,z.router,n,void 0,s),await z.queen.initialize(),z.workflowOrchestrator=new Cm(z.kernel.eventBus,z.kernel.memory,z.kernel.coordinator),await z.workflowOrchestrator.initialize(),Ebe(z.kernel,z.workflowOrchestrator);let{subscribeTrajectoryEvents:a}=await Promise.resolve().then(()=>(Hw(),EN));return a(z.router),z.initialized=!0,z.initTime=new Date,z.topology=o.topology||"hierarchical",z.agentLevels.clear(),{success:!0,data:{fleetId:z.fleetId,topology:z.topology,maxAgents:o.maxAgents||15,enabledDomains:t,status:"initialized"}}}catch(e){return{success:!1,error:`Failed to initialize fleet: ${S(e)}`}}}async function RN(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{let e=z.queen.getHealth(),t=z.queen.getMetrics(),r={status:e.status,uptime:t.uptime,agents:{total:e.totalAgents,active:e.activeAgents,idle:e.totalAgents-e.activeAgents},tasks:{pending:e.pendingTasks,running:e.runningTasks,completed:t.tasksCompleted,failed:t.tasksFailed}};if(o.includeDomains){let i=[];for(let[s,a]of e.domainHealth)i.push({domain:s,status:a.status,agents:a.agents.total,load:z.queen.getDomainLoad(s)});r.domains=i}let n=z.queen.getDomainTeamManager?.();if(n){let i=n.listDomainTeams(),s=0,a=0;for(let c of i)s+=1+c.teammateIds.length,n.getTeamHealth(c.domain)?.healthy&&a++;r.teams={active:i.length,totalAgentsInTeams:s,healthyCount:a}}o.includeMetrics&&(r.metrics={tasksReceived:t.tasksReceived,tasksCompleted:t.tasksCompleted,tasksFailed:t.tasksFailed,agentUtilization:t.agentUtilization,averageTaskDuration:t.averageTaskDuration});try{let{getUnifiedMemory:i}=await Promise.resolve().then(()=>(Y(),Cr)),s=i();if(s.isInitialized()){let a=l=>{try{return s.queryCount(l)}catch{return 0}},c=await s.vectorCount();r.learning={totalPatterns:a("qe_patterns"),totalExperiences:a("captured_experiences"),totalTrajectories:a("qe_trajectories"),vectorCount:c,experienceApplications:a("experience_applications"),dreamCycles:a("dream_cycles"),embeddingDimension:384}}}catch{}return{success:!0,data:r}}catch(e){return{success:!1,error:`Failed to get fleet status: ${S(e)}`}}}async function AN(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{if(o.domain){let r=z.queen.getDomainHealth(o.domain);return r?{success:!0,data:{domain:o.domain,status:r.status,agents:r.agents,errors:r.errors,lastActivity:r.lastActivity?.toISOString()}}:{success:!1,error:`Domain not found: ${o.domain}`}}let e=z.queen.getHealth(),t={status:e.status,totalAgents:e.totalAgents,activeAgents:e.activeAgents,pendingTasks:e.pendingTasks,runningTasks:e.runningTasks,workStealingActive:e.workStealingActive,lastHealthCheck:e.lastHealthCheck.toISOString()};if(o.detailed){let r={};for(let[n,i]of e.domainHealth)r[n]={status:i.status,agents:i.agents,errors:i.errors.length,lastActivity:i.lastActivity?.toISOString()};t.domains=r,t.issues=e.issues.map(n=>({severity:n.severity,message:n.message,domain:n.domain,timestamp:n.timestamp.toISOString()}))}try{let{StructuralHealthMonitor:r}=await Promise.resolve().then(()=>(AX(),RX)),n=new r,i=[];for(let[c]of e.domainHealth){let l=z.queen.getAgentsByDomain(c);for(let u of l)i.push({id:u.id,name:u.name,domain:u.domain})}let s=i.map(c=>({id:c.id,name:c.name,domain:c.domain,capabilities:[c.domain],dependsOn:[],weight:1})),a=n.computeFleetHealth(s);t.structuralHealth={lambda:a.lambda,healthy:a.healthy,normalizedLambda:a.normalizedLambda,riskScore:a.riskScore,status:a.status,weakPoints:a.weakPoints,suggestions:a.suggestions}}catch{}return{success:!0,data:t}}catch(e){return{success:!1,error:`Failed to get fleet health: ${S(e)}`}}}async function xN(){if(oK(),zS(),hX(),z.workflowOrchestrator&&(await z.workflowOrchestrator.dispose(),z.workflowOrchestrator=null),z.queen&&(await z.queen.dispose(),z.queen=null),z.router){try{let{unsubscribeTrajectoryEvents:o}=await Promise.resolve().then(()=>(Hw(),EN));o(z.router)}catch{}await z.router.dispose(),z.router=null}z.kernel&&(await z.kernel.dispose(),z.kernel=null),z.initialized=!1,z.fleetId=null,z.initTime=null,z.topology="hierarchical",z.agentLevels.clear()}async function kN(){let o=performance.now();try{let e=ge(),t=z.initTime?Date.now()-z.initTime.getTime():0,r={connected:!1,totalEntries:0,namespaces:0},n={enabled:!1,vectorCount:0},i=0;if(e&&z.kernel){let u=z.kernel.memory;try{r.connected=!0;let d=await u.count("default"),p=await u.count("learning"),m=await u.count("patterns");r.totalEntries=d+p+m;let g=0;for(let h of["default","learning","patterns","mcp-tools","coordination"])await u.count(h)>0&&g++;r.namespaces=g}catch{}try{let d=process.env.AQE_V3_HNSW_ENABLED==="true";n.enabled=d;let p=u;d&&typeof p.vectorCount=="function"&&(n.vectorCount=await p.vectorCount())}catch{}try{i=(await u.search("pattern:*",1e3)).length}catch{}}let s=e&&z.kernel?(z.kernel.getLoadedDomains?.()??xX).length:0,a=null;try{let{getSharedRvfDualWriterSync:u}=await Promise.resolve().then(()=>(rs(),ya)),d=u();if(d){let p=d.status(),m=d.getDivergenceReport();a={mode:p.mode,vectorCount:p.rvf?.totalVectors??0,divergences:m.divergences,promotionSafe:d.isPromotionSafe()}}}catch{}let c=null;try{let{SQLitePatternStore:u}=await Promise.resolve().then(()=>(Rc(),HM)),d=new u;await d.initialize(),c=d.getGhostPatternCount(),d.close()}catch{}return{success:!0,data:{status:e?"healthy":"unhealthy",version:"3.9.27",loadedDomains:s,memory:r,hnsw:n,rvf:a??void 0,ghostPatterns:c??void 0,loadedPatterns:i,uptimeMs:t,timestamp:new Date().toISOString()},metadata:{executionTime:performance.now()-o,timestamp:new Date().toISOString(),requestId:E(),toolName:"aqe_health"}}}catch(e){return{success:!1,error:S(e),metadata:{executionTime:performance.now()-o,timestamp:new Date().toISOString(),requestId:E(),toolName:"aqe_health"}}}}function Ebe(o,e){let t=o.getDomainAPI("requirements-validation");t?.registerWorkflowActions&&(t.registerWorkflowActions(e),console.log("[Fleet] Registered requirements-validation workflow actions (includes QCSD Ideation)"));let r=o.getDomainAPI("visual-accessibility");r?.registerWorkflowActions&&(r.registerWorkflowActions(e),console.log("[Fleet] Registered visual-accessibility workflow actions"))}var xX,z,hs=y(()=>{"use strict";N();E3();L();Q5();RD();K5();jL();VS();CN();fX();k();xX=Z.filter(o=>o!=="coordination"),z={fleetId:null,kernel:null,queen:null,router:null,workflowOrchestrator:null,initialized:!1,initTime:null,topology:"hierarchical",agentLevels:new Map}});import{randomUUID as lCe}from"crypto";var $e,ir=y(()=>{"use strict";k();$e=class{constructor(e){this.config=e}config;_status="idle";_lastResult;_lastRunAt;_nextRunAt;_totalExecutions=0;_successfulExecutions=0;_failedExecutions=0;_executionDurations=[];_recentResults=[];get status(){return this._status}get lastResult(){return this._lastResult}get lastRunAt(){return this._lastRunAt}get nextRunAt(){return this._nextRunAt}async initialize(){this._status="idle",this._nextRunAt=new Date(Date.now()+this.config.intervalMs)}async execute(e){let t=Date.now();this._status="running",this._lastRunAt=new Date,this._totalExecutions++;let r,n;for(let s=0;s<=this.config.retryCount;s++)try{if(e.signal.aborted)throw new Error("Worker execution aborted");n=await this.executeWithTimeout(()=>this.doExecute(e),this.config.timeoutMs,e.signal);break}catch(a){r=w(a),e.logger.warn(`Worker ${this.config.id} attempt ${s+1} failed: ${r.message}`),s<this.config.retryCount&&await this.delay(this.config.retryDelayMs)}let i=Date.now()-t;return n?(this._successfulExecutions++,this._lastResult=n):(this._failedExecutions++,n=this.createErrorResult(r,i),this._lastResult=n),this._executionDurations.push(i),this._executionDurations.length>100&&this._executionDurations.shift(),this._recentResults.push({timestamp:new Date,success:n.success,durationMs:i}),this._recentResults.length>5&&this._recentResults.shift(),this._nextRunAt=new Date(Date.now()+this.config.intervalMs),this._status=n.success?"idle":"error",await e.eventBus.publish({type:"worker.executed",workerId:this.config.id,timestamp:new Date,payload:{success:n.success,durationMs:i,findingsCount:n.findings.length,healthScore:n.metrics.healthScore}}),n}pause(){this._status!=="stopped"&&(this._status="paused")}resume(){this._status==="paused"&&(this._status="idle")}async stop(){this._status="stopped"}getHealth(){let e=this._executionDurations.length>0?this._executionDurations.reduce((r,n)=>r+n,0)/this._executionDurations.length:0,t=this._totalExecutions>0?this._successfulExecutions/this._totalExecutions:1;return{status:this._status,healthScore:Math.round(t*100),totalExecutions:this._totalExecutions,successfulExecutions:this._successfulExecutions,failedExecutions:this._failedExecutions,avgDurationMs:Math.round(e),recentResults:[...this._recentResults]}}async executeWithTimeout(e,t,r){return new Promise((n,i)=>{let s=setTimeout(()=>{i(new Error(`Worker execution timed out after ${t}ms`))},t),a=()=>{clearTimeout(s),i(new Error("Worker execution aborted"))};r.addEventListener("abort",a,{once:!0}),e().then(c=>{clearTimeout(s),r.removeEventListener("abort",a),n(c)}).catch(c=>{clearTimeout(s),r.removeEventListener("abort",a),i(c)})})}createErrorResult(e,t){return{workerId:this.config.id,timestamp:new Date,durationMs:t,success:!1,error:e.message,metrics:{itemsAnalyzed:0,issuesFound:0,healthScore:0,trend:"degrading",domainMetrics:{}},findings:[],recommendations:[]}}createResult(e,t,r,n){return{workerId:this.config.id,timestamp:new Date,durationMs:e,success:!0,metrics:t,findings:r,recommendations:n}}delay(e){return new Promise(t=>setTimeout(t,e))}generateId(){return`${Date.now()}-${lCe().slice(0,9)}`}}});var uCe,Pl,mO=y(()=>{"use strict";ir();bw();Y();KF();k();uCe={id:"heartbeat-scheduler",name:"Heartbeat Scheduler",description:"Token-free maintenance: pattern promotion, stale detection, experience buffer monitoring",intervalMs:1800*1e3,priority:"normal",targetDomains:["learning-optimization"],enabled:!0,timeoutMs:6e4,retryCount:1,retryDelayMs:5e3},Pl=class extends $e{lifecycleManager=null;dailyLogger;lastRunTimestamp=0;constructor(){super(uCe),this.dailyLogger=new hg}async getLifecycleManager(){if(this.lifecycleManager)return this.lifecycleManager;try{let e=V();await e.initialize();let t=e.getDatabase();return this.lifecycleManager=gg(t,{promotionRewardThreshold:.7,promotionMinOccurrences:2,promotionMinSuccessRate:.7,deprecationFailureThreshold:3,staleDaysThreshold:30,confidenceDecayRate:.01,minActiveConfidence:.3}),this.lifecycleManager}catch{return null}}getPendingExperienceCount(){try{return V().getDatabase().prepare("SELECT COUNT(*) as pending FROM qe_pattern_usage WHERE created_at > datetime('now', '-1 day')").get()?.pending??0}catch{return 0}}async doExecute(e){let t=Date.now();e.logger.info("Heartbeat scheduler running (token-free maintenance)");let r=[],n=[],i=await this.getLifecycleManager();if(!i)return e.logger.warn("Unified memory unavailable \u2014 returning zero-metric heartbeat"),this.createResult(Date.now()-t,{itemsAnalyzed:0,issuesFound:0,healthScore:50,trend:"stable",domainMetrics:{promoted:0,deprecated:0,decayed:0,stalePatterns:0,pendingExperiences:0,avgConfidence:0,avgSuccessRate:0}},[],[]);let s=0,a=0;try{let b=i.promoteEligiblePatterns();s=b.promoted,a=b.checked,s>0&&r.push({type:"heartbeat-promotion",severity:"info",domain:"learning-optimization",title:"Patterns Promoted",description:`${s} of ${a} short-term patterns promoted to long-term`})}catch(b){e.logger.warn("Pattern promotion failed",{error:S(b)})}let c=0,l=0;try{let b=i.deprecateStalePatterns();c=b.deprecated,l=b.checked,c>0&&r.push({type:"heartbeat-deprecation",severity:"low",domain:"learning-optimization",title:"Stale Patterns Deprecated",description:`${c} of ${l} patterns deprecated (stale, failed, or low confidence)`})}catch(b){e.logger.warn("Stale pattern detection failed",{error:S(b)})}let u=0;try{let b=this.lastRunTimestamp>0?(Date.now()-this.lastRunTimestamp)/864e5:1;u=i.applyConfidenceDecay(Math.min(b,7)).decayed}catch(b){e.logger.warn("Confidence decay failed",{error:S(b)})}let d=this.getPendingExperienceCount(),p={totalPatterns:0,activePatterns:0,deprecatedPatterns:0,promotedPatterns:0,shortTermPatterns:0,longTermPatterns:0,avgConfidence:0,avgSuccessRate:0,patternsNearDeprecation:0};try{p=i.getStats()}catch(b){e.logger.warn("Stats retrieval failed",{error:S(b)})}try{this.dailyLogger.log({timestamp:new Date,type:"pattern-promoted",summary:`Heartbeat: ${s} promoted, ${c} deprecated, ${u} decayed, ${d} pending exp, ${p.activePatterns} active patterns (avg conf: ${p.avgConfidence.toFixed(2)})`,details:{promoted:s,deprecated:c,decayed:u,pendingExperiences:d,totalPatterns:p.totalPatterns,activePatterns:p.activePatterns,avgConfidence:p.avgConfidence,avgSuccessRate:p.avgSuccessRate}}),this.dailyLogger.flush()}catch(b){e.logger.warn("Daily log write failed",{error:S(b)})}this.lastRunTimestamp=Date.now(),p.activePatterns>0&&p.patternsNearDeprecation/p.activePatterns>.5&&n.push({priority:"p2",domain:"learning-optimization",action:"Review At-Risk Patterns",description:`${p.patternsNearDeprecation} of ${p.activePatterns} active patterns are near deprecation. Manual review recommended.`,estimatedImpact:"medium",effort:"low",autoFixable:!1});let m=this.calculateHealthScore(p,s,c),g=this.determineTrend(s,c,p.activePatterns),h=Math.max(a,l),v=s+c+p.patternsNearDeprecation;return e.logger.info("Heartbeat complete",{promoted:s,deprecated:c,decayed:u,pendingExperiences:d,healthScore:m}),this.createResult(Date.now()-t,{itemsAnalyzed:h,issuesFound:v,healthScore:m,trend:g,domainMetrics:{promoted:s,deprecated:c,decayed:u,stalePatterns:p.patternsNearDeprecation,pendingExperiences:d,avgConfidence:Number(p.avgConfidence.toFixed(3)),avgSuccessRate:Number(p.avgSuccessRate.toFixed(3))}},r,n)}calculateHealthScore(e,t,r){let n=70;if(n+=Math.min(15,t*5),e.avgConfidence>0&&(n+=Math.round((e.avgConfidence-.5)*30)),e.activePatterns>0){let i=r/e.activePatterns;n-=Math.round(i*20)}return e.activePatterns>0&&e.patternsNearDeprecation/e.activePatterns>.5&&(n-=10),Math.max(0,Math.min(100,Math.round(n)))}determineTrend(e,t,r){return r===0?"stable":e>t?"improving":t>e&&t/r>.1?"degrading":"stable"}}});var _1,L1,F1,QE,KE,XE,a7=y(()=>{"use strict";_1=class{handlers=[];async publish(e){for(let t of this.handlers)try{t(e)}catch(r){console.debug("[WorkerManager] Event handler error:",r instanceof Error?r.message:r)}}subscribe(e){return this.handlers.push(e),()=>{let t=this.handlers.indexOf(e);t>=0&&this.handlers.splice(t,1)}}dispose(){this.handlers=[]}get handlerCount(){return this.handlers.length}},L1=class{store=new Map;async get(e){return this.store.get(e)}async set(e,t){this.store.set(e,t)}async search(e){let t=e.replace(/[.+?^${}()|[\]\\]/g,"\\$&"),r=new RegExp(t.replace(/\*/g,".*"));return Array.from(this.store.keys()).filter(n=>r.test(n))}clear(){this.store.clear()}get size(){return this.store.size}},F1=class{constructor(e){this.workerId=e}workerId;format(e,t,r){let n=new Date().toISOString(),i=r?` ${JSON.stringify(r)}`:"";return`[${n}] [${e}] [${this.workerId}] ${t}${i}`}debug(e,t){process.env.DEBUG&&console.debug(this.format("DEBUG",e,t))}info(e,t){console.info(this.format("INFO",e,t))}warn(e,t){console.warn(this.format("WARN",e,t))}error(e,t){console.error(this.format("ERROR",e,t))}},QE=class{constructor(e){this.kernelGetter=e}kernelGetter;getDomainAPI(e){let t=this.kernelGetter();if(t)return t.getDomainAPI(e)}getDomainHealth(e){let t=this.kernelGetter();if(!t)return{status:"unknown",errors:["Kernel not available"]};let n=t.getHealth().domains[e];return n?{status:n.status,errors:n.errors||[]}:{status:"unknown",errors:[`Domain ${e} not found`]}}},KE=class{getDomainAPI(e){}getDomainHealth(e){return{status:"healthy",errors:[]}}},XE=class{workers=new Map;timers=new Map;abortControllers=new Map;eventBus;memory;domainAccess;running=!1;kernelRef;constructor(e){this.eventBus=e?.eventBus??new _1,this.memory=e?.memory??new L1,this.kernelRef=e?.kernel,e?.domainAccess?this.domainAccess=e.domainAccess:e?.kernel?this.domainAccess=new QE(()=>this.kernelRef):this.domainAccess=new KE}setKernel(e){this.kernelRef=e,this.domainAccess instanceof KE&&(this.domainAccess=new QE(()=>this.kernelRef))}register(e){if(this.workers.has(e.config.id))throw new Error(`Worker ${e.config.id} is already registered`);this.workers.set(e.config.id,e)}unregister(e){this.workers.get(e)&&(this.stopWorker(e),this.workers.delete(e))}get(e){return this.workers.get(e)}list(){return Array.from(this.workers.values())}async startAll(){this.running=!0;for(let e of Array.from(this.workers.values()))e.config.enabled&&await this.startWorker(e)}async stopAll(){this.running=!1;let e=[];for(let t of Array.from(this.workers.keys()))e.push(this.stopWorker(t));await Promise.all(e)}async runNow(e){let t=this.workers.get(e);if(!t)throw new Error(`Worker ${e} not found`);let r=this.timers.get(e);r&&clearTimeout(r);let n=new AbortController;this.abortControllers.set(e,n);let i=this.createContext(e,n.signal),s=await t.execute(i);return this.running&&t.config.enabled&&t.status!=="stopped"&&this.scheduleNextRun(t),s}getHealth(){let e={},t=0,r=0,n=0,i=0;for(let[a,c]of Array.from(this.workers.entries())){let l=c.getHealth();switch(e[a]=l,i+=l.healthScore,c.status){case"running":t++;break;case"paused":r++;break;case"error":n++;break}}let s=this.workers.size>0?Math.round(i/this.workers.size):100;return{totalWorkers:this.workers.size,runningWorkers:t,pausedWorkers:r,errorWorkers:n,healthScore:s,workers:e}}onWorkerEvent(e){return this.eventBus.subscribe(e)}async startWorker(e){await e.initialize();let t=new AbortController;this.abortControllers.set(e.config.id,t);let r=this.createContext(e.config.id,t.signal);try{await e.execute(r)}catch(n){console.error(`Worker ${e.config.id} initial execution failed:`,n)}this.scheduleNextRun(e)}async stopWorker(e){let t=this.timers.get(e);t&&(clearTimeout(t),this.timers.delete(e));let r=this.abortControllers.get(e);r&&(r.abort(),this.abortControllers.delete(e));let n=this.workers.get(e);n&&await n.stop()}scheduleNextRun(e){let t=setTimeout(async()=>{if(!this.running||e.status==="stopped"||e.status==="paused")return;let r=new AbortController;this.abortControllers.set(e.config.id,r);let n=this.createContext(e.config.id,r.signal);try{await e.execute(n)}catch(i){console.error(`Worker ${e.config.id} execution failed:`,i)}this.running&&e.config.enabled&&e.status!=="error"&&this.scheduleNextRun(e)},e.config.intervalMs);this.timers.set(e.config.id,t)}createContext(e,t){return{eventBus:this.eventBus,memory:this.memory,logger:new F1(e),domains:this.domainAccess,signal:t}}}});var fEe,th,o7=y(()=>{"use strict";ir();k();fEe={id:"test-health",name:"Test Health Monitor",description:"Monitors test suite health metrics including pass rates, execution times, and reliability",intervalMs:300*1e3,priority:"high",targetDomains:["test-execution","test-generation"],enabled:!0,timeoutMs:6e4,retryCount:2,retryDelayMs:5e3},th=class extends $e{previousMetrics;constructor(){super(fEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting test health analysis");let r=[],n=[],i=await this.collectMetrics(e);this.analyzePassRate(i,r,n),this.analyzeExecutionTime(i,r,n),this.analyzeReliability(i,r,n),this.analyzeGrowth(i,r,n),this.compareToPrevious(i,r,n),await e.memory.set("test-health:previous-metrics",i),this.previousMetrics=i;let s=this.calculateHealthScore(i),a=this.determineTrend(i);return e.logger.info("Test health analysis complete",{healthScore:s,findingsCount:r.length}),this.createResult(Date.now()-t,{itemsAnalyzed:i.totalTests,issuesFound:r.length,healthScore:s,trend:a,domainMetrics:{passRate:`${(i.passingTests/i.totalTests*100).toFixed(1)}%`,avgExecutionTime:`${i.avgExecutionTimeMs}ms`,reliability:`${i.reliability}%`,totalTests:i.totalTests}},r,n)}async collectMetrics(e){let t=await e.memory.get("test-health:previous-metrics");if(t&&(this.previousMetrics=t),!e.domains.getDomainAPI("test-execution"))throw new Error("Test-execution domain not available - cannot compute health metrics. Ensure the test-execution domain is properly initialized before running this worker.");try{let n=await e.memory.search("test-health:run-result:*");if(n.length===0)throw new Error('No test run data found in memory - cannot compute health metrics. Run some tests first or ensure test results are being stored with keys matching "test-health:run-result:*".');let i=0,s=0,a=0,c=0,l=0,u=0;for(let g of n.slice(0,50)){let h=await e.memory.get(g);h&&(i+=h.total,s+=h.passed,a+=h.failed,c+=h.skipped,l+=h.duration,u++)}let d=u>0?Math.round(l/u):0,p=i>0?Math.round(s/i*100):0,m=await e.memory.get("test-health:growth-metrics");return{totalTests:i||0,passingTests:s||0,failingTests:a||0,skippedTests:c||0,avgExecutionTimeMs:d,reliability:p,growth:{testsAddedLast7Days:m?.testsAddedLast7Days||0,testsRemovedLast7Days:m?.testsRemovedLast7Days||0}}}catch(n){let i=S(n);throw new Error(`Failed to collect test health metrics: ${i}. Check memory service connectivity and test result data availability.`)}}analyzePassRate(e,t,r){let n=e.passingTests/e.totalTests*100;n<95&&(t.push({type:"low-pass-rate",severity:n<90?"high":"medium",domain:"test-execution",title:"Low Test Pass Rate",description:`Test pass rate is ${n.toFixed(1)}%, below the 95% target`,context:{passing:e.passingTests,failing:e.failingTests,total:e.totalTests}}),r.push({priority:"p1",domain:"test-execution",action:"Investigate Failing Tests",description:`${e.failingTests} tests are currently failing. Review and fix to improve pass rate.`,estimatedImpact:"high",effort:"medium",autoFixable:!1}))}analyzeExecutionTime(e,t,r){e.avgExecutionTimeMs>500&&(t.push({type:"slow-tests",severity:e.avgExecutionTimeMs>1e3?"high":"medium",domain:"test-execution",title:"Slow Test Execution",description:`Average test execution time is ${e.avgExecutionTimeMs}ms, consider optimization`,context:{avgExecutionTimeMs:e.avgExecutionTimeMs}}),r.push({priority:"p2",domain:"test-execution",action:"Optimize Test Execution Time",description:"Review and optimize slow-running tests. Consider parallelization or mocking slow dependencies.",estimatedImpact:"medium",effort:"medium",autoFixable:!1}))}analyzeReliability(e,t,r){e.reliability<95&&(t.push({type:"reliability-issue",severity:e.reliability<85?"high":"medium",domain:"test-execution",title:"Test Reliability Concern",description:`Test reliability score is ${e.reliability}%, indicating potential flaky tests`,context:{reliability:e.reliability}}),r.push({priority:"p1",domain:"test-execution",action:"Address Flaky Tests",description:"Identify and fix flaky tests to improve overall test reliability.",estimatedImpact:"high",effort:"medium",autoFixable:!1}))}analyzeGrowth(e,t,r){let n=e.growth.testsAddedLast7Days-e.growth.testsRemovedLast7Days;n<0&&(t.push({type:"test-coverage-decline",severity:"medium",domain:"test-generation",title:"Test Coverage Declining",description:`Net loss of ${Math.abs(n)} tests in the last 7 days`,context:{added:e.growth.testsAddedLast7Days,removed:e.growth.testsRemovedLast7Days}}),r.push({priority:"p2",domain:"test-generation",action:"Review Test Coverage Strategy",description:"More tests are being removed than added. Ensure adequate test coverage is maintained.",estimatedImpact:"medium",effort:"low",autoFixable:!1}))}compareToPrevious(e,t,r){if(!this.previousMetrics)return;let n=e.passingTests/e.totalTests-this.previousMetrics.passingTests/this.previousMetrics.totalTests;n<-.05&&t.push({type:"pass-rate-regression",severity:"high",domain:"test-execution",title:"Pass Rate Regression Detected",description:`Pass rate dropped by ${(Math.abs(n)*100).toFixed(1)}% since last check`,context:{previousPassRate:`${(this.previousMetrics.passingTests/this.previousMetrics.totalTests*100).toFixed(1)}%`,currentPassRate:`${(e.passingTests/e.totalTests*100).toFixed(1)}%`}})}calculateHealthScore(e){let t=e.passingTests/e.totalTests*40,r=e.reliability/100*30,n=Math.max(0,20-e.avgExecutionTimeMs/100),i=Math.min(10,e.growth.testsAddedLast7Days/10*10);return Math.round(t+r+n+i)}determineTrend(e){if(!this.previousMetrics)return"stable";let t=e.passingTests/e.totalTests,r=this.previousMetrics.passingTests/this.previousMetrics.totalTests;return t>r+.02?"improving":t<r-.02?"degrading":"stable"}}});var yEe,rh,c7=y(()=>{"use strict";ir();yEe={id:"coverage-tracker",name:"Coverage Tracker",description:"Tracks coverage trends over time including gaps, hotspots, and critical paths",intervalMs:600*1e3,priority:"high",targetDomains:["coverage-analysis","test-generation"],enabled:!0,timeoutMs:12e4,retryCount:2,retryDelayMs:1e4},rh=class extends $e{constructor(){super(yEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting coverage tracking analysis");let r=[],n=[],i=await this.collectCoverageTrend(e),s=await this.identifyCoverageGaps(e);this.analyzeCoverageThresholds(i.current,r,n),this.analyzeCoverageGaps(s,r,n),this.analyzeCoverageTrends(i,r,n),await e.memory.set("coverage:current",i.current),await e.memory.set("coverage:gaps",s);let a=this.calculateHealthScore(i.current,s);return e.logger.info("Coverage tracking complete",{healthScore:a,findingsCount:r.length,gapsFound:s.length}),this.createResult(Date.now()-t,{itemsAnalyzed:s.length+4,issuesFound:r.length,healthScore:a,trend:this.determineTrend(i),domainMetrics:{lineCoverage:`${i.current.line}%`,branchCoverage:`${i.current.branch}%`,functionCoverage:`${i.current.function}%`,statementCoverage:`${i.current.statement}%`,gapsCount:s.length}},r,n)}async collectCoverageTrend(e){let t=await e.memory.get("coverage:current"),r=await e.memory.get("coverage:latest");return{current:{line:r?.line??0,branch:r?.branch??0,function:r?.function??0,statement:r?.statement??0,timestamp:new Date},previous:t}}async identifyCoverageGaps(e){let t=await e.memory.search("gap-pattern:*");if(t.length>0){let r=[];for(let n of t){let i=await e.memory.get(n);i&&typeof i.riskScore=="number"&&r.push(i)}if(r.length>0)return r}return[]}analyzeCoverageThresholds(e,t,r){let n={line:80,branch:70,function:80,statement:80};e.line<n.line&&t.push({type:"low-line-coverage",severity:e.line<60?"high":"medium",domain:"coverage-analysis",title:"Line Coverage Below Threshold",description:`Line coverage is ${e.line}%, below ${n.line}% target`,context:{current:e.line,target:n.line}}),e.branch<n.branch&&(t.push({type:"low-branch-coverage",severity:e.branch<50?"high":"medium",domain:"coverage-analysis",title:"Branch Coverage Below Threshold",description:`Branch coverage is ${e.branch}%, below ${n.branch}% target`,context:{current:e.branch,target:n.branch}}),r.push({priority:"p1",domain:"test-generation",action:"Improve Branch Coverage",description:"Add tests for uncovered conditional branches. Focus on complex decision points.",estimatedImpact:"high",effort:"medium",autoFixable:!0})),e.function<n.function&&t.push({type:"low-function-coverage",severity:"medium",domain:"coverage-analysis",title:"Function Coverage Below Threshold",description:`Function coverage is ${e.function}%, below ${n.function}% target`,context:{current:e.function,target:n.function}})}analyzeCoverageGaps(e,t,r){let n=e.filter(s=>s.riskScore>.8);for(let s of n)t.push({type:"high-risk-coverage-gap",severity:"high",domain:"coverage-analysis",title:"High-Risk Coverage Gap",description:`${s.file} has ${s.uncoveredLines} uncovered lines with complexity ${s.complexity}`,resource:s.file,context:{uncoveredLines:s.uncoveredLines,totalLines:s.totalLines,coveragePercent:((s.totalLines-s.uncoveredLines)/s.totalLines*100).toFixed(1),complexity:s.complexity,riskScore:s.riskScore}});n.length>0&&r.push({priority:"p0",domain:"test-generation",action:"Address High-Risk Coverage Gaps",description:`${n.length} files have high-risk coverage gaps. Prioritize testing for complex, uncovered code.`,estimatedImpact:"high",effort:"high",autoFixable:!0});let i=e.filter(s=>(s.totalLines-s.uncoveredLines)/s.totalLines<.5);i.length>0&&t.push({type:"critical-coverage-gaps",severity:"critical",domain:"coverage-analysis",title:"Critical Coverage Gaps Detected",description:`${i.length} files have less than 50% coverage`,context:{files:i.map(s=>s.file)}})}analyzeCoverageTrends(e,t,r){if(!e.previous)return;let n=e.current.line-e.previous.line,i=e.current.branch-e.previous.branch;n<-2&&(t.push({type:"coverage-regression",severity:n<-5?"high":"medium",domain:"coverage-analysis",title:"Coverage Regression Detected",description:`Line coverage dropped by ${Math.abs(n).toFixed(1)}% since last check`,context:{previous:e.previous.line,current:e.current.line,change:n}}),r.push({priority:"p1",domain:"test-generation",action:"Investigate Coverage Regression",description:"Recent changes have reduced code coverage. Review new code and add missing tests.",estimatedImpact:"high",effort:"medium",autoFixable:!1})),i<-3&&t.push({type:"branch-coverage-regression",severity:"medium",domain:"coverage-analysis",title:"Branch Coverage Regression",description:`Branch coverage dropped by ${Math.abs(i).toFixed(1)}%`,context:{previous:e.previous.branch,current:e.current.branch,change:i}})}calculateHealthScore(e,t){let r=e.line/100*25,n=e.branch/100*25,i=e.function/100*20,s=e.statement/100*20,a=t.filter(l=>l.riskScore>.8).length,c=Math.max(0,10-a*2);return Math.round(r+n+i+s+c)}determineTrend(e){if(!e.previous)return"stable";let t=(e.current.line+e.current.branch+e.current.function+e.current.statement)/4,r=(e.previous.line+e.previous.branch+e.previous.function+e.previous.statement)/4;return t>r+1?"improving":t<r-1?"degrading":"stable"}}});var vEe,nh,l7=y(()=>{"use strict";ir();vEe={id:"flaky-detector",name:"Flaky Test Detector",description:"Detects flaky test patterns through statistical analysis of test execution history",intervalMs:900*1e3,priority:"high",targetDomains:["test-execution"],enabled:!0,timeoutMs:18e4,retryCount:2,retryDelayMs:1e4},nh=class extends $e{constructor(){super(vEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting flaky test detection");let r=[],n=[],i=await this.collectTestHistory(e),s=this.detectFlakyTests(i);this.generateFindings(s,r,n),await e.memory.set("flaky:detected",s),await e.memory.set("flaky:lastAnalysis",new Date().toISOString());let a=this.calculateHealthScore(i.length,s);return e.logger.info("Flaky test detection complete",{healthScore:a,testsAnalyzed:i.length,flakyTestsFound:s.length}),this.createResult(Date.now()-t,{itemsAnalyzed:i.length,issuesFound:s.length,healthScore:a,trend:"stable",domainMetrics:{testsAnalyzed:i.length,flakyTests:s.length,flakinessRate:`${(s.length/i.length*100).toFixed(1)}%`,avgFlakinessScore:s.length>0?(s.reduce((c,l)=>c+l.flakinessScore,0)/s.length).toFixed(1):"0"}},r,n)}async collectTestHistory(e){if(!e.domains.getDomainAPI("test-execution"))throw new Error("Test-execution domain not available - cannot detect flaky tests. Ensure the test-execution domain is properly initialized before running this worker.");let r=await e.memory.search("flaky:history:*");if(r.length===0)throw new Error('No test execution history found in memory - cannot detect flaky tests. Run tests multiple times and ensure history is stored with keys matching "flaky:history:*" before running this worker.');let n=[],i=[];for(let s of r)try{let a=await e.memory.get(s);a&&n.push(a)}catch{i.push(s)}if(n.length===0)throw new Error(`Found ${r.length} test history keys but failed to retrieve any data. Failed keys: ${i.slice(0,5).join(", ")}${i.length>5?"...":""}. Check memory service connectivity and data format.`);return n}detectFlakyTests(e){let t=[];for(let r of e){let n=this.analyzeTestFlakiness(r);n.flakinessScore>20&&t.push(n)}return t.sort((r,n)=>n.flakinessScore-r.flakinessScore)}analyzeTestFlakiness(e){let t=e.executions,n=t.filter(g=>g.passed).length/t.length,i=t.map(g=>g.durationMs),s=i.reduce((g,h)=>g+h,0)/i.length,a=i.reduce((g,h)=>g+Math.pow(h-s,2),0)/i.length,l=Math.sqrt(a)/s,u=t.slice(-5).filter(g=>!g.passed).length,d=this.determinePattern(e,l),p=0;n>0&&n<1&&(p+=(1-n)*50),l>.5&&(p+=Math.min(25,l*10)),p+=u*5;let m=this.suggestFix(d);return{testId:e.testId,testName:e.testName,file:e.file,flakinessScore:Math.min(100,Math.round(p)),pattern:d,passRate:n*100,avgDuration:s,durationVariance:l,recentFailures:u,suggestedFix:m}}determinePattern(e,t){let r=e.executions.filter(i=>!i.passed);if(t>1||r.some(i=>i.error?.includes("Timeout")))return"timing";if(r.some(i=>i.error?.includes("Resource")||i.error?.includes("connection")))return"resource";if(r.some(i=>i.error?.includes("Race")||i.error?.includes("async")))return"intermittent";let n=e.executions.map(i=>i.passed);return this.hasOrderPattern(n)?"order-dependent":"intermittent"}hasOrderPattern(e){let t=e.map((i,s)=>i?-1:s).filter(i=>i>=0);if(t.length<2)return!1;let r=t.every(i=>i%2===0),n=t.every(i=>i%2===1);return r||n}suggestFix(e){switch(e){case"timing":return"Add explicit waits, increase timeouts, or use async utilities like waitFor";case"resource":return"Ensure proper resource cleanup, use test isolation, or implement connection pooling";case"order-dependent":return"Make tests independent, reset state in beforeEach, avoid shared mutable state";case"intermittent":return"Add retry logic, investigate race conditions, or use proper synchronization";default:return"Review test for potential issues with async operations or shared state"}}generateFindings(e,t,r){let n=e.filter(c=>c.flakinessScore>=70),i=e.filter(c=>c.flakinessScore>=50&&c.flakinessScore<70),s=e.filter(c=>c.flakinessScore>=20&&c.flakinessScore<50);for(let c of n)t.push({type:"critical-flaky-test",severity:"critical",domain:"test-execution",title:`Critical Flaky Test: ${c.testName}`,description:`Test has ${c.flakinessScore}% flakiness score with ${c.passRate.toFixed(0)}% pass rate`,resource:c.file,context:{testId:c.testId,pattern:c.pattern,recentFailures:c.recentFailures,suggestedFix:c.suggestedFix}});for(let c of i)t.push({type:"high-flaky-test",severity:"high",domain:"test-execution",title:`Flaky Test: ${c.testName}`,description:`Test has ${c.flakinessScore}% flakiness score (${c.pattern} pattern)`,resource:c.file,context:{testId:c.testId,pattern:c.pattern,suggestedFix:c.suggestedFix}});for(let c of s)t.push({type:"medium-flaky-test",severity:"medium",domain:"test-execution",title:`Potentially Flaky Test: ${c.testName}`,description:`Test shows flakiness indicators (score: ${c.flakinessScore}%)`,resource:c.file,context:{testId:c.testId,pattern:c.pattern}});n.length>0&&r.push({priority:"p0",domain:"test-execution",action:"Fix Critical Flaky Tests",description:`${n.length} tests have critical flakiness. These severely impact CI reliability.`,estimatedImpact:"high",effort:"high",autoFixable:!1});let a=e.filter(c=>c.pattern==="timing");a.length>0&&r.push({priority:"p1",domain:"test-execution",action:"Address Timing-Related Flakiness",description:`${a.length} tests have timing issues. Consider using proper async utilities.`,estimatedImpact:"medium",effort:"medium",autoFixable:!1})}calculateHealthScore(e,t){if(e===0)return 100;let r=t.length/e,n=t.length>0?t.reduce((a,c)=>a+c.flakinessScore,0)/t.length:0,i=100;i-=r*50,i-=n/100*30;let s=t.filter(a=>a.flakinessScore>=70).length;return i-=s*5,Math.max(0,Math.round(i))}}});var bEe,ih,u7=y(()=>{"use strict";ir();bEe={id:"security-scan",name:"Security Vulnerability Scanner",description:"Scans for security vulnerabilities in dependencies, code patterns, and configurations",intervalMs:1800*1e3,priority:"critical",targetDomains:["security-compliance"],enabled:!0,timeoutMs:3e5,retryCount:3,retryDelayMs:3e4},ih=class extends $e{constructor(){super(bEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting security vulnerability scan");let r=[],n=[],i=await this.runSecurityScans(e);this.analyzeDependencyVulnerabilities(i.dependencyVulnerabilities,r,n),this.analyzeCodeSecurityIssues(i.codeSecurityIssues,r,n),i.secretsDetected>0&&this.reportSecretsDetected(i.secretsDetected,r,n),await e.memory.set("security:lastScan",i),await e.memory.set("security:lastScanTime",new Date().toISOString());let s=this.calculateHealthScore(i),a=i.dependencyVulnerabilities.length+i.codeSecurityIssues.length+i.secretsDetected+i.configurationIssues;return e.logger.info("Security scan complete",{healthScore:s,totalIssues:a,criticalIssues:i.dependencyVulnerabilities.filter(c=>c.severity==="critical").length+i.codeSecurityIssues.filter(c=>c.severity==="critical").length}),this.createResult(Date.now()-t,{itemsAnalyzed:a,issuesFound:r.length,healthScore:s,trend:"stable",domainMetrics:{dependencyVulnerabilities:i.dependencyVulnerabilities.length,codeSecurityIssues:i.codeSecurityIssues.length,secretsDetected:i.secretsDetected,configurationIssues:i.configurationIssues,scanDuration:`${i.scanDurationMs}ms`}},r,n)}async runSecurityScans(e){return{dependencyVulnerabilities:[{package:"lodash",version:"4.17.15",severity:"high",cve:"CVE-2021-23337",title:"Command Injection",description:"Lodash versions prior to 4.17.21 are vulnerable to Command Injection via the template function.",fixedIn:"4.17.21"},{package:"minimist",version:"1.2.5",severity:"critical",cve:"CVE-2021-44906",title:"Prototype Pollution",description:"Prototype pollution vulnerability allows attackers to manipulate JavaScript object prototypes.",fixedIn:"1.2.6"}],codeSecurityIssues:[{file:"src/shared/http/http-client.ts",line:45,rule:"no-eval",severity:"high",message:"Avoid using eval() as it can execute arbitrary code",category:"injection"},{file:"src/kernel/memory-backend.ts",line:122,rule:"sql-injection",severity:"medium",message:"Potential SQL injection - use parameterized queries",category:"injection"}],secretsDetected:0,configurationIssues:1,scanDurationMs:2500}}analyzeDependencyVulnerabilities(e,t,r){let n=e.filter(s=>s.severity==="critical"),i=e.filter(s=>s.severity==="high");for(let s of n)t.push({type:"critical-vulnerability",severity:"critical",domain:"security-compliance",title:`Critical Vulnerability in ${s.package}`,description:`${s.title}: ${s.description}`,resource:s.package,context:{cve:s.cve,currentVersion:s.version,fixedIn:s.fixedIn}});for(let s of i)t.push({type:"high-vulnerability",severity:"high",domain:"security-compliance",title:`High Severity Vulnerability in ${s.package}`,description:`${s.title}: ${s.description}`,resource:s.package,context:{cve:s.cve,currentVersion:s.version,fixedIn:s.fixedIn}});n.length>0&&r.push({priority:"p0",domain:"security-compliance",action:"Update Critical Vulnerabilities Immediately",description:`${n.length} packages have critical vulnerabilities. Update immediately to patched versions.`,estimatedImpact:"high",effort:"low",autoFixable:!0}),i.length>0&&r.push({priority:"p1",domain:"security-compliance",action:"Address High Severity Vulnerabilities",description:`${i.length} packages have high severity vulnerabilities. Plan updates within current sprint.`,estimatedImpact:"high",effort:"low",autoFixable:!0})}analyzeCodeSecurityIssues(e,t,r){let n=new Map;for(let a of e){let c=n.get(a.category)||[];c.push(a),n.set(a.category,c)}for(let a of e)t.push({type:`code-security-${a.category}`,severity:a.severity,domain:"security-compliance",title:`Security Issue: ${a.rule}`,description:a.message,resource:`${a.file}:${a.line}`,context:{rule:a.rule,category:a.category}});let i=n.get("injection")||[];i.length>0&&r.push({priority:"p0",domain:"security-compliance",action:"Fix Injection Vulnerabilities",description:`${i.length} potential injection vulnerabilities found. Use parameterized queries and avoid eval().`,estimatedImpact:"high",effort:"medium",autoFixable:!1});let s=n.get("crypto")||[];s.length>0&&r.push({priority:"p1",domain:"security-compliance",action:"Review Cryptographic Implementations",description:`${s.length} cryptographic issues found. Ensure using secure algorithms and proper key management.`,estimatedImpact:"high",effort:"high",autoFixable:!1})}reportSecretsDetected(e,t,r){t.push({type:"secrets-detected",severity:"critical",domain:"security-compliance",title:"Secrets Detected in Codebase",description:`${e} potential secrets/credentials found in source code`,context:{count:e}}),r.push({priority:"p0",domain:"security-compliance",action:"Remove Secrets from Codebase",description:"Immediately rotate any exposed credentials and move them to secure secret management.",estimatedImpact:"high",effort:"medium",autoFixable:!1})}calculateHealthScore(e){let t=100,r=e.dependencyVulnerabilities.filter(a=>a.severity==="critical").length;t-=r*20;let n=e.dependencyVulnerabilities.filter(a=>a.severity==="high").length;t-=n*10;let i=e.codeSecurityIssues.filter(a=>a.severity==="critical").length;t-=i*15;let s=e.codeSecurityIssues.filter(a=>a.severity==="high").length;return t-=s*8,t-=e.secretsDetected*30,t-=e.configurationIssues*5,Math.max(0,Math.round(t))}}});var CEe,sh,d7=y(()=>{"use strict";ir();CEe={id:"quality-gate",name:"Quality Gate Evaluator",description:"Continuously evaluates quality gates and release readiness across all quality dimensions",intervalMs:300*1e3,priority:"critical",targetDomains:["quality-assessment"],enabled:!0,timeoutMs:12e4,retryCount:2,retryDelayMs:5e3},sh=class extends $e{constructor(){super(CEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting quality gate evaluation");let r=[],n=[],i=await this.evaluateQualityGates(e);this.analyzeGateResults(i,r,n),this.checkBlockers(i,r,n),await this.compareToHistory(e,i,r),await e.memory.set("quality-gate:current",i),await e.memory.set("quality-gate:lastCheck",new Date().toISOString());let s=await e.memory.get("quality-gate:history")||[];s.push(i),s.length>100&&s.shift(),await e.memory.set("quality-gate:history",s);let a=this.calculateHealthScore(i);return e.logger.info("Quality gate evaluation complete",{healthScore:a,passed:i.passed,releaseReady:i.releaseReady,blockers:i.blockers}),this.createResult(Date.now()-t,{itemsAnalyzed:i.rules.length,issuesFound:i.failedRules,healthScore:a,trend:"stable",domainMetrics:{gatePassed:i.passed?"YES":"NO",releaseReady:i.releaseReady?"YES":"NO",passedRules:i.passedRules,failedRules:i.failedRules,blockers:i.blockers,warnings:i.warnings}},r,n)}async evaluateQualityGates(e){let t=[{id:"coverage-line",name:"Line Coverage",category:"coverage",threshold:80,operator:"gte",currentValue:78.5,unit:"%",blocking:!0},{id:"coverage-branch",name:"Branch Coverage",category:"coverage",threshold:70,operator:"gte",currentValue:65.2,unit:"%",blocking:!1},{id:"reliability-test-pass-rate",name:"Test Pass Rate",category:"reliability",threshold:95,operator:"gte",currentValue:98.2,unit:"%",blocking:!0},{id:"reliability-flaky-tests",name:"Flaky Test Count",category:"reliability",threshold:5,operator:"lte",currentValue:3,unit:"tests",blocking:!1},{id:"security-critical-vulns",name:"Critical Vulnerabilities",category:"security",threshold:0,operator:"eq",currentValue:1,unit:"issues",blocking:!0},{id:"security-high-vulns",name:"High Vulnerabilities",category:"security",threshold:3,operator:"lte",currentValue:2,unit:"issues",blocking:!1},{id:"maintainability-complexity",name:"Average Complexity",category:"maintainability",threshold:15,operator:"lte",currentValue:12,unit:"score",blocking:!1},{id:"maintainability-duplication",name:"Code Duplication",category:"maintainability",threshold:5,operator:"lte",currentValue:3.2,unit:"%",blocking:!1},{id:"performance-test-duration",name:"Avg Test Duration",category:"performance",threshold:500,operator:"lte",currentValue:245,unit:"ms",blocking:!1}],r=0,n=0,i=0,s=0;for(let a of t)this.evaluateRule(a)?r++:(n++,a.blocking?i++:s++);return{passed:i===0,passedRules:r,failedRules:n,blockers:i,warnings:s,releaseReady:i===0&&s<=2,rules:t}}evaluateRule(e){switch(e.operator){case"gte":return e.currentValue>=e.threshold;case"lte":return e.currentValue<=e.threshold;case"eq":return e.currentValue===e.threshold;default:return!1}}analyzeGateResults(e,t,r){for(let s of e.rules)if(!this.evaluateRule(s)){let a=s.blocking?"critical":"medium";t.push({type:"quality-gate-failure",severity:a,domain:"quality-assessment",title:`Quality Gate Failed: ${s.name}`,description:`${s.name} is ${s.currentValue}${s.unit}, threshold is ${s.operator==="gte"?">=":s.operator==="lte"?"<=":"="} ${s.threshold}${s.unit}`,context:{ruleId:s.id,category:s.category,currentValue:s.currentValue,threshold:s.threshold,blocking:s.blocking}})}let n=e.rules.filter(s=>s.category==="coverage"&&!this.evaluateRule(s));n.length>0&&r.push({priority:n.some(s=>s.blocking)?"p0":"p2",domain:"quality-assessment",action:"Improve Test Coverage",description:`${n.length} coverage gates are failing. Add tests to increase coverage.`,estimatedImpact:"high",effort:"medium",autoFixable:!0}),e.rules.filter(s=>s.category==="security"&&!this.evaluateRule(s)).length>0&&r.push({priority:"p0",domain:"quality-assessment",action:"Address Security Issues",description:"Security gates are failing. Resolve vulnerabilities before release.",estimatedImpact:"high",effort:"medium",autoFixable:!1})}checkBlockers(e,t,r){e.blockers>0?(t.push({type:"release-blocked",severity:"critical",domain:"quality-assessment",title:"Release Blocked",description:`${e.blockers} blocking issues prevent release`,context:{blockers:e.blockers,blockingRules:e.rules.filter(n=>n.blocking&&!this.evaluateRule(n)).map(n=>n.name)}}),r.push({priority:"p0",domain:"quality-assessment",action:"Resolve Release Blockers",description:"Address all blocking quality gate failures before proceeding with release.",estimatedImpact:"high",effort:"medium",autoFixable:!1})):e.releaseReady||t.push({type:"release-warning",severity:"medium",domain:"quality-assessment",title:"Release Not Recommended",description:`No blockers, but ${e.warnings} warnings suggest caution`,context:{warnings:e.warnings}})}async compareToHistory(e,t,r){let n=await e.memory.get("quality-gate:current");n&&(n.passed&&!t.passed&&r.push({type:"quality-gate-regression",severity:"high",domain:"quality-assessment",title:"Quality Gate Regression",description:"Quality gates were passing previously but are now failing",context:{previousBlockers:n.blockers,currentBlockers:t.blockers}}),!n.passed&&t.passed&&r.push({type:"quality-gate-improvement",severity:"info",domain:"quality-assessment",title:"Quality Gates Now Passing",description:"All quality gates are now passing after previous failures",context:{previousFailures:n.failedRules,currentFailures:t.failedRules}}))}calculateHealthScore(e){if(e.rules.length===0)return 100;let r=e.passedRules/e.rules.length*70;return r-=e.blockers*15,r-=e.warnings*5,e.releaseReady&&(r+=10),Math.max(0,Math.min(100,Math.round(r)))}}});var p7={};Q(p7,{ensurePatternEmbedding:()=>TEe});async function TEe(o,e,t,r,n,i={}){try{let s=`${t??""} ${r??""} ${(n??[]).join(" ")}`.trim();if(!s)return;let a=await Pt(s,i);if(!a||a.length===0)return;let c=Buffer.from(new Float32Array(a).buffer),l={...Ls,...i};o.prepare(`INSERT OR REPLACE INTO qe_pattern_embeddings (pattern_id, embedding, dimension, model)
|
|
5905
|
+
`),n=await fetch(`${t}/v1/messages`,{method:"POST",headers:{"content-type":"application/json","x-api-key":e,"anthropic-version":"2023-06-01"},body:JSON.stringify({model:pbe,max_tokens:mbe,messages:[{role:"user",content:r}]})});if(!n.ok)return null;let s=(await n.json()).content?.[0]?.text;if(!s)return null;let a=s.match(/\{[\s\S]*\}/);if(!a)return null;try{let c=JSON.parse(a[0]);return typeof c.quality!="number"||typeof c.reasoning!="string"?null:{quality:Math.max(0,Math.min(1,c.quality)),reasoning:c.reasoning.slice(0,200),improvement:typeof c.improvement=="string"?c.improvement.slice(0,200):void 0}}catch{return null}}var pbe,mbe,gbe,CX=y(()=>{"use strict";Y();pbe="claude-haiku-4-5-20251001",mbe=200,gbe=5});var EN={};Q(EN,{handleModelRoute:()=>zw,handleReasoningBankStats:()=>Cbe,handleRoutingEconomics:()=>Gw,handleRoutingMetrics:()=>Vw,handleTaskCancel:()=>Bw,handleTaskList:()=>$w,handleTaskOrchestrate:()=>Uw,handleTaskOutcomeRecord:()=>bbe,handleTaskStatus:()=>qw,handleTaskStatusWithLearning:()=>Tbe,handleTaskSubmit:()=>Ow,subscribeTrajectoryEvents:()=>Sbe,unsubscribeTrajectoryEvents:()=>wX});async function Ow(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=await e.submitTask({type:o.type,priority:o.priority||"p1",targetDomains:o.targetDomains||[],payload:o.payload||{},timeout:o.timeout||3e5});if(!t.success)return{success:!1,error:t.error.message};let r=e.getTaskStatus(t.value);return{success:!0,data:{taskId:t.value,type:o.type,priority:o.priority||"p1",status:r?.status==="running"?"pending":"queued",assignedDomain:r?.assignedDomain}}}catch(t){return{success:!1,error:`Failed to submit task: ${S(t)}`}}}async function $w(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=e.listTasks({status:o.status,priority:o.priority,domain:o.domain});return{success:!0,data:(typeof o.limit=="number"?t.slice(0,o.limit):t).map(i=>({taskId:i.taskId,type:i.task.type,status:i.status,priority:i.task.priority,assignedDomain:i.assignedDomain,assignedAgents:i.assignedAgents,result:i.result,error:i.error,createdAt:i.task.createdAt.toISOString(),startedAt:i.startedAt?.toISOString(),completedAt:i.completedAt?.toISOString(),duration:i.completedAt&&i.startedAt?i.completedAt.getTime()-i.startedAt.getTime():void 0}))}}catch(t){return{success:!1,error:`Failed to list tasks: ${S(t)}`}}}async function qw(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=e.getTaskStatus(o.taskId);return t?{success:!0,data:{taskId:t.taskId,type:t.task.type,status:t.status,priority:t.task.priority,assignedDomain:t.assignedDomain,assignedAgents:t.assignedAgents,result:o.detailed?t.result:void 0,error:t.error,createdAt:t.task.createdAt.toISOString(),startedAt:t.startedAt?.toISOString(),completedAt:t.completedAt?.toISOString(),duration:t.completedAt&&t.startedAt?t.completedAt.getTime()-t.startedAt.getTime():void 0}}:{success:!1,error:`Task not found: ${o.taskId}`}}catch(t){return{success:!1,error:`Failed to get task status: ${S(t)}`}}}async function Bw(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=await e.cancelTask(o.taskId);return t.success?{success:!0,data:{taskId:o.taskId,cancelled:!0}}:{success:!1,error:t.error.message}}catch(t){return{success:!1,error:`Failed to cancel task: ${S(t)}`}}}async function Uw(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e,workflowOrchestrator:t}=me();try{let r=o.context?.project||SX(o.task),n=o.priority==="critical"||/\b(security|vulnerability|cve|owasp|critical|production|exploit)\b/i.test(o.task),s=await(await ms()).routeTask({task:o.task,codeContext:o.codeContext,filePaths:o.filePaths,manualTier:o.manualTier,isCritical:n,agentType:`qe-${r}`,domain:r,metadata:{inferredDomain:r,hasCodeContext:!!o.codeContext,fileCount:o.filePaths?.length}}),a=await yn(),c=await a.getExperienceGuidance(o.task,o.context?.project),l=await a.searchPatterns(o.task,{limit:5,domain:o.context?.project??r}).catch(()=>[]),u=ybe(o.task),d=vbe(o.priority||"medium"),p=fbe[u];if(p&&t){console.log(`[TaskOrchestrate] Task type '${u}' has workflow '${p}' - executing workflow`);let v=o.task.match(/https?:\/\/[^\s]+/i),b=v?v[0]:void 0;b&&console.log(`[TaskOrchestrate] Detected URL for analysis: ${b}`);let C={targetId:o.context?.project||b||`task-${Date.now()}`,targetType:b?"website":"epic",description:o.task,acceptanceCriteria:o.context?.requirements||[],url:b,routing:{tier:s.decision.tier,modelId:s.modelId,executionStrategy:s.executionStrategy,complexity:s.decision.complexityAnalysis.overall},patternHints:l.length>0?l.map(A=>({patternId:A.id,name:A.name,description:A.description,confidence:A.confidence,similarity:A.qualityScore,canReuse:A.tier==="long-term"})):void 0},R=await t.executeWorkflow(p,C);return R.success?{success:!0,data:{taskId:R.value,type:u,priority:d,strategy:o.strategy||"adaptive",status:"workflow-started",message:`Workflow '${p}' started for task: ${o.task}`,routing:{tier:s.decision.tier,tierName:s.tierInfo.name,modelId:s.modelId,executionStrategy:s.executionStrategy,complexity:s.decision.complexityAnalysis.overall,confidence:s.decision.confidence,useAgentBooster:s.useAgentBooster,rationale:s.decision.rationale,decisionTimeMs:s.decision.metadata.decisionTimeMs}}}:{success:!1,error:`Workflow execution failed: ${R.error.message}`}}let m={description:o.task,strategy:o.strategy||"adaptive",maxAgents:o.maxAgents,context:o.context};u==="generate-tests"&&(m.sourceFiles=o.filePaths||[],m.sourceCode=o.codeContext||"",m.language=m.language||"typescript",m.testType=m.testType||"unit");let g=await e.submitTask({type:u,priority:d,targetDomains:[],payload:{...m,routing:{tier:s.decision.tier,modelId:s.modelId,executionStrategy:s.executionStrategy,useAgentBooster:s.useAgentBooster,agentBoosterTransform:s.decision.agentBoosterTransform,complexity:s.decision.complexityAnalysis.overall,confidence:s.decision.confidence},experienceGuidance:c?{strategy:c.recommendedStrategy,actions:c.suggestedActions,confidence:c.confidence,tokenSavings:c.estimatedTokenSavings}:void 0,patternHints:l.length>0?l.map(v=>({patternId:v.id,name:v.name,description:v.description,confidence:v.confidence,similarity:v.qualityScore,canReuse:v.tier==="long-term"})):void 0},timeout:6e5});if(!g.success)return{success:!1,error:g.error.message};let h=g.value;return await TN(h,o.task,{agent:"queen-coordinator",domain:o.context?.project}),process.env.AQE_TRAJECTORY_JUDGE==="1"&&process.env.ANTHROPIC_API_KEY&&bX().catch(v=>{console.warn("[TrajectoryJudge] failed:",v instanceof Error?v.message:v)}),{success:!0,data:{taskId:h,type:u,priority:d,strategy:o.strategy||"adaptive",status:"submitted",message:`Task orchestrated: ${o.task}${c?" (with experience guidance)":""}`,routing:{tier:s.decision.tier,tierName:s.tierInfo.name,modelId:s.modelId,executionStrategy:s.executionStrategy,complexity:s.decision.complexityAnalysis.overall,confidence:s.decision.confidence,useAgentBooster:s.useAgentBooster,rationale:s.decision.rationale,decisionTimeMs:s.decision.metadata.decisionTimeMs}}}}catch(r){return{success:!1,error:`Failed to orchestrate task: ${S(r)}`}}}async function zw(o){try{let e=await ms(),t=o.domain||SX(o.task),r=o.isCritical??/\b(security|vulnerability|cve|owasp|critical|production|exploit)\b/i.test(o.task),n=await e.routeTask({task:o.task,codeContext:o.codeContext,filePaths:o.filePaths,manualTier:o.manualTier,isCritical:r,agentType:o.agentType||`qe-${t}`,domain:t,metadata:{inferredDomain:t,hasCodeContext:!!o.codeContext,fileCount:o.filePaths?.length}});return{success:!0,data:{tier:n.decision.tier,tierName:n.tierInfo.name,modelId:n.modelId,executionStrategy:n.executionStrategy,useAgentBooster:n.useAgentBooster,agentBoosterTransform:n.decision.agentBoosterTransform,complexity:{overall:n.decision.complexityAnalysis.overall,code:n.decision.complexityAnalysis.codeComplexity,reasoning:n.decision.complexityAnalysis.reasoningComplexity,scope:n.decision.complexityAnalysis.scopeComplexity},confidence:n.decision.confidence,rationale:n.decision.rationale,warnings:n.decision.warnings,budget:{allowed:n.decision.budgetDecision.allowed,wasDowngraded:n.decision.budgetDecision.wasDowngraded,estimatedCostUsd:n.decision.budgetDecision.estimatedCostUsd},decisionTimeMs:n.decision.metadata.decisionTimeMs}}}catch(e){return{success:!1,error:`Failed to route task: ${S(e)}`}}}async function Vw(o){try{let e=await ms(),t=e.getRoutingStats(),r=e.getMetrics(),n={stats:t,modelRouterMetrics:{totalDecisions:r.totalDecisions,avgDecisionTimeMs:r.avgDecisionTimeMs,agentBoosterStats:r.agentBoosterStats,budgetStats:r.budgetStats}};return o.includeLog&&(n.log=e.getRoutingLog(o.logLimit||100)),{success:!0,data:n}}catch(e){return{success:!1,error:`Failed to get routing metrics: ${S(e)}`}}}async function Gw(o){try{let{createRoutingFeedbackCollector:e}=await Promise.resolve().then(()=>(lF(),EK)),{getGlobalCostTracker:t}=await Promise.resolve().then(()=>(aF(),wK)),r=e(100);await r.initialize(),r.enableEconomicRouting({...o.taskComplexity!=null?{}:{}},t());let n=r.getEconomicReport();return n?{success:!0,data:{tierEfficiency:n.tierEfficiency.map(s=>({...s,qualityPerDollar:isFinite(s.qualityPerDollar)?s.qualityPerDollar:"Infinity"})),currentHourlyCostUsd:n.currentHourlyCostUsd,currentDailyCostUsd:n.currentDailyCostUsd,budgetRemaining:n.budgetRemaining,recommendation:n.recommendation,savingsOpportunity:n.savingsOpportunity}}:{success:!1,error:"Economic routing is not available"}}catch(e){return{success:!1,error:`Failed to get economic routing report: ${S(e)}`}}}function SX(o){let e=o.toLowerCase();return/\b(security|vulnerabilit|cve|owasp|secret|credential|injection|xss|csrf)\b/.test(e)?"security-compliance":/\b(chaos|resilience|fault.?inject|disaster|failover)\b/.test(e)?"chaos-resilience":/\b(defect|bug.?predict|risk.?assess|mutation)\b/.test(e)?"defect-intelligence":/\b(coverage|uncovered|gap.?analy)\b/.test(e)?"coverage-analysis":/\b(quality|code.?review|maintain|tech.?debt)\b/.test(e)?"quality-assessment":/\b(contract|api.?compat|breaking.?change|pact)\b/.test(e)?"contract-testing":/\b(index|knowledge.?graph|semantic|code.?intel)\b/.test(e)?"code-intelligence":/\b(accessib|a11y|wcag|screen.?read)\b/.test(e)?"visual-accessibility":/\b(requirement|bdd|acceptance|user.?stor)\b/.test(e)?"requirements-validation":/\b(generat.*test|test.*generat|write.*test|create.*test)\b/.test(e)?"test-generation":/\b(run.*test|execut.*test)\b/.test(e)?"test-execution":"test-generation"}function ybe(o){let e=o.toLowerCase();return/run\s+(?:\w+\s+)*tests?/.test(e)||/execute\s+(?:\w+\s+)*tests?/.test(e)||e.includes("run tests")||e.includes("execute tests")?"execute-tests":e.includes("generate test")||e.includes("create test")||e.includes("write test")?"generate-tests":e.includes("coverage")||e.includes("uncovered")?"analyze-coverage":e.includes("quality")||e.includes("code quality")?"assess-quality":e.includes("defect")||e.includes("bug")||e.includes("predict")?"predict-defects":e.includes("requirement")||e.includes("bdd")||e.includes("acceptance")?"validate-requirements":e.includes("index")||e.includes("knowledge graph")||e.includes("semantic")?"index-code":e.includes("security")||e.includes("vulnerability")||e.includes("owasp")?"scan-security":e.includes("contract")||e.includes("api contract")||e.includes("pact")?"validate-contracts":e.includes("accessibility")||e.includes("a11y")||e.includes("wcag")?"test-accessibility":e.includes("chaos")||e.includes("resilience")||e.includes("fault")?"run-chaos":e.includes("learn")||e.includes("optimize")||e.includes("improve")?"optimize-learning":e.includes("ideation")||e.includes("quality criteria")||e.includes("htsm")||e.includes("qcsd")||e.includes("testability")||e.includes("pi planning")||e.includes("sprint planning")?"ideation-assessment":"generate-tests"}function vbe(o){switch(o){case"critical":return"p0";case"high":return"p1";case"medium":return"p2";case"low":return"p3";default:return"p1"}}async function bbe(o){try{let e=await yn(),t={taskId:o.taskId,task:o.task,taskType:o.taskType,success:o.success,executionTimeMs:o.executionTimeMs,agentId:o.agentId,domain:o.domain,modelTier:o.modelTier,qualityScore:o.qualityScore,error:o.error,metrics:o.metrics};await e.recordTaskOutcome(t);let r=o.success&&(o.qualityScore||.5)>=.6;return{success:!0,data:{recorded:!0,patternStored:r,message:r?`Outcome recorded and pattern stored for task ${o.taskId}`:`Outcome recorded for task ${o.taskId}`}}}catch(e){return{success:!1,error:`Failed to record task outcome: ${S(e)}`}}}async function Cbe(){try{let e=await(await yn()).getStats();return{success:!0,data:{service:e.service,patterns:{totalPatterns:e.reasoningBank.totalPatterns,byDomain:e.reasoningBank.byDomain,byTier:e.reasoningBank.byTier,learningOutcomes:e.reasoningBank.learningOutcomes,patternSuccessRate:e.reasoningBank.patternSuccessRate},embeddings:{cacheSize:e.reasoningBank.embeddingCacheSize,dimension:e.reasoningBank.embeddingDimension,transformerAvailable:e.reasoningBank.transformerAvailable},performance:{avgRoutingLatencyMs:e.reasoningBank.avgRoutingLatencyMs,p95RoutingLatencyMs:e.reasoningBank.p95RoutingLatencyMs}}}}catch(o){return{success:!1,error:`Failed to get ReasoningBank stats: ${S(o)}`}}}async function Tbe(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};let{queen:e}=me();try{let t=e.getTaskStatus(o.taskId);if(!t)return{success:!1,error:`Task not found: ${o.taskId}`};let r={taskId:t.taskId,type:t.task.type,status:t.status,priority:t.task.priority,assignedDomain:t.assignedDomain,assignedAgents:t.assignedAgents,result:o.detailed?t.result:void 0,error:t.error,createdAt:t.task.createdAt.toISOString(),startedAt:t.startedAt?.toISOString(),completedAt:t.completedAt?.toISOString(),duration:t.completedAt&&t.startedAt?t.completedAt.getTime()-t.startedAt.getTime():void 0};if((t.status==="completed"||t.status==="failed")&&!TX.has(o.taskId)){TX.add(o.taskId);try{let n=await yn(),i=r.duration||0,s=t.status==="completed",a=t.task.payload||{},c=typeof a.description=="string"?a.description:t.task.type,l=a.routing,u=await Lg(o.taskId,s,t.error),d=u?.metrics.averageQuality??(s?.7:.3);await n.recordTaskOutcome({taskId:o.taskId,task:c,taskType:t.task.type,success:s,executionTimeMs:i,agentId:t.assignedAgents?.[0],domain:t.assignedDomain,modelTier:l?.tier,qualityScore:d,error:t.error,metrics:{testsGenerated:typeof t.result=="object"&&t.result?t.result.testsGenerated:void 0,testsPassed:typeof t.result=="object"&&t.result?t.result.testsPassed:void 0}}),console.error(`[TaskHandler] Recorded learning outcome: task=${o.taskId} success=${s} quality=${d.toFixed(2)} trajectorySteps=${u?.steps.length??0}`)}catch(n){console.error("[TaskHandler] Failed to record outcome:",n)}}return{success:!0,data:r}}catch(t){return{success:!1,error:`Failed to get task status: ${S(t)}`}}}function Sbe(o){wX(o);let e=o.subscribeToEventType("TaskCompleted",async r=>{let{taskId:n}=r.payload;n&&await Lg(n,!0).catch(()=>{})}),t=o.subscribeToEventType("TaskFailed",async r=>{let{taskId:n,error:i}=r.payload;n&&await Lg(n,!1,i).catch(()=>{})});wN=[e,t]}function wX(o){for(let e of wN)o.unsubscribe(e);wN=[]}var fbe,TX,wN,Hw=y(()=>{"use strict";hs();IS();SN();CX();k();fbe={"ideation-assessment":"qcsd-ideation-swarm"};TX=new Set;wN=[]});var RX={};Q(RX,{DEFAULT_STRUCTURAL_HEALTH_CONFIG:()=>EX,StructuralHealthMonitor:()=>Ww,createStructuralHealthMonitor:()=>wbe});function wbe(o){return new Ww(o)}var EX,Ww,AX=y(()=>{"use strict";xL();EX={healthyThreshold:.4,warningThreshold:.2,maxHistoryEntries:100,enableLogging:!1},Ww=class{config;minCutService;history=[];constructor(e){this.config={...EX,...e},this.minCutService=CS()}computeFleetHealth(e){if(e.length===0)return this.emptyFleetResult();let t=this.minCutService.buildTaskGraphFromTopology(e);return this.computeFleetHealthFromGraph(t,e.length)}computeFleetHealthFromGraph(e,t){if(e.nodes.length===0)return this.emptyFleetResult();let r=this.minCutService.getStructuralHealth(e),n=this.determineStatus(r.normalizedLambda),i={lambda:r.lambda,healthy:r.healthy,weakPoints:r.weakPoints,normalizedLambda:r.normalizedLambda,riskScore:r.riskScore,status:n,suggestions:r.suggestions,measuredAt:new Date};return this.addHistoryEntry({lambda:r.lambda,healthy:r.healthy,weakPointCount:r.weakPoints.length,agentCount:t??e.nodes.length,timestamp:i.measuredAt}),this.config.enableLogging&&this.logHealth(i),i}getTrend(){if(this.history.length<2)return"stable";let e=Math.min(5,this.history.length),t=this.history.slice(-e),r=t[0].lambda,i=t[t.length-1].lambda-r;return Math.abs(i)<.05?"stable":i>0?"improving":"degrading"}getHistory(e){let t=[...this.history];return e!==void 0&&e<t.length?t.slice(-e):t}clearHistory(){this.history.length=0}getMinCutService(){return this.minCutService}determineStatus(e){return e>=this.config.healthyThreshold?"healthy":e>=this.config.warningThreshold?"warning":"critical"}addHistoryEntry(e){this.history.push(e),this.history.length>this.config.maxHistoryEntries&&this.history.splice(0,this.history.length-this.config.maxHistoryEntries)}emptyFleetResult(){return{lambda:0,healthy:!1,weakPoints:[],normalizedLambda:0,riskScore:1,status:"empty",suggestions:["No agents in fleet. Spawn agents to build a topology."],measuredAt:new Date}}logHealth(e){console.error(`[StructuralHealth] Status: ${e.status} | Lambda: ${e.normalizedLambda.toFixed(3)} | Weak points: ${e.weakPoints.length} | Risk: ${(e.riskScore*100).toFixed(0)}%`)}}});function me(){return z}function ge(){return z.initialized&&z.kernel!==null&&z.queen!==null}function kX(o,e){if(z.topology!=="hierarchical"){let i={agentId:o,domain:e,level:"worker",spawnedAt:new Date};return z.agentLevels.set(o,i),"worker"}let r=Array.from(z.agentLevels.values()).find(i=>i.domain===e&&i.level==="lead")?"worker":"lead",n={agentId:o,domain:e,level:r,spawnedAt:new Date};return z.agentLevels.set(o,n),r}function PX(o){return z.agentLevels.get(o)}async function Fg(o){try{if(z.initialized&&z.kernel&&z.queen)return{success:!0,data:{fleetId:z.fleetId,topology:o.topology||"hierarchical",maxAgents:o.maxAgents||15,enabledDomains:o.enabledDomains||xX,status:"ready"}};z.fleetId=`fleet-${E().slice(0,8)}`;let e=o.enabledDomains||[...Z],t=e.filter(c=>c!=="coordination");z.kernel=new gT({maxConcurrentAgents:o.maxAgents||15,memoryBackend:o.memoryBackend||"hybrid",hnswEnabled:!0,lazyLoading:o.lazyLoading!==!1,enabledDomains:e}),await z.kernel.initialize(),z.router=new YT(z.kernel.eventBus),await z.router.initialize();let r=c=>z.kernel.getDomainAPI(c),n=new Fw(z.kernel.eventBus,z.kernel.memory,r),i=z.kernel.plugins;await i.loadAll();let s=new Map;for(let c of i.getLoaded()){let l=i.getPlugin(c);l&&s.set(c,l)}z.queen=j5(z.kernel,z.router,n,void 0,s),await z.queen.initialize(),z.workflowOrchestrator=new Cm(z.kernel.eventBus,z.kernel.memory,z.kernel.coordinator),await z.workflowOrchestrator.initialize(),Ebe(z.kernel,z.workflowOrchestrator);let{subscribeTrajectoryEvents:a}=await Promise.resolve().then(()=>(Hw(),EN));return a(z.router),z.initialized=!0,z.initTime=new Date,z.topology=o.topology||"hierarchical",z.agentLevels.clear(),{success:!0,data:{fleetId:z.fleetId,topology:z.topology,maxAgents:o.maxAgents||15,enabledDomains:t,status:"initialized"}}}catch(e){return{success:!1,error:`Failed to initialize fleet: ${S(e)}`}}}async function RN(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{let e=z.queen.getHealth(),t=z.queen.getMetrics(),r={status:e.status,uptime:t.uptime,agents:{total:e.totalAgents,active:e.activeAgents,idle:e.totalAgents-e.activeAgents},tasks:{pending:e.pendingTasks,running:e.runningTasks,completed:t.tasksCompleted,failed:t.tasksFailed}};if(o.includeDomains){let i=[];for(let[s,a]of e.domainHealth)i.push({domain:s,status:a.status,agents:a.agents.total,load:z.queen.getDomainLoad(s)});r.domains=i}let n=z.queen.getDomainTeamManager?.();if(n){let i=n.listDomainTeams(),s=0,a=0;for(let c of i)s+=1+c.teammateIds.length,n.getTeamHealth(c.domain)?.healthy&&a++;r.teams={active:i.length,totalAgentsInTeams:s,healthyCount:a}}o.includeMetrics&&(r.metrics={tasksReceived:t.tasksReceived,tasksCompleted:t.tasksCompleted,tasksFailed:t.tasksFailed,agentUtilization:t.agentUtilization,averageTaskDuration:t.averageTaskDuration});try{let{getUnifiedMemory:i}=await Promise.resolve().then(()=>(Y(),Cr)),s=i();if(s.isInitialized()){let a=l=>{try{return s.queryCount(l)}catch{return 0}},c=await s.vectorCount();r.learning={totalPatterns:a("qe_patterns"),totalExperiences:a("captured_experiences"),totalTrajectories:a("qe_trajectories"),vectorCount:c,experienceApplications:a("experience_applications"),dreamCycles:a("dream_cycles"),embeddingDimension:384}}}catch{}return{success:!0,data:r}}catch(e){return{success:!1,error:`Failed to get fleet status: ${S(e)}`}}}async function AN(o){if(!ge())return{success:!1,error:"Fleet not initialized. Call fleet_init first."};try{if(o.domain){let r=z.queen.getDomainHealth(o.domain);return r?{success:!0,data:{domain:o.domain,status:r.status,agents:r.agents,errors:r.errors,lastActivity:r.lastActivity?.toISOString()}}:{success:!1,error:`Domain not found: ${o.domain}`}}let e=z.queen.getHealth(),t={status:e.status,totalAgents:e.totalAgents,activeAgents:e.activeAgents,pendingTasks:e.pendingTasks,runningTasks:e.runningTasks,workStealingActive:e.workStealingActive,lastHealthCheck:e.lastHealthCheck.toISOString()};if(o.detailed){let r={};for(let[n,i]of e.domainHealth)r[n]={status:i.status,agents:i.agents,errors:i.errors.length,lastActivity:i.lastActivity?.toISOString()};t.domains=r,t.issues=e.issues.map(n=>({severity:n.severity,message:n.message,domain:n.domain,timestamp:n.timestamp.toISOString()}))}try{let{StructuralHealthMonitor:r}=await Promise.resolve().then(()=>(AX(),RX)),n=new r,i=[];for(let[c]of e.domainHealth){let l=z.queen.getAgentsByDomain(c);for(let u of l)i.push({id:u.id,name:u.name,domain:u.domain})}let s=i.map(c=>({id:c.id,name:c.name,domain:c.domain,capabilities:[c.domain],dependsOn:[],weight:1})),a=n.computeFleetHealth(s);t.structuralHealth={lambda:a.lambda,healthy:a.healthy,normalizedLambda:a.normalizedLambda,riskScore:a.riskScore,status:a.status,weakPoints:a.weakPoints,suggestions:a.suggestions}}catch{}return{success:!0,data:t}}catch(e){return{success:!1,error:`Failed to get fleet health: ${S(e)}`}}}async function xN(){if(oK(),zS(),hX(),z.workflowOrchestrator&&(await z.workflowOrchestrator.dispose(),z.workflowOrchestrator=null),z.queen&&(await z.queen.dispose(),z.queen=null),z.router){try{let{unsubscribeTrajectoryEvents:o}=await Promise.resolve().then(()=>(Hw(),EN));o(z.router)}catch{}await z.router.dispose(),z.router=null}z.kernel&&(await z.kernel.dispose(),z.kernel=null),z.initialized=!1,z.fleetId=null,z.initTime=null,z.topology="hierarchical",z.agentLevels.clear()}async function kN(){let o=performance.now();try{let e=ge(),t=z.initTime?Date.now()-z.initTime.getTime():0,r={connected:!1,totalEntries:0,namespaces:0},n={enabled:!1,vectorCount:0},i=0;if(e&&z.kernel){let u=z.kernel.memory;try{r.connected=!0;let d=await u.count("default"),p=await u.count("learning"),m=await u.count("patterns");r.totalEntries=d+p+m;let g=0;for(let h of["default","learning","patterns","mcp-tools","coordination"])await u.count(h)>0&&g++;r.namespaces=g}catch{}try{let d=process.env.AQE_V3_HNSW_ENABLED==="true";n.enabled=d;let p=u;d&&typeof p.vectorCount=="function"&&(n.vectorCount=await p.vectorCount())}catch{}try{i=(await u.search("pattern:*",1e3)).length}catch{}}let s=e&&z.kernel?(z.kernel.getLoadedDomains?.()??xX).length:0,a=null;try{let{getSharedRvfDualWriterSync:u}=await Promise.resolve().then(()=>(rs(),ya)),d=u();if(d){let p=d.status(),m=d.getDivergenceReport();a={mode:p.mode,vectorCount:p.rvf?.totalVectors??0,divergences:m.divergences,promotionSafe:d.isPromotionSafe()}}}catch{}let c=null;try{let{SQLitePatternStore:u}=await Promise.resolve().then(()=>(Rc(),HM)),d=new u;await d.initialize(),c=d.getGhostPatternCount(),d.close()}catch{}return{success:!0,data:{status:e?"healthy":"unhealthy",version:"3.9.28",loadedDomains:s,memory:r,hnsw:n,rvf:a??void 0,ghostPatterns:c??void 0,loadedPatterns:i,uptimeMs:t,timestamp:new Date().toISOString()},metadata:{executionTime:performance.now()-o,timestamp:new Date().toISOString(),requestId:E(),toolName:"aqe_health"}}}catch(e){return{success:!1,error:S(e),metadata:{executionTime:performance.now()-o,timestamp:new Date().toISOString(),requestId:E(),toolName:"aqe_health"}}}}function Ebe(o,e){let t=o.getDomainAPI("requirements-validation");t?.registerWorkflowActions&&(t.registerWorkflowActions(e),console.log("[Fleet] Registered requirements-validation workflow actions (includes QCSD Ideation)"));let r=o.getDomainAPI("visual-accessibility");r?.registerWorkflowActions&&(r.registerWorkflowActions(e),console.log("[Fleet] Registered visual-accessibility workflow actions"))}var xX,z,hs=y(()=>{"use strict";N();E3();L();Q5();RD();K5();jL();VS();CN();fX();k();xX=Z.filter(o=>o!=="coordination"),z={fleetId:null,kernel:null,queen:null,router:null,workflowOrchestrator:null,initialized:!1,initTime:null,topology:"hierarchical",agentLevels:new Map}});import{randomUUID as lCe}from"crypto";var $e,ir=y(()=>{"use strict";k();$e=class{constructor(e){this.config=e}config;_status="idle";_lastResult;_lastRunAt;_nextRunAt;_totalExecutions=0;_successfulExecutions=0;_failedExecutions=0;_executionDurations=[];_recentResults=[];get status(){return this._status}get lastResult(){return this._lastResult}get lastRunAt(){return this._lastRunAt}get nextRunAt(){return this._nextRunAt}async initialize(){this._status="idle",this._nextRunAt=new Date(Date.now()+this.config.intervalMs)}async execute(e){let t=Date.now();this._status="running",this._lastRunAt=new Date,this._totalExecutions++;let r,n;for(let s=0;s<=this.config.retryCount;s++)try{if(e.signal.aborted)throw new Error("Worker execution aborted");n=await this.executeWithTimeout(()=>this.doExecute(e),this.config.timeoutMs,e.signal);break}catch(a){r=w(a),e.logger.warn(`Worker ${this.config.id} attempt ${s+1} failed: ${r.message}`),s<this.config.retryCount&&await this.delay(this.config.retryDelayMs)}let i=Date.now()-t;return n?(this._successfulExecutions++,this._lastResult=n):(this._failedExecutions++,n=this.createErrorResult(r,i),this._lastResult=n),this._executionDurations.push(i),this._executionDurations.length>100&&this._executionDurations.shift(),this._recentResults.push({timestamp:new Date,success:n.success,durationMs:i}),this._recentResults.length>5&&this._recentResults.shift(),this._nextRunAt=new Date(Date.now()+this.config.intervalMs),this._status=n.success?"idle":"error",await e.eventBus.publish({type:"worker.executed",workerId:this.config.id,timestamp:new Date,payload:{success:n.success,durationMs:i,findingsCount:n.findings.length,healthScore:n.metrics.healthScore}}),n}pause(){this._status!=="stopped"&&(this._status="paused")}resume(){this._status==="paused"&&(this._status="idle")}async stop(){this._status="stopped"}getHealth(){let e=this._executionDurations.length>0?this._executionDurations.reduce((r,n)=>r+n,0)/this._executionDurations.length:0,t=this._totalExecutions>0?this._successfulExecutions/this._totalExecutions:1;return{status:this._status,healthScore:Math.round(t*100),totalExecutions:this._totalExecutions,successfulExecutions:this._successfulExecutions,failedExecutions:this._failedExecutions,avgDurationMs:Math.round(e),recentResults:[...this._recentResults]}}async executeWithTimeout(e,t,r){return new Promise((n,i)=>{let s=setTimeout(()=>{i(new Error(`Worker execution timed out after ${t}ms`))},t),a=()=>{clearTimeout(s),i(new Error("Worker execution aborted"))};r.addEventListener("abort",a,{once:!0}),e().then(c=>{clearTimeout(s),r.removeEventListener("abort",a),n(c)}).catch(c=>{clearTimeout(s),r.removeEventListener("abort",a),i(c)})})}createErrorResult(e,t){return{workerId:this.config.id,timestamp:new Date,durationMs:t,success:!1,error:e.message,metrics:{itemsAnalyzed:0,issuesFound:0,healthScore:0,trend:"degrading",domainMetrics:{}},findings:[],recommendations:[]}}createResult(e,t,r,n){return{workerId:this.config.id,timestamp:new Date,durationMs:e,success:!0,metrics:t,findings:r,recommendations:n}}delay(e){return new Promise(t=>setTimeout(t,e))}generateId(){return`${Date.now()}-${lCe().slice(0,9)}`}}});var uCe,Pl,mO=y(()=>{"use strict";ir();bw();Y();KF();k();uCe={id:"heartbeat-scheduler",name:"Heartbeat Scheduler",description:"Token-free maintenance: pattern promotion, stale detection, experience buffer monitoring",intervalMs:1800*1e3,priority:"normal",targetDomains:["learning-optimization"],enabled:!0,timeoutMs:6e4,retryCount:1,retryDelayMs:5e3},Pl=class extends $e{lifecycleManager=null;dailyLogger;lastRunTimestamp=0;constructor(){super(uCe),this.dailyLogger=new hg}async getLifecycleManager(){if(this.lifecycleManager)return this.lifecycleManager;try{let e=V();await e.initialize();let t=e.getDatabase();return this.lifecycleManager=gg(t,{promotionRewardThreshold:.7,promotionMinOccurrences:2,promotionMinSuccessRate:.7,deprecationFailureThreshold:3,staleDaysThreshold:30,confidenceDecayRate:.01,minActiveConfidence:.3}),this.lifecycleManager}catch{return null}}getPendingExperienceCount(){try{return V().getDatabase().prepare("SELECT COUNT(*) as pending FROM qe_pattern_usage WHERE created_at > datetime('now', '-1 day')").get()?.pending??0}catch{return 0}}async doExecute(e){let t=Date.now();e.logger.info("Heartbeat scheduler running (token-free maintenance)");let r=[],n=[],i=await this.getLifecycleManager();if(!i)return e.logger.warn("Unified memory unavailable \u2014 returning zero-metric heartbeat"),this.createResult(Date.now()-t,{itemsAnalyzed:0,issuesFound:0,healthScore:50,trend:"stable",domainMetrics:{promoted:0,deprecated:0,decayed:0,stalePatterns:0,pendingExperiences:0,avgConfidence:0,avgSuccessRate:0}},[],[]);let s=0,a=0;try{let b=i.promoteEligiblePatterns();s=b.promoted,a=b.checked,s>0&&r.push({type:"heartbeat-promotion",severity:"info",domain:"learning-optimization",title:"Patterns Promoted",description:`${s} of ${a} short-term patterns promoted to long-term`})}catch(b){e.logger.warn("Pattern promotion failed",{error:S(b)})}let c=0,l=0;try{let b=i.deprecateStalePatterns();c=b.deprecated,l=b.checked,c>0&&r.push({type:"heartbeat-deprecation",severity:"low",domain:"learning-optimization",title:"Stale Patterns Deprecated",description:`${c} of ${l} patterns deprecated (stale, failed, or low confidence)`})}catch(b){e.logger.warn("Stale pattern detection failed",{error:S(b)})}let u=0;try{let b=this.lastRunTimestamp>0?(Date.now()-this.lastRunTimestamp)/864e5:1;u=i.applyConfidenceDecay(Math.min(b,7)).decayed}catch(b){e.logger.warn("Confidence decay failed",{error:S(b)})}let d=this.getPendingExperienceCount(),p={totalPatterns:0,activePatterns:0,deprecatedPatterns:0,promotedPatterns:0,shortTermPatterns:0,longTermPatterns:0,avgConfidence:0,avgSuccessRate:0,patternsNearDeprecation:0};try{p=i.getStats()}catch(b){e.logger.warn("Stats retrieval failed",{error:S(b)})}try{this.dailyLogger.log({timestamp:new Date,type:"pattern-promoted",summary:`Heartbeat: ${s} promoted, ${c} deprecated, ${u} decayed, ${d} pending exp, ${p.activePatterns} active patterns (avg conf: ${p.avgConfidence.toFixed(2)})`,details:{promoted:s,deprecated:c,decayed:u,pendingExperiences:d,totalPatterns:p.totalPatterns,activePatterns:p.activePatterns,avgConfidence:p.avgConfidence,avgSuccessRate:p.avgSuccessRate}}),this.dailyLogger.flush()}catch(b){e.logger.warn("Daily log write failed",{error:S(b)})}this.lastRunTimestamp=Date.now(),p.activePatterns>0&&p.patternsNearDeprecation/p.activePatterns>.5&&n.push({priority:"p2",domain:"learning-optimization",action:"Review At-Risk Patterns",description:`${p.patternsNearDeprecation} of ${p.activePatterns} active patterns are near deprecation. Manual review recommended.`,estimatedImpact:"medium",effort:"low",autoFixable:!1});let m=this.calculateHealthScore(p,s,c),g=this.determineTrend(s,c,p.activePatterns),h=Math.max(a,l),v=s+c+p.patternsNearDeprecation;return e.logger.info("Heartbeat complete",{promoted:s,deprecated:c,decayed:u,pendingExperiences:d,healthScore:m}),this.createResult(Date.now()-t,{itemsAnalyzed:h,issuesFound:v,healthScore:m,trend:g,domainMetrics:{promoted:s,deprecated:c,decayed:u,stalePatterns:p.patternsNearDeprecation,pendingExperiences:d,avgConfidence:Number(p.avgConfidence.toFixed(3)),avgSuccessRate:Number(p.avgSuccessRate.toFixed(3))}},r,n)}calculateHealthScore(e,t,r){let n=70;if(n+=Math.min(15,t*5),e.avgConfidence>0&&(n+=Math.round((e.avgConfidence-.5)*30)),e.activePatterns>0){let i=r/e.activePatterns;n-=Math.round(i*20)}return e.activePatterns>0&&e.patternsNearDeprecation/e.activePatterns>.5&&(n-=10),Math.max(0,Math.min(100,Math.round(n)))}determineTrend(e,t,r){return r===0?"stable":e>t?"improving":t>e&&t/r>.1?"degrading":"stable"}}});var _1,L1,F1,QE,KE,XE,a7=y(()=>{"use strict";_1=class{handlers=[];async publish(e){for(let t of this.handlers)try{t(e)}catch(r){console.debug("[WorkerManager] Event handler error:",r instanceof Error?r.message:r)}}subscribe(e){return this.handlers.push(e),()=>{let t=this.handlers.indexOf(e);t>=0&&this.handlers.splice(t,1)}}dispose(){this.handlers=[]}get handlerCount(){return this.handlers.length}},L1=class{store=new Map;async get(e){return this.store.get(e)}async set(e,t){this.store.set(e,t)}async search(e){let t=e.replace(/[.+?^${}()|[\]\\]/g,"\\$&"),r=new RegExp(t.replace(/\*/g,".*"));return Array.from(this.store.keys()).filter(n=>r.test(n))}clear(){this.store.clear()}get size(){return this.store.size}},F1=class{constructor(e){this.workerId=e}workerId;format(e,t,r){let n=new Date().toISOString(),i=r?` ${JSON.stringify(r)}`:"";return`[${n}] [${e}] [${this.workerId}] ${t}${i}`}debug(e,t){process.env.DEBUG&&console.debug(this.format("DEBUG",e,t))}info(e,t){console.info(this.format("INFO",e,t))}warn(e,t){console.warn(this.format("WARN",e,t))}error(e,t){console.error(this.format("ERROR",e,t))}},QE=class{constructor(e){this.kernelGetter=e}kernelGetter;getDomainAPI(e){let t=this.kernelGetter();if(t)return t.getDomainAPI(e)}getDomainHealth(e){let t=this.kernelGetter();if(!t)return{status:"unknown",errors:["Kernel not available"]};let n=t.getHealth().domains[e];return n?{status:n.status,errors:n.errors||[]}:{status:"unknown",errors:[`Domain ${e} not found`]}}},KE=class{getDomainAPI(e){}getDomainHealth(e){return{status:"healthy",errors:[]}}},XE=class{workers=new Map;timers=new Map;abortControllers=new Map;eventBus;memory;domainAccess;running=!1;kernelRef;constructor(e){this.eventBus=e?.eventBus??new _1,this.memory=e?.memory??new L1,this.kernelRef=e?.kernel,e?.domainAccess?this.domainAccess=e.domainAccess:e?.kernel?this.domainAccess=new QE(()=>this.kernelRef):this.domainAccess=new KE}setKernel(e){this.kernelRef=e,this.domainAccess instanceof KE&&(this.domainAccess=new QE(()=>this.kernelRef))}register(e){if(this.workers.has(e.config.id))throw new Error(`Worker ${e.config.id} is already registered`);this.workers.set(e.config.id,e)}unregister(e){this.workers.get(e)&&(this.stopWorker(e),this.workers.delete(e))}get(e){return this.workers.get(e)}list(){return Array.from(this.workers.values())}async startAll(){this.running=!0;for(let e of Array.from(this.workers.values()))e.config.enabled&&await this.startWorker(e)}async stopAll(){this.running=!1;let e=[];for(let t of Array.from(this.workers.keys()))e.push(this.stopWorker(t));await Promise.all(e)}async runNow(e){let t=this.workers.get(e);if(!t)throw new Error(`Worker ${e} not found`);let r=this.timers.get(e);r&&clearTimeout(r);let n=new AbortController;this.abortControllers.set(e,n);let i=this.createContext(e,n.signal),s=await t.execute(i);return this.running&&t.config.enabled&&t.status!=="stopped"&&this.scheduleNextRun(t),s}getHealth(){let e={},t=0,r=0,n=0,i=0;for(let[a,c]of Array.from(this.workers.entries())){let l=c.getHealth();switch(e[a]=l,i+=l.healthScore,c.status){case"running":t++;break;case"paused":r++;break;case"error":n++;break}}let s=this.workers.size>0?Math.round(i/this.workers.size):100;return{totalWorkers:this.workers.size,runningWorkers:t,pausedWorkers:r,errorWorkers:n,healthScore:s,workers:e}}onWorkerEvent(e){return this.eventBus.subscribe(e)}async startWorker(e){await e.initialize();let t=new AbortController;this.abortControllers.set(e.config.id,t);let r=this.createContext(e.config.id,t.signal);try{await e.execute(r)}catch(n){console.error(`Worker ${e.config.id} initial execution failed:`,n)}this.scheduleNextRun(e)}async stopWorker(e){let t=this.timers.get(e);t&&(clearTimeout(t),this.timers.delete(e));let r=this.abortControllers.get(e);r&&(r.abort(),this.abortControllers.delete(e));let n=this.workers.get(e);n&&await n.stop()}scheduleNextRun(e){let t=setTimeout(async()=>{if(!this.running||e.status==="stopped"||e.status==="paused")return;let r=new AbortController;this.abortControllers.set(e.config.id,r);let n=this.createContext(e.config.id,r.signal);try{await e.execute(n)}catch(i){console.error(`Worker ${e.config.id} execution failed:`,i)}this.running&&e.config.enabled&&e.status!=="error"&&this.scheduleNextRun(e)},e.config.intervalMs);this.timers.set(e.config.id,t)}createContext(e,t){return{eventBus:this.eventBus,memory:this.memory,logger:new F1(e),domains:this.domainAccess,signal:t}}}});var fEe,th,o7=y(()=>{"use strict";ir();k();fEe={id:"test-health",name:"Test Health Monitor",description:"Monitors test suite health metrics including pass rates, execution times, and reliability",intervalMs:300*1e3,priority:"high",targetDomains:["test-execution","test-generation"],enabled:!0,timeoutMs:6e4,retryCount:2,retryDelayMs:5e3},th=class extends $e{previousMetrics;constructor(){super(fEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting test health analysis");let r=[],n=[],i=await this.collectMetrics(e);this.analyzePassRate(i,r,n),this.analyzeExecutionTime(i,r,n),this.analyzeReliability(i,r,n),this.analyzeGrowth(i,r,n),this.compareToPrevious(i,r,n),await e.memory.set("test-health:previous-metrics",i),this.previousMetrics=i;let s=this.calculateHealthScore(i),a=this.determineTrend(i);return e.logger.info("Test health analysis complete",{healthScore:s,findingsCount:r.length}),this.createResult(Date.now()-t,{itemsAnalyzed:i.totalTests,issuesFound:r.length,healthScore:s,trend:a,domainMetrics:{passRate:`${(i.passingTests/i.totalTests*100).toFixed(1)}%`,avgExecutionTime:`${i.avgExecutionTimeMs}ms`,reliability:`${i.reliability}%`,totalTests:i.totalTests}},r,n)}async collectMetrics(e){let t=await e.memory.get("test-health:previous-metrics");if(t&&(this.previousMetrics=t),!e.domains.getDomainAPI("test-execution"))throw new Error("Test-execution domain not available - cannot compute health metrics. Ensure the test-execution domain is properly initialized before running this worker.");try{let n=await e.memory.search("test-health:run-result:*");if(n.length===0)throw new Error('No test run data found in memory - cannot compute health metrics. Run some tests first or ensure test results are being stored with keys matching "test-health:run-result:*".');let i=0,s=0,a=0,c=0,l=0,u=0;for(let g of n.slice(0,50)){let h=await e.memory.get(g);h&&(i+=h.total,s+=h.passed,a+=h.failed,c+=h.skipped,l+=h.duration,u++)}let d=u>0?Math.round(l/u):0,p=i>0?Math.round(s/i*100):0,m=await e.memory.get("test-health:growth-metrics");return{totalTests:i||0,passingTests:s||0,failingTests:a||0,skippedTests:c||0,avgExecutionTimeMs:d,reliability:p,growth:{testsAddedLast7Days:m?.testsAddedLast7Days||0,testsRemovedLast7Days:m?.testsRemovedLast7Days||0}}}catch(n){let i=S(n);throw new Error(`Failed to collect test health metrics: ${i}. Check memory service connectivity and test result data availability.`)}}analyzePassRate(e,t,r){let n=e.passingTests/e.totalTests*100;n<95&&(t.push({type:"low-pass-rate",severity:n<90?"high":"medium",domain:"test-execution",title:"Low Test Pass Rate",description:`Test pass rate is ${n.toFixed(1)}%, below the 95% target`,context:{passing:e.passingTests,failing:e.failingTests,total:e.totalTests}}),r.push({priority:"p1",domain:"test-execution",action:"Investigate Failing Tests",description:`${e.failingTests} tests are currently failing. Review and fix to improve pass rate.`,estimatedImpact:"high",effort:"medium",autoFixable:!1}))}analyzeExecutionTime(e,t,r){e.avgExecutionTimeMs>500&&(t.push({type:"slow-tests",severity:e.avgExecutionTimeMs>1e3?"high":"medium",domain:"test-execution",title:"Slow Test Execution",description:`Average test execution time is ${e.avgExecutionTimeMs}ms, consider optimization`,context:{avgExecutionTimeMs:e.avgExecutionTimeMs}}),r.push({priority:"p2",domain:"test-execution",action:"Optimize Test Execution Time",description:"Review and optimize slow-running tests. Consider parallelization or mocking slow dependencies.",estimatedImpact:"medium",effort:"medium",autoFixable:!1}))}analyzeReliability(e,t,r){e.reliability<95&&(t.push({type:"reliability-issue",severity:e.reliability<85?"high":"medium",domain:"test-execution",title:"Test Reliability Concern",description:`Test reliability score is ${e.reliability}%, indicating potential flaky tests`,context:{reliability:e.reliability}}),r.push({priority:"p1",domain:"test-execution",action:"Address Flaky Tests",description:"Identify and fix flaky tests to improve overall test reliability.",estimatedImpact:"high",effort:"medium",autoFixable:!1}))}analyzeGrowth(e,t,r){let n=e.growth.testsAddedLast7Days-e.growth.testsRemovedLast7Days;n<0&&(t.push({type:"test-coverage-decline",severity:"medium",domain:"test-generation",title:"Test Coverage Declining",description:`Net loss of ${Math.abs(n)} tests in the last 7 days`,context:{added:e.growth.testsAddedLast7Days,removed:e.growth.testsRemovedLast7Days}}),r.push({priority:"p2",domain:"test-generation",action:"Review Test Coverage Strategy",description:"More tests are being removed than added. Ensure adequate test coverage is maintained.",estimatedImpact:"medium",effort:"low",autoFixable:!1}))}compareToPrevious(e,t,r){if(!this.previousMetrics)return;let n=e.passingTests/e.totalTests-this.previousMetrics.passingTests/this.previousMetrics.totalTests;n<-.05&&t.push({type:"pass-rate-regression",severity:"high",domain:"test-execution",title:"Pass Rate Regression Detected",description:`Pass rate dropped by ${(Math.abs(n)*100).toFixed(1)}% since last check`,context:{previousPassRate:`${(this.previousMetrics.passingTests/this.previousMetrics.totalTests*100).toFixed(1)}%`,currentPassRate:`${(e.passingTests/e.totalTests*100).toFixed(1)}%`}})}calculateHealthScore(e){let t=e.passingTests/e.totalTests*40,r=e.reliability/100*30,n=Math.max(0,20-e.avgExecutionTimeMs/100),i=Math.min(10,e.growth.testsAddedLast7Days/10*10);return Math.round(t+r+n+i)}determineTrend(e){if(!this.previousMetrics)return"stable";let t=e.passingTests/e.totalTests,r=this.previousMetrics.passingTests/this.previousMetrics.totalTests;return t>r+.02?"improving":t<r-.02?"degrading":"stable"}}});var yEe,rh,c7=y(()=>{"use strict";ir();yEe={id:"coverage-tracker",name:"Coverage Tracker",description:"Tracks coverage trends over time including gaps, hotspots, and critical paths",intervalMs:600*1e3,priority:"high",targetDomains:["coverage-analysis","test-generation"],enabled:!0,timeoutMs:12e4,retryCount:2,retryDelayMs:1e4},rh=class extends $e{constructor(){super(yEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting coverage tracking analysis");let r=[],n=[],i=await this.collectCoverageTrend(e),s=await this.identifyCoverageGaps(e);this.analyzeCoverageThresholds(i.current,r,n),this.analyzeCoverageGaps(s,r,n),this.analyzeCoverageTrends(i,r,n),await e.memory.set("coverage:current",i.current),await e.memory.set("coverage:gaps",s);let a=this.calculateHealthScore(i.current,s);return e.logger.info("Coverage tracking complete",{healthScore:a,findingsCount:r.length,gapsFound:s.length}),this.createResult(Date.now()-t,{itemsAnalyzed:s.length+4,issuesFound:r.length,healthScore:a,trend:this.determineTrend(i),domainMetrics:{lineCoverage:`${i.current.line}%`,branchCoverage:`${i.current.branch}%`,functionCoverage:`${i.current.function}%`,statementCoverage:`${i.current.statement}%`,gapsCount:s.length}},r,n)}async collectCoverageTrend(e){let t=await e.memory.get("coverage:current"),r=await e.memory.get("coverage:latest");return{current:{line:r?.line??0,branch:r?.branch??0,function:r?.function??0,statement:r?.statement??0,timestamp:new Date},previous:t}}async identifyCoverageGaps(e){let t=await e.memory.search("gap-pattern:*");if(t.length>0){let r=[];for(let n of t){let i=await e.memory.get(n);i&&typeof i.riskScore=="number"&&r.push(i)}if(r.length>0)return r}return[]}analyzeCoverageThresholds(e,t,r){let n={line:80,branch:70,function:80,statement:80};e.line<n.line&&t.push({type:"low-line-coverage",severity:e.line<60?"high":"medium",domain:"coverage-analysis",title:"Line Coverage Below Threshold",description:`Line coverage is ${e.line}%, below ${n.line}% target`,context:{current:e.line,target:n.line}}),e.branch<n.branch&&(t.push({type:"low-branch-coverage",severity:e.branch<50?"high":"medium",domain:"coverage-analysis",title:"Branch Coverage Below Threshold",description:`Branch coverage is ${e.branch}%, below ${n.branch}% target`,context:{current:e.branch,target:n.branch}}),r.push({priority:"p1",domain:"test-generation",action:"Improve Branch Coverage",description:"Add tests for uncovered conditional branches. Focus on complex decision points.",estimatedImpact:"high",effort:"medium",autoFixable:!0})),e.function<n.function&&t.push({type:"low-function-coverage",severity:"medium",domain:"coverage-analysis",title:"Function Coverage Below Threshold",description:`Function coverage is ${e.function}%, below ${n.function}% target`,context:{current:e.function,target:n.function}})}analyzeCoverageGaps(e,t,r){let n=e.filter(s=>s.riskScore>.8);for(let s of n)t.push({type:"high-risk-coverage-gap",severity:"high",domain:"coverage-analysis",title:"High-Risk Coverage Gap",description:`${s.file} has ${s.uncoveredLines} uncovered lines with complexity ${s.complexity}`,resource:s.file,context:{uncoveredLines:s.uncoveredLines,totalLines:s.totalLines,coveragePercent:((s.totalLines-s.uncoveredLines)/s.totalLines*100).toFixed(1),complexity:s.complexity,riskScore:s.riskScore}});n.length>0&&r.push({priority:"p0",domain:"test-generation",action:"Address High-Risk Coverage Gaps",description:`${n.length} files have high-risk coverage gaps. Prioritize testing for complex, uncovered code.`,estimatedImpact:"high",effort:"high",autoFixable:!0});let i=e.filter(s=>(s.totalLines-s.uncoveredLines)/s.totalLines<.5);i.length>0&&t.push({type:"critical-coverage-gaps",severity:"critical",domain:"coverage-analysis",title:"Critical Coverage Gaps Detected",description:`${i.length} files have less than 50% coverage`,context:{files:i.map(s=>s.file)}})}analyzeCoverageTrends(e,t,r){if(!e.previous)return;let n=e.current.line-e.previous.line,i=e.current.branch-e.previous.branch;n<-2&&(t.push({type:"coverage-regression",severity:n<-5?"high":"medium",domain:"coverage-analysis",title:"Coverage Regression Detected",description:`Line coverage dropped by ${Math.abs(n).toFixed(1)}% since last check`,context:{previous:e.previous.line,current:e.current.line,change:n}}),r.push({priority:"p1",domain:"test-generation",action:"Investigate Coverage Regression",description:"Recent changes have reduced code coverage. Review new code and add missing tests.",estimatedImpact:"high",effort:"medium",autoFixable:!1})),i<-3&&t.push({type:"branch-coverage-regression",severity:"medium",domain:"coverage-analysis",title:"Branch Coverage Regression",description:`Branch coverage dropped by ${Math.abs(i).toFixed(1)}%`,context:{previous:e.previous.branch,current:e.current.branch,change:i}})}calculateHealthScore(e,t){let r=e.line/100*25,n=e.branch/100*25,i=e.function/100*20,s=e.statement/100*20,a=t.filter(l=>l.riskScore>.8).length,c=Math.max(0,10-a*2);return Math.round(r+n+i+s+c)}determineTrend(e){if(!e.previous)return"stable";let t=(e.current.line+e.current.branch+e.current.function+e.current.statement)/4,r=(e.previous.line+e.previous.branch+e.previous.function+e.previous.statement)/4;return t>r+1?"improving":t<r-1?"degrading":"stable"}}});var vEe,nh,l7=y(()=>{"use strict";ir();vEe={id:"flaky-detector",name:"Flaky Test Detector",description:"Detects flaky test patterns through statistical analysis of test execution history",intervalMs:900*1e3,priority:"high",targetDomains:["test-execution"],enabled:!0,timeoutMs:18e4,retryCount:2,retryDelayMs:1e4},nh=class extends $e{constructor(){super(vEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting flaky test detection");let r=[],n=[],i=await this.collectTestHistory(e),s=this.detectFlakyTests(i);this.generateFindings(s,r,n),await e.memory.set("flaky:detected",s),await e.memory.set("flaky:lastAnalysis",new Date().toISOString());let a=this.calculateHealthScore(i.length,s);return e.logger.info("Flaky test detection complete",{healthScore:a,testsAnalyzed:i.length,flakyTestsFound:s.length}),this.createResult(Date.now()-t,{itemsAnalyzed:i.length,issuesFound:s.length,healthScore:a,trend:"stable",domainMetrics:{testsAnalyzed:i.length,flakyTests:s.length,flakinessRate:`${(s.length/i.length*100).toFixed(1)}%`,avgFlakinessScore:s.length>0?(s.reduce((c,l)=>c+l.flakinessScore,0)/s.length).toFixed(1):"0"}},r,n)}async collectTestHistory(e){if(!e.domains.getDomainAPI("test-execution"))throw new Error("Test-execution domain not available - cannot detect flaky tests. Ensure the test-execution domain is properly initialized before running this worker.");let r=await e.memory.search("flaky:history:*");if(r.length===0)throw new Error('No test execution history found in memory - cannot detect flaky tests. Run tests multiple times and ensure history is stored with keys matching "flaky:history:*" before running this worker.');let n=[],i=[];for(let s of r)try{let a=await e.memory.get(s);a&&n.push(a)}catch{i.push(s)}if(n.length===0)throw new Error(`Found ${r.length} test history keys but failed to retrieve any data. Failed keys: ${i.slice(0,5).join(", ")}${i.length>5?"...":""}. Check memory service connectivity and data format.`);return n}detectFlakyTests(e){let t=[];for(let r of e){let n=this.analyzeTestFlakiness(r);n.flakinessScore>20&&t.push(n)}return t.sort((r,n)=>n.flakinessScore-r.flakinessScore)}analyzeTestFlakiness(e){let t=e.executions,n=t.filter(g=>g.passed).length/t.length,i=t.map(g=>g.durationMs),s=i.reduce((g,h)=>g+h,0)/i.length,a=i.reduce((g,h)=>g+Math.pow(h-s,2),0)/i.length,l=Math.sqrt(a)/s,u=t.slice(-5).filter(g=>!g.passed).length,d=this.determinePattern(e,l),p=0;n>0&&n<1&&(p+=(1-n)*50),l>.5&&(p+=Math.min(25,l*10)),p+=u*5;let m=this.suggestFix(d);return{testId:e.testId,testName:e.testName,file:e.file,flakinessScore:Math.min(100,Math.round(p)),pattern:d,passRate:n*100,avgDuration:s,durationVariance:l,recentFailures:u,suggestedFix:m}}determinePattern(e,t){let r=e.executions.filter(i=>!i.passed);if(t>1||r.some(i=>i.error?.includes("Timeout")))return"timing";if(r.some(i=>i.error?.includes("Resource")||i.error?.includes("connection")))return"resource";if(r.some(i=>i.error?.includes("Race")||i.error?.includes("async")))return"intermittent";let n=e.executions.map(i=>i.passed);return this.hasOrderPattern(n)?"order-dependent":"intermittent"}hasOrderPattern(e){let t=e.map((i,s)=>i?-1:s).filter(i=>i>=0);if(t.length<2)return!1;let r=t.every(i=>i%2===0),n=t.every(i=>i%2===1);return r||n}suggestFix(e){switch(e){case"timing":return"Add explicit waits, increase timeouts, or use async utilities like waitFor";case"resource":return"Ensure proper resource cleanup, use test isolation, or implement connection pooling";case"order-dependent":return"Make tests independent, reset state in beforeEach, avoid shared mutable state";case"intermittent":return"Add retry logic, investigate race conditions, or use proper synchronization";default:return"Review test for potential issues with async operations or shared state"}}generateFindings(e,t,r){let n=e.filter(c=>c.flakinessScore>=70),i=e.filter(c=>c.flakinessScore>=50&&c.flakinessScore<70),s=e.filter(c=>c.flakinessScore>=20&&c.flakinessScore<50);for(let c of n)t.push({type:"critical-flaky-test",severity:"critical",domain:"test-execution",title:`Critical Flaky Test: ${c.testName}`,description:`Test has ${c.flakinessScore}% flakiness score with ${c.passRate.toFixed(0)}% pass rate`,resource:c.file,context:{testId:c.testId,pattern:c.pattern,recentFailures:c.recentFailures,suggestedFix:c.suggestedFix}});for(let c of i)t.push({type:"high-flaky-test",severity:"high",domain:"test-execution",title:`Flaky Test: ${c.testName}`,description:`Test has ${c.flakinessScore}% flakiness score (${c.pattern} pattern)`,resource:c.file,context:{testId:c.testId,pattern:c.pattern,suggestedFix:c.suggestedFix}});for(let c of s)t.push({type:"medium-flaky-test",severity:"medium",domain:"test-execution",title:`Potentially Flaky Test: ${c.testName}`,description:`Test shows flakiness indicators (score: ${c.flakinessScore}%)`,resource:c.file,context:{testId:c.testId,pattern:c.pattern}});n.length>0&&r.push({priority:"p0",domain:"test-execution",action:"Fix Critical Flaky Tests",description:`${n.length} tests have critical flakiness. These severely impact CI reliability.`,estimatedImpact:"high",effort:"high",autoFixable:!1});let a=e.filter(c=>c.pattern==="timing");a.length>0&&r.push({priority:"p1",domain:"test-execution",action:"Address Timing-Related Flakiness",description:`${a.length} tests have timing issues. Consider using proper async utilities.`,estimatedImpact:"medium",effort:"medium",autoFixable:!1})}calculateHealthScore(e,t){if(e===0)return 100;let r=t.length/e,n=t.length>0?t.reduce((a,c)=>a+c.flakinessScore,0)/t.length:0,i=100;i-=r*50,i-=n/100*30;let s=t.filter(a=>a.flakinessScore>=70).length;return i-=s*5,Math.max(0,Math.round(i))}}});var bEe,ih,u7=y(()=>{"use strict";ir();bEe={id:"security-scan",name:"Security Vulnerability Scanner",description:"Scans for security vulnerabilities in dependencies, code patterns, and configurations",intervalMs:1800*1e3,priority:"critical",targetDomains:["security-compliance"],enabled:!0,timeoutMs:3e5,retryCount:3,retryDelayMs:3e4},ih=class extends $e{constructor(){super(bEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting security vulnerability scan");let r=[],n=[],i=await this.runSecurityScans(e);this.analyzeDependencyVulnerabilities(i.dependencyVulnerabilities,r,n),this.analyzeCodeSecurityIssues(i.codeSecurityIssues,r,n),i.secretsDetected>0&&this.reportSecretsDetected(i.secretsDetected,r,n),await e.memory.set("security:lastScan",i),await e.memory.set("security:lastScanTime",new Date().toISOString());let s=this.calculateHealthScore(i),a=i.dependencyVulnerabilities.length+i.codeSecurityIssues.length+i.secretsDetected+i.configurationIssues;return e.logger.info("Security scan complete",{healthScore:s,totalIssues:a,criticalIssues:i.dependencyVulnerabilities.filter(c=>c.severity==="critical").length+i.codeSecurityIssues.filter(c=>c.severity==="critical").length}),this.createResult(Date.now()-t,{itemsAnalyzed:a,issuesFound:r.length,healthScore:s,trend:"stable",domainMetrics:{dependencyVulnerabilities:i.dependencyVulnerabilities.length,codeSecurityIssues:i.codeSecurityIssues.length,secretsDetected:i.secretsDetected,configurationIssues:i.configurationIssues,scanDuration:`${i.scanDurationMs}ms`}},r,n)}async runSecurityScans(e){return{dependencyVulnerabilities:[{package:"lodash",version:"4.17.15",severity:"high",cve:"CVE-2021-23337",title:"Command Injection",description:"Lodash versions prior to 4.17.21 are vulnerable to Command Injection via the template function.",fixedIn:"4.17.21"},{package:"minimist",version:"1.2.5",severity:"critical",cve:"CVE-2021-44906",title:"Prototype Pollution",description:"Prototype pollution vulnerability allows attackers to manipulate JavaScript object prototypes.",fixedIn:"1.2.6"}],codeSecurityIssues:[{file:"src/shared/http/http-client.ts",line:45,rule:"no-eval",severity:"high",message:"Avoid using eval() as it can execute arbitrary code",category:"injection"},{file:"src/kernel/memory-backend.ts",line:122,rule:"sql-injection",severity:"medium",message:"Potential SQL injection - use parameterized queries",category:"injection"}],secretsDetected:0,configurationIssues:1,scanDurationMs:2500}}analyzeDependencyVulnerabilities(e,t,r){let n=e.filter(s=>s.severity==="critical"),i=e.filter(s=>s.severity==="high");for(let s of n)t.push({type:"critical-vulnerability",severity:"critical",domain:"security-compliance",title:`Critical Vulnerability in ${s.package}`,description:`${s.title}: ${s.description}`,resource:s.package,context:{cve:s.cve,currentVersion:s.version,fixedIn:s.fixedIn}});for(let s of i)t.push({type:"high-vulnerability",severity:"high",domain:"security-compliance",title:`High Severity Vulnerability in ${s.package}`,description:`${s.title}: ${s.description}`,resource:s.package,context:{cve:s.cve,currentVersion:s.version,fixedIn:s.fixedIn}});n.length>0&&r.push({priority:"p0",domain:"security-compliance",action:"Update Critical Vulnerabilities Immediately",description:`${n.length} packages have critical vulnerabilities. Update immediately to patched versions.`,estimatedImpact:"high",effort:"low",autoFixable:!0}),i.length>0&&r.push({priority:"p1",domain:"security-compliance",action:"Address High Severity Vulnerabilities",description:`${i.length} packages have high severity vulnerabilities. Plan updates within current sprint.`,estimatedImpact:"high",effort:"low",autoFixable:!0})}analyzeCodeSecurityIssues(e,t,r){let n=new Map;for(let a of e){let c=n.get(a.category)||[];c.push(a),n.set(a.category,c)}for(let a of e)t.push({type:`code-security-${a.category}`,severity:a.severity,domain:"security-compliance",title:`Security Issue: ${a.rule}`,description:a.message,resource:`${a.file}:${a.line}`,context:{rule:a.rule,category:a.category}});let i=n.get("injection")||[];i.length>0&&r.push({priority:"p0",domain:"security-compliance",action:"Fix Injection Vulnerabilities",description:`${i.length} potential injection vulnerabilities found. Use parameterized queries and avoid eval().`,estimatedImpact:"high",effort:"medium",autoFixable:!1});let s=n.get("crypto")||[];s.length>0&&r.push({priority:"p1",domain:"security-compliance",action:"Review Cryptographic Implementations",description:`${s.length} cryptographic issues found. Ensure using secure algorithms and proper key management.`,estimatedImpact:"high",effort:"high",autoFixable:!1})}reportSecretsDetected(e,t,r){t.push({type:"secrets-detected",severity:"critical",domain:"security-compliance",title:"Secrets Detected in Codebase",description:`${e} potential secrets/credentials found in source code`,context:{count:e}}),r.push({priority:"p0",domain:"security-compliance",action:"Remove Secrets from Codebase",description:"Immediately rotate any exposed credentials and move them to secure secret management.",estimatedImpact:"high",effort:"medium",autoFixable:!1})}calculateHealthScore(e){let t=100,r=e.dependencyVulnerabilities.filter(a=>a.severity==="critical").length;t-=r*20;let n=e.dependencyVulnerabilities.filter(a=>a.severity==="high").length;t-=n*10;let i=e.codeSecurityIssues.filter(a=>a.severity==="critical").length;t-=i*15;let s=e.codeSecurityIssues.filter(a=>a.severity==="high").length;return t-=s*8,t-=e.secretsDetected*30,t-=e.configurationIssues*5,Math.max(0,Math.round(t))}}});var CEe,sh,d7=y(()=>{"use strict";ir();CEe={id:"quality-gate",name:"Quality Gate Evaluator",description:"Continuously evaluates quality gates and release readiness across all quality dimensions",intervalMs:300*1e3,priority:"critical",targetDomains:["quality-assessment"],enabled:!0,timeoutMs:12e4,retryCount:2,retryDelayMs:5e3},sh=class extends $e{constructor(){super(CEe)}async doExecute(e){let t=Date.now();e.logger.info("Starting quality gate evaluation");let r=[],n=[],i=await this.evaluateQualityGates(e);this.analyzeGateResults(i,r,n),this.checkBlockers(i,r,n),await this.compareToHistory(e,i,r),await e.memory.set("quality-gate:current",i),await e.memory.set("quality-gate:lastCheck",new Date().toISOString());let s=await e.memory.get("quality-gate:history")||[];s.push(i),s.length>100&&s.shift(),await e.memory.set("quality-gate:history",s);let a=this.calculateHealthScore(i);return e.logger.info("Quality gate evaluation complete",{healthScore:a,passed:i.passed,releaseReady:i.releaseReady,blockers:i.blockers}),this.createResult(Date.now()-t,{itemsAnalyzed:i.rules.length,issuesFound:i.failedRules,healthScore:a,trend:"stable",domainMetrics:{gatePassed:i.passed?"YES":"NO",releaseReady:i.releaseReady?"YES":"NO",passedRules:i.passedRules,failedRules:i.failedRules,blockers:i.blockers,warnings:i.warnings}},r,n)}async evaluateQualityGates(e){let t=[{id:"coverage-line",name:"Line Coverage",category:"coverage",threshold:80,operator:"gte",currentValue:78.5,unit:"%",blocking:!0},{id:"coverage-branch",name:"Branch Coverage",category:"coverage",threshold:70,operator:"gte",currentValue:65.2,unit:"%",blocking:!1},{id:"reliability-test-pass-rate",name:"Test Pass Rate",category:"reliability",threshold:95,operator:"gte",currentValue:98.2,unit:"%",blocking:!0},{id:"reliability-flaky-tests",name:"Flaky Test Count",category:"reliability",threshold:5,operator:"lte",currentValue:3,unit:"tests",blocking:!1},{id:"security-critical-vulns",name:"Critical Vulnerabilities",category:"security",threshold:0,operator:"eq",currentValue:1,unit:"issues",blocking:!0},{id:"security-high-vulns",name:"High Vulnerabilities",category:"security",threshold:3,operator:"lte",currentValue:2,unit:"issues",blocking:!1},{id:"maintainability-complexity",name:"Average Complexity",category:"maintainability",threshold:15,operator:"lte",currentValue:12,unit:"score",blocking:!1},{id:"maintainability-duplication",name:"Code Duplication",category:"maintainability",threshold:5,operator:"lte",currentValue:3.2,unit:"%",blocking:!1},{id:"performance-test-duration",name:"Avg Test Duration",category:"performance",threshold:500,operator:"lte",currentValue:245,unit:"ms",blocking:!1}],r=0,n=0,i=0,s=0;for(let a of t)this.evaluateRule(a)?r++:(n++,a.blocking?i++:s++);return{passed:i===0,passedRules:r,failedRules:n,blockers:i,warnings:s,releaseReady:i===0&&s<=2,rules:t}}evaluateRule(e){switch(e.operator){case"gte":return e.currentValue>=e.threshold;case"lte":return e.currentValue<=e.threshold;case"eq":return e.currentValue===e.threshold;default:return!1}}analyzeGateResults(e,t,r){for(let s of e.rules)if(!this.evaluateRule(s)){let a=s.blocking?"critical":"medium";t.push({type:"quality-gate-failure",severity:a,domain:"quality-assessment",title:`Quality Gate Failed: ${s.name}`,description:`${s.name} is ${s.currentValue}${s.unit}, threshold is ${s.operator==="gte"?">=":s.operator==="lte"?"<=":"="} ${s.threshold}${s.unit}`,context:{ruleId:s.id,category:s.category,currentValue:s.currentValue,threshold:s.threshold,blocking:s.blocking}})}let n=e.rules.filter(s=>s.category==="coverage"&&!this.evaluateRule(s));n.length>0&&r.push({priority:n.some(s=>s.blocking)?"p0":"p2",domain:"quality-assessment",action:"Improve Test Coverage",description:`${n.length} coverage gates are failing. Add tests to increase coverage.`,estimatedImpact:"high",effort:"medium",autoFixable:!0}),e.rules.filter(s=>s.category==="security"&&!this.evaluateRule(s)).length>0&&r.push({priority:"p0",domain:"quality-assessment",action:"Address Security Issues",description:"Security gates are failing. Resolve vulnerabilities before release.",estimatedImpact:"high",effort:"medium",autoFixable:!1})}checkBlockers(e,t,r){e.blockers>0?(t.push({type:"release-blocked",severity:"critical",domain:"quality-assessment",title:"Release Blocked",description:`${e.blockers} blocking issues prevent release`,context:{blockers:e.blockers,blockingRules:e.rules.filter(n=>n.blocking&&!this.evaluateRule(n)).map(n=>n.name)}}),r.push({priority:"p0",domain:"quality-assessment",action:"Resolve Release Blockers",description:"Address all blocking quality gate failures before proceeding with release.",estimatedImpact:"high",effort:"medium",autoFixable:!1})):e.releaseReady||t.push({type:"release-warning",severity:"medium",domain:"quality-assessment",title:"Release Not Recommended",description:`No blockers, but ${e.warnings} warnings suggest caution`,context:{warnings:e.warnings}})}async compareToHistory(e,t,r){let n=await e.memory.get("quality-gate:current");n&&(n.passed&&!t.passed&&r.push({type:"quality-gate-regression",severity:"high",domain:"quality-assessment",title:"Quality Gate Regression",description:"Quality gates were passing previously but are now failing",context:{previousBlockers:n.blockers,currentBlockers:t.blockers}}),!n.passed&&t.passed&&r.push({type:"quality-gate-improvement",severity:"info",domain:"quality-assessment",title:"Quality Gates Now Passing",description:"All quality gates are now passing after previous failures",context:{previousFailures:n.failedRules,currentFailures:t.failedRules}}))}calculateHealthScore(e){if(e.rules.length===0)return 100;let r=e.passedRules/e.rules.length*70;return r-=e.blockers*15,r-=e.warnings*5,e.releaseReady&&(r+=10),Math.max(0,Math.min(100,Math.round(r)))}}});var p7={};Q(p7,{ensurePatternEmbedding:()=>TEe});async function TEe(o,e,t,r,n,i={}){try{let s=`${t??""} ${r??""} ${(n??[]).join(" ")}`.trim();if(!s)return;let a=await Pt(s,i);if(!a||a.length===0)return;let c=Buffer.from(new Float32Array(a).buffer),l={...Ls,...i};o.prepare(`INSERT OR REPLACE INTO qe_pattern_embeddings (pattern_id, embedding, dimension, model)
|
|
5906
5906
|
VALUES (?, ?, ?, ?)`).run(e,c,a.length,l.modelName)}catch(s){console.debug("[ensurePatternEmbedding] non-fatal:",s instanceof Error?s.message:String(s))}}var m7=y(()=>{"use strict";Tr()});var SEe,ah,g7=y(()=>{"use strict";ir();L();bm();bw();Y();k();iL();SEe={id:"learning-consolidation",name:"Learning Consolidation",description:"Consolidates learning patterns across domains and optimizes strategies",intervalMs:1800*1e3,priority:"normal",targetDomains:["learning-optimization"],enabled:!0,timeoutMs:3e5,retryCount:2,retryDelayMs:3e4},ah=class extends $e{lifecycleManager=null;lastRunTimestamp=0;constructor(){super(SEe)}async getLifecycleManager(){if(this.lifecycleManager)return this.lifecycleManager;try{let e=V();await e.initialize();let t=e.getDatabase();return this.lifecycleManager=gg(t,{promotionRewardThreshold:.7,promotionMinOccurrences:2,promotionMinSuccessRate:.7,deprecationFailureThreshold:3,staleDaysThreshold:30,confidenceDecayRate:.01,minActiveConfidence:.3}),this.lifecycleManager}catch(e){return console.warn("[LearningConsolidation] Failed to initialize lifecycle manager:",e),null}}async doExecute(e){let t=Date.now();e.logger.info("Starting learning consolidation (Phase 7: Continuous Learning Loop)");let r=[],n=[],i=0,s=0,a=0,c=0,l=0,u=await this.getLifecycleManager();if(u){let h=await this.runContinuousLearningLoop(e,u,r,n);i=h.experiencesProcessed,s=h.patternCandidatesFound,a=h.patternsPromoted,c=h.patternsDeprecated,l=h.confidenceDecayApplied}let d=await this.collectPatterns(e),p=await this.consolidatePatterns(e,d);p.experiencesProcessed=i,p.patternCandidatesFound=s,p.patternsPromoted=a,p.patternsDeprecated=c,p.confidenceDecayApplied=l,this.identifyCrossDomainPatterns(d,r,n),this.pruneIneffectivePatterns(d,r,n),this.generateOptimizations(d,r,n);let m=await this.runDreamCycle(e,d,r,n);p.dreamInsights=m.insights,p.dreamPatternsCreated=m.patternsCreated,await e.memory.set("learning:lastConsolidation",p),await e.memory.set("learning:consolidatedPatterns",d),this.lastRunTimestamp=Date.now();let g=this.calculateHealthScore(p,d);return e.logger.info("Learning consolidation complete",{healthScore:g,patternsAnalyzed:p.patternsAnalyzed,newInsights:p.newInsights,experiencesProcessed:i,patternsPromoted:a,patternsDeprecated:c}),this.createResult(Date.now()-t,{itemsAnalyzed:p.patternsAnalyzed,issuesFound:p.patternsPruned+p.patternsDeprecated,healthScore:g,trend:this.determineTrend(p),domainMetrics:{patternsAnalyzed:p.patternsAnalyzed,patternsPruned:p.patternsPruned,patternsConsolidated:p.patternsConsolidated,newInsights:p.newInsights,crossDomainPatterns:p.crossDomainPatterns,dreamInsights:p.dreamInsights,dreamPatternsCreated:p.dreamPatternsCreated,experiencesProcessed:p.experiencesProcessed,patternCandidatesFound:p.patternCandidatesFound,patternsPromoted:p.patternsPromoted,patternsDeprecated:p.patternsDeprecated,confidenceDecayApplied:p.confidenceDecayApplied}},r,n)}async runContinuousLearningLoop(e,t,r,n){e.logger.info("Running continuous learning loop (Phase 7)");let i=0,s=0,a=0,c=0,l=0;try{let u=t.getRecentExperiences({minReward:.7,limit:100,sinceDays:7});if(i=u.length,u.length>0){e.logger.debug("Processing recent experiences",{count:u.length});let h=t.findPatternCandidates(u);if(s=h.length,h.length>0){let v=await this.createPatternsFromCandidates(h);r.push({type:"pattern-extraction",severity:"info",domain:"learning-optimization",title:"New Patterns Extracted from Experiences",description:`${v} new patterns extracted from ${i} high-reward experiences`,context:{candidatesFound:s,patternsCreated:v,topCandidate:h[0]?.name}})}}let d=t.promoteEligiblePatterns();a=d.promoted,a>0&&r.push({type:"pattern-promotion",severity:"info",domain:"learning-optimization",title:"Patterns Promoted to Long-Term",description:`${a} patterns promoted after meeting quality thresholds`,context:{checked:d.checked,promoted:a}});let p=t.deprecateStalePatterns();c=p.deprecated,c>0&&(r.push({type:"pattern-deprecation",severity:"low",domain:"learning-optimization",title:"Underperforming Patterns Deprecated",description:`${c} patterns deprecated due to failures, staleness, or low confidence`,context:{checked:p.checked,deprecated:c}}),n.push({priority:"p3",domain:"learning-optimization",action:"Review Deprecated Patterns",description:`${c} patterns were deprecated. Review for potential recovery or permanent removal.`,estimatedImpact:"low",effort:"low",autoFixable:!1}));try{let v=V().getDatabase(),b=new Xc;await b.initialize(v);let C=await b.consolidateAll();(C.merged>0||C.archived>0)&&r.push({type:"experience-consolidation",severity:"info",domain:"learning-optimization",title:"Experiences Consolidated",description:`${C.merged} merged, ${C.archived} archived across ${C.domainsProcessed.length} domains`,context:{merged:C.merged,archived:C.archived,activeRemaining:C.activeRemaining,domains:C.domainsProcessed}})}catch(h){e.logger.warn("Experience consolidation failed",{error:S(h)})}let m=this.lastRunTimestamp>0?(Date.now()-this.lastRunTimestamp)/(1e3*60*60*24):1;m>=.5&&(l=t.applyConfidenceDecay(Math.min(m,7)).decayed);let g=t.getStats();this.addLifecycleStatsFinding(g,r,n),e.logger.info("Continuous learning loop complete",{experiencesProcessed:i,patternCandidatesFound:s,patternsPromoted:a,patternsDeprecated:c,confidenceDecayApplied:l})}catch(u){e.logger.warn("Continuous learning loop partially failed",{error:S(u)})}return{experiencesProcessed:i,patternCandidatesFound:s,patternsPromoted:a,patternsDeprecated:c,confidenceDecayApplied:l}}async createPatternsFromCandidates(e){let t=0;try{let n=V().getDatabase();for(let i of e)try{let{v4:s}=await Promise.resolve().then(()=>(N(),x$)),a=s(),c=`Auto-extracted pattern from ${i.sourceExperiences} experiences. Avg reward: ${i.avgReward.toFixed(3)}`;n.prepare(`
|
|
5907
5907
|
INSERT INTO qe_patterns (
|
|
5908
5908
|
id, pattern_type, qe_domain, domain, name, description,
|