agentic-qe 3.15.17 → 3.15.18
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/helpers/brain-checkpoint.cjs +107 -10
- package/.claude/skills/agentic-quality-engineering/SKILL.md +67 -44
- package/.claude/skills/brutal-honesty-review/SKILL.md +12 -7
- package/.claude/skills/brutal-honesty-review/evals/brutal-honesty-review.yaml +120 -0
- package/.claude/skills/brutal-honesty-review/schemas/output.json +9 -3
- package/.claude/skills/code-review-quality/SKILL.md +2 -2
- package/.claude/skills/holistic-testing-pact/SKILL.md +11 -11
- package/.claude/skills/sherlock-review/SKILL.md +4 -2
- package/.claude/skills/sherlock-review/evals/sherlock-review.yaml +124 -0
- package/.claude/skills/skills-manifest.json +1 -1
- package/.claude/skills/technical-writing/SKILL.md +12 -6
- package/.claude/skills/technical-writing/evals/technical-writing.yaml +96 -0
- package/.opencode/skills/qe-agentic-quality-engineering.yaml +2 -2
- package/.opencode/skills/qe-holistic-testing-pact.yaml +2 -2
- package/CHANGELOG.md +123 -0
- package/assets/skills/agentic-quality-engineering/SKILL.md +67 -44
- package/assets/skills/brutal-honesty-review/SKILL.md +12 -8
- package/assets/skills/brutal-honesty-review/evals/brutal-honesty-review.yaml +120 -0
- package/assets/skills/brutal-honesty-review/schemas/output.json +9 -3
- package/assets/skills/code-review-quality/SKILL.md +2 -2
- package/assets/skills/holistic-testing-pact/SKILL.md +11 -11
- package/assets/skills/sherlock-review/SKILL.md +4 -3
- package/assets/skills/sherlock-review/evals/sherlock-review.yaml +124 -0
- package/assets/skills/skills-manifest.json +1 -1
- package/assets/skills/technical-writing/SKILL.md +12 -6
- package/assets/skills/technical-writing/evals/technical-writing.yaml +96 -0
- package/dist/cli/brain-commands.d.ts +5 -0
- package/dist/cli/brain-commands.js +4 -0
- package/dist/cli/bundle.js +6 -6
- package/dist/cli/chunks/adapter-WRSDXLOT.js +2 -0
- package/dist/cli/chunks/{agent-booster-wasm-6BUOFQZA.js → agent-booster-wasm-UFNJNF3M.js} +2 -2
- package/dist/cli/chunks/{agent-handler-HPDK3JI3.js → agent-handler-EAYVRJXN.js} +2 -2
- package/dist/cli/chunks/{agent-memory-branch-5QKUTWK5.js → agent-memory-branch-M65C6WAQ.js} +2 -2
- package/dist/cli/chunks/aqe-learning-engine-O6NJBCCM.js +2 -0
- package/dist/cli/chunks/{arena-HZ35LESR.js → arena-2GDICP6R.js} +4 -4
- package/dist/cli/chunks/{arena-7OKPMNHD.js → arena-CG3X67OE.js} +2 -2
- package/dist/cli/chunks/{audit-XI575SVK.js → audit-F4FSPJPL.js} +3 -3
- package/dist/cli/chunks/base-J2FXOE77.js +2 -0
- package/dist/cli/chunks/{better-sqlite3-YO5X7ZJS.js → better-sqlite3-2MCFXW4J.js} +2 -2
- package/dist/cli/chunks/brain-handler-WGTJNYNB.js +95 -0
- package/dist/cli/chunks/{branch-enumerator-N6G44UU2.js → branch-enumerator-KL7C535H.js} +2 -2
- package/dist/cli/chunks/{browser-EVKPTLOI.js → browser-SJEXDVHS.js} +2 -2
- package/dist/cli/chunks/browser-workflow-LXGER6ZD.js +2 -0
- package/dist/cli/chunks/{chunk-VLTDW7XJ.js → chunk-244RKAEP.js} +2 -2
- package/dist/cli/chunks/{chunk-CVPXHDQU.js → chunk-27TUMXPD.js} +1 -1
- package/dist/cli/chunks/{chunk-FBBPRVNF.js → chunk-2MBYDPCP.js} +2 -2
- package/dist/cli/chunks/{chunk-P3D7SEHW.js → chunk-2Q6DTBMT.js} +1 -1
- package/dist/cli/chunks/{chunk-NE3LRUNC.js → chunk-355MI7RV.js} +13 -13
- package/dist/cli/chunks/{chunk-YCVLKU6H.js → chunk-3LX5OKBD.js} +2 -2
- package/dist/cli/chunks/{chunk-74MDUIAZ.js → chunk-3RPDKJGV.js} +1 -1
- package/dist/cli/chunks/{chunk-OWIQR6N2.js → chunk-3YMIT73A.js} +2 -2
- package/dist/cli/chunks/{chunk-VKREKVFI.js → chunk-43KUVBSU.js} +2 -2
- package/dist/cli/chunks/chunk-477FKXSS.js +2 -0
- package/dist/cli/chunks/{chunk-XPTCQKVE.js → chunk-4BIMTRRX.js} +1 -1
- package/dist/cli/chunks/{chunk-HD6W6PHV.js → chunk-4CVNVBX5.js} +2 -2
- package/dist/cli/chunks/{chunk-CQER6IJ5.js → chunk-4HL3SD4A.js} +1 -1
- package/dist/cli/chunks/{chunk-ZNXM6WVL.js → chunk-4PEG4DU2.js} +2 -2
- package/dist/cli/chunks/{chunk-BSIWI4ES.js → chunk-4QSQKFED.js} +2 -2
- package/dist/cli/chunks/chunk-53ZBETYR.js +16 -0
- package/dist/cli/chunks/{chunk-BHQ2DLJU.js → chunk-544KDWL4.js} +1 -1
- package/dist/cli/chunks/chunk-54RCGMLB.js +8 -0
- package/dist/cli/chunks/{chunk-TDZ6N43D.js → chunk-5AGXIZQ5.js} +2 -2
- package/dist/cli/chunks/{chunk-RKCN4B26.js → chunk-5M24X6W7.js} +2 -2
- package/dist/cli/chunks/{chunk-GG7PMTHD.js → chunk-5O5T4LEU.js} +1 -1
- package/dist/cli/chunks/{chunk-OWIZBZLN.js → chunk-5RFXX4IF.js} +2 -2
- package/dist/cli/chunks/{chunk-VQFV2IPV.js → chunk-62MLAQRJ.js} +1 -1
- package/dist/cli/chunks/{chunk-PCL5JRKN.js → chunk-6D6TGL2E.js} +2 -2
- package/dist/cli/chunks/{chunk-WBDWHHKP.js → chunk-6IHZDSDL.js} +2 -2
- package/dist/cli/chunks/{chunk-UOVCTK5L.js → chunk-6P3Y45QL.js} +2 -2
- package/dist/cli/chunks/{chunk-45223KK6.js → chunk-6TEVM3X3.js} +10 -10
- package/dist/cli/chunks/{chunk-K7WAI662.js → chunk-7XTUKKRA.js} +1 -1
- package/dist/cli/chunks/chunk-A3GDX6UF.js +2 -0
- package/dist/cli/chunks/{chunk-GN6OE3JT.js → chunk-A5YTKKNA.js} +1 -1
- package/dist/cli/chunks/{chunk-KR2TAAF6.js → chunk-ADNGZAT2.js} +1 -1
- package/dist/cli/chunks/{chunk-J7Q5TXFZ.js → chunk-AWQAE3SW.js} +2 -2
- package/dist/cli/chunks/{chunk-ZN35XSKF.js → chunk-AXDBQFR4.js} +2 -2
- package/dist/cli/chunks/{chunk-ND72UDVH.js → chunk-AXVD7O3F.js} +2 -2
- package/dist/cli/chunks/{chunk-SAEECT23.js → chunk-B52ULNYO.js} +2 -2
- package/dist/cli/chunks/chunk-B6S4FC7M.js +3 -0
- package/dist/cli/chunks/{chunk-Z7SKUC6P.js → chunk-BDVFSMOQ.js} +1 -1
- package/dist/cli/chunks/{chunk-CXCMATZ6.js → chunk-BGXXMX3Y.js} +2 -2
- package/dist/cli/chunks/{chunk-R3KBOQ3O.js → chunk-BKMQQY5T.js} +2 -2
- package/dist/cli/chunks/{chunk-SAZ4PJBR.js → chunk-BN2FROBQ.js} +2 -2
- package/dist/cli/chunks/{chunk-G2X3OLMN.js → chunk-BO6EQNOC.js} +2 -2
- package/dist/cli/chunks/{chunk-776K4ZLE.js → chunk-BOVAKCDC.js} +2 -2
- package/dist/cli/chunks/{chunk-QSQNXBD2.js → chunk-BSXKZDKO.js} +2 -2
- package/dist/cli/chunks/{chunk-MGZ6XZHU.js → chunk-C5QVJ5XQ.js} +1 -1
- package/dist/cli/chunks/{chunk-LOLSZG5J.js → chunk-CFQLLF3D.js} +2 -2
- package/dist/cli/chunks/{chunk-J6QRNQJF.js → chunk-DUCVLT3F.js} +7 -7
- package/dist/cli/chunks/{chunk-QTQDX4TZ.js → chunk-E4RMJCGA.js} +3 -3
- package/dist/cli/chunks/{chunk-MLMD3I75.js → chunk-EONDCWY4.js} +1 -1
- package/dist/cli/chunks/{chunk-7BSOO3CY.js → chunk-F4AGNKL2.js} +2 -2
- package/dist/cli/chunks/{chunk-IKB3M7OF.js → chunk-F6YD3BOW.js} +1 -1
- package/dist/cli/chunks/{chunk-LIF6UWHV.js → chunk-FQRS7WVA.js} +2 -2
- package/dist/cli/chunks/{chunk-QJSSUBO3.js → chunk-FT24SSDG.js} +2 -2
- package/dist/cli/chunks/chunk-FV4YNSAJ.js +5 -0
- package/dist/cli/chunks/{chunk-VITV7AEC.js → chunk-FVDM3X42.js} +2 -2
- package/dist/cli/chunks/{chunk-LN7NKE3N.js → chunk-FVH7TXWU.js} +2 -2
- package/dist/cli/chunks/{chunk-FBSBXCZS.js → chunk-FWR5QY37.js} +2 -2
- package/dist/cli/chunks/{chunk-X2DWHGCC.js → chunk-FYINK2B7.js} +2 -2
- package/dist/cli/chunks/{chunk-ECKHDHR2.js → chunk-GGISVPOZ.js} +2 -2
- package/dist/cli/chunks/{chunk-SRBCBVSI.js → chunk-GPIJIZJQ.js} +2 -2
- package/dist/cli/chunks/{chunk-YR5QBUHZ.js → chunk-GXEVOT5F.js} +2 -2
- package/dist/cli/chunks/{chunk-ZTP3DQ5M.js → chunk-GZ4VB5RI.js} +1 -1
- package/dist/cli/chunks/{chunk-HWQPMUSN.js → chunk-HBDSCYSK.js} +2 -2
- package/dist/cli/chunks/{chunk-XBTGEYED.js → chunk-HGG4HR7C.js} +2 -2
- package/dist/cli/chunks/{chunk-YD2C6EPN.js → chunk-HSCKWWO2.js} +2 -2
- package/dist/cli/chunks/{chunk-LOMT4UC2.js → chunk-HSQ3GUYJ.js} +2 -2
- package/dist/cli/chunks/{chunk-ZC3KDNJW.js → chunk-HZQBW5EM.js} +3 -3
- package/dist/cli/chunks/{chunk-SUAZ5Z47.js → chunk-IGIYANVT.js} +2 -2
- package/dist/cli/chunks/{chunk-IHQGNDMX.js → chunk-IPWMSXBF.js} +2 -2
- package/dist/cli/chunks/{chunk-6V6BD6PH.js → chunk-IWVNC7VY.js} +1 -1
- package/dist/cli/chunks/{chunk-M2YI5YUR.js → chunk-IZODXKZD.js} +2 -2
- package/dist/cli/chunks/{chunk-LG5PPJT7.js → chunk-J2MT2OJV.js} +1 -1
- package/dist/cli/chunks/{chunk-6LSZCEW2.js → chunk-JKIJVVSP.js} +1 -1
- package/dist/cli/chunks/{chunk-REY52O7J.js → chunk-JMRDT2XK.js} +1 -1
- package/dist/cli/chunks/{chunk-XEYFZLIT.js → chunk-JR2UMTKG.js} +1 -1
- package/dist/cli/chunks/{chunk-DJDVD6RM.js → chunk-K6CH4CFF.js} +2 -2
- package/dist/cli/chunks/{chunk-2PCEMDIX.js → chunk-K7KW5QB5.js} +78 -87
- package/dist/cli/chunks/{chunk-EPVPXHL7.js → chunk-KFCQP434.js} +2 -2
- package/dist/cli/chunks/{chunk-TWBZONKT.js → chunk-KH4T6STG.js} +2 -2
- package/dist/cli/chunks/{chunk-JI33PMPZ.js → chunk-KJBYZO57.js} +1 -1
- package/dist/cli/chunks/{chunk-PK34KJH7.js → chunk-KP4OKOKV.js} +2 -2
- package/dist/cli/chunks/chunk-L2MBKVSE.js +2 -0
- package/dist/cli/chunks/{chunk-JVWZAE2H.js → chunk-L3IPUIT3.js} +2 -2
- package/dist/cli/chunks/{chunk-KT2QCXO6.js → chunk-L7PSU2YN.js} +2 -2
- package/dist/cli/chunks/{chunk-HAQJFUAQ.js → chunk-LA3JPGQA.js} +2 -2
- package/dist/cli/chunks/{chunk-LV7UIK4Q.js → chunk-LC2QRN7V.js} +14 -13
- package/dist/cli/chunks/{chunk-KTORRIX3.js → chunk-LHY7TMTM.js} +2 -2
- package/dist/cli/chunks/{chunk-IJSROBM6.js → chunk-LLQ2UMF6.js} +3 -3
- package/dist/cli/chunks/{chunk-NKUHMA4T.js → chunk-LOJ7OO6W.js} +2 -2
- package/dist/cli/chunks/{chunk-OJIUIEI4.js → chunk-LPUSH3VF.js} +1 -1
- package/dist/cli/chunks/{chunk-WAOEQA3W.js → chunk-LSEC2BU7.js} +2 -2
- package/dist/cli/chunks/{chunk-YMUY3TES.js → chunk-LTGB7OIU.js} +2 -2
- package/dist/cli/chunks/{chunk-CVYPMGUM.js → chunk-LUG7YNVZ.js} +2 -2
- package/dist/cli/chunks/{chunk-YAJOBZE5.js → chunk-LWAFRYKE.js} +2 -2
- package/dist/cli/chunks/{chunk-ZP5AWQRO.js → chunk-M24ZAZ4U.js} +2 -2
- package/dist/cli/chunks/{chunk-HFZD5KLR.js → chunk-MKRKRXTX.js} +1 -1
- package/dist/cli/chunks/{chunk-4YM45Z5B.js → chunk-MNNLONAD.js} +1 -1
- package/dist/cli/chunks/{chunk-CMN7PU2H.js → chunk-MQM37KAR.js} +2 -2
- package/dist/cli/chunks/{chunk-COTQ44YO.js → chunk-MSX2OHYT.js} +2 -2
- package/dist/cli/chunks/{chunk-4UKTIQDT.js → chunk-MVYQRVLP.js} +2 -2
- package/dist/cli/chunks/{chunk-HRUHHHVR.js → chunk-MZC5WM2P.js} +2 -2
- package/dist/cli/chunks/{chunk-YKRLUTK7.js → chunk-MZRBNBB3.js} +2 -2
- package/dist/cli/chunks/{chunk-XEMCHGAJ.js → chunk-N3KQU4UC.js} +2 -2
- package/dist/cli/chunks/{chunk-DS5IFRY6.js → chunk-NKU3FFM4.js} +2 -2
- package/dist/cli/chunks/chunk-O5EWFR76.js +2 -0
- package/dist/cli/chunks/{chunk-J3QFJI2Y.js → chunk-O5RDHD5T.js} +2 -2
- package/dist/cli/chunks/chunk-O6UWIXME.js +3 -0
- package/dist/cli/chunks/{chunk-Q6F3DYZN.js → chunk-OA4EQDC4.js} +2 -2
- package/dist/cli/chunks/{chunk-NQFDJ6BT.js → chunk-OBCXCRXK.js} +1 -1
- package/dist/cli/chunks/{chunk-S3TBOKAZ.js → chunk-OHU5P25N.js} +4 -4
- package/dist/cli/chunks/{chunk-DNVRTJKB.js → chunk-OOSV2RIA.js} +2 -2
- package/dist/cli/chunks/{chunk-NZJVDOUN.js → chunk-OW23N2Y5.js} +2 -2
- package/dist/cli/chunks/{chunk-ZWUF27P4.js → chunk-OXOO3YDL.js} +2 -2
- package/dist/cli/chunks/{chunk-4L6WX5KC.js → chunk-OYGKSSSI.js} +1 -1
- package/dist/cli/chunks/{chunk-DCDSN67A.js → chunk-PGO46IIW.js} +1 -1
- package/dist/cli/chunks/{chunk-C7QLLMYI.js → chunk-PZOYQHWS.js} +1 -1
- package/dist/cli/chunks/{chunk-BKHEQIRZ.js → chunk-Q2BZSG7Z.js} +2 -2
- package/dist/cli/chunks/{chunk-5FSPELOG.js → chunk-Q7V722K5.js} +2 -2
- package/dist/cli/chunks/{chunk-2EQK7B5L.js → chunk-QZU6M5IO.js} +2 -2
- package/dist/cli/chunks/{chunk-HVT7RMGV.js → chunk-R55Y76SJ.js} +1 -1
- package/dist/cli/chunks/{chunk-POPSZDI2.js → chunk-RMEQYJPU.js} +4 -4
- package/dist/cli/chunks/{chunk-H2LHWZRE.js → chunk-RTYXFXTI.js} +2 -2
- package/dist/cli/chunks/{chunk-QN7HP2UW.js → chunk-SJF3O4FX.js} +236 -236
- package/dist/cli/chunks/{chunk-2YWYW7NU.js → chunk-SOUS7Z2H.js} +2 -2
- package/dist/cli/chunks/{chunk-U5SMBJ6F.js → chunk-SRVNR3R3.js} +2 -2
- package/dist/cli/chunks/{chunk-ZAQMRFBB.js → chunk-SU3SXMVG.js} +2 -2
- package/dist/cli/chunks/chunk-SWGPLXWW.js +32 -0
- package/dist/cli/chunks/{chunk-S3DT5TPR.js → chunk-TRB3EVH3.js} +2 -2
- package/dist/cli/chunks/{chunk-IJZFJPHS.js → chunk-TVBDUMKT.js} +2 -2
- package/dist/cli/chunks/{chunk-7SNSI4VY.js → chunk-TWTXPSFU.js} +1 -1
- package/dist/cli/chunks/{chunk-ORQ2YBRR.js → chunk-ULYUVUL2.js} +2 -2
- package/dist/cli/chunks/{chunk-MVVVGQJ6.js → chunk-UNTBVJ5X.js} +2 -2
- package/dist/cli/chunks/{chunk-5WATBVU6.js → chunk-UQAA4PHU.js} +2 -2
- package/dist/cli/chunks/{chunk-5WYZVSL2.js → chunk-UWSJVKTE.js} +1 -1
- package/dist/cli/chunks/{chunk-JHKKIJT2.js → chunk-V2LJ54KP.js} +2 -2
- package/dist/cli/chunks/{chunk-2UUZCQSD.js → chunk-VCCTTKP3.js} +2 -2
- package/dist/cli/chunks/{chunk-P4OB6WDJ.js → chunk-VEGUYUVS.js} +1 -1
- package/dist/cli/chunks/{chunk-WX4PO65Q.js → chunk-VUQPVWNK.js} +2 -2
- package/dist/cli/chunks/{chunk-IQL6XRF5.js → chunk-VVGUE2T2.js} +2 -2
- package/dist/cli/chunks/{chunk-HZ5O7G2P.js → chunk-W5ASDHJQ.js} +1 -1
- package/dist/cli/chunks/{chunk-U4S74IIZ.js → chunk-WGXT5NWQ.js} +1 -1
- package/dist/cli/chunks/chunk-WJN3V7QB.js +7 -0
- package/dist/cli/chunks/chunk-WPCRQIIF.js +29 -0
- package/dist/cli/chunks/{chunk-AGCS5GSO.js → chunk-WQNLXUWA.js} +6 -6
- package/dist/cli/chunks/{chunk-LRY6UIRI.js → chunk-WZVRMKG2.js} +2 -2
- package/dist/cli/chunks/{chunk-KPIPVSIP.js → chunk-X27IUWTD.js} +2 -2
- package/dist/cli/chunks/{chunk-VDEKVIP5.js → chunk-X4B345B6.js} +2 -2
- package/dist/cli/chunks/{chunk-ERYADKMZ.js → chunk-X5I2Y4VO.js} +2 -2
- package/dist/cli/chunks/{chunk-EUWG2JG4.js → chunk-X7IQIFTS.js} +2 -2
- package/dist/cli/chunks/chunk-XJN3RKUD.js +3 -0
- package/dist/cli/chunks/{chunk-JRIJM4LE.js → chunk-XQMGXTHJ.js} +3 -3
- package/dist/cli/chunks/{chunk-VYPVU3JF.js → chunk-XTSAMB2Q.js} +2 -2
- package/dist/cli/chunks/{chunk-4NKZU2JZ.js → chunk-XZLIF4O2.js} +2 -2
- package/dist/cli/chunks/{chunk-XFTX3KLE.js → chunk-Y4LSEOZ3.js} +1 -1
- package/dist/cli/chunks/{chunk-ZVMSSCTH.js → chunk-Y4YN2RXR.js} +2 -2
- package/dist/cli/chunks/{chunk-X5QD76IU.js → chunk-YDI56L35.js} +2 -2
- package/dist/cli/chunks/{chunk-LRKLATSH.js → chunk-YFILS5D5.js} +2 -2
- package/dist/cli/chunks/{chunk-AVHYJ3XP.js → chunk-YISDX6WB.js} +2 -2
- package/dist/cli/chunks/{chunk-GPPTRKEM.js → chunk-YP2GHQSV.js} +2 -2
- package/dist/cli/chunks/{chunk-OO2M2QUV.js → chunk-YSX756AM.js} +4 -4
- package/dist/cli/chunks/{chunk-E7XIMOKW.js → chunk-YWANOASW.js} +2 -2
- package/dist/cli/chunks/{chunk-UHJVZEQA.js → chunk-YYIJLG7S.js} +2 -2
- package/dist/cli/chunks/{chunk-LCWEQRZI.js → chunk-Z7SD7LXM.js} +2 -2
- package/dist/cli/chunks/{chunk-TM75GAXG.js → chunk-ZDWD73UF.js} +2 -2
- package/dist/cli/chunks/{chunk-IRHXGCQR.js → chunk-ZFT3RLA4.js} +2 -2
- package/dist/cli/chunks/{chunk-ZGV7L4MW.js → chunk-ZNTHX5G3.js} +1 -1
- package/dist/cli/chunks/{chunk-D75GLKEL.js → chunk-ZS27R7VL.js} +2 -2
- package/dist/cli/chunks/{chunk-INI3Q4CN.js → chunk-ZXHHHR7K.js} +1 -1
- package/dist/cli/chunks/{ci-3RTTTS2D.js → ci-N5MOMNXH.js} +2 -2
- package/dist/cli/chunks/{ci-config-XRUR3I4K.js → ci-config-6L2ROQCW.js} +2 -2
- package/dist/cli/chunks/{ci-output-E5IAMU2U.js → ci-output-DSRBYEIK.js} +2 -2
- package/dist/cli/chunks/{circuit-breaker-SHR2P44P.js → circuit-breaker-VRPTNBL7.js} +2 -2
- package/dist/cli/chunks/{claude-flow-setup-ZDDILFMF.js → claude-flow-setup-4YFG3FU5.js} +2 -2
- package/dist/cli/chunks/client-I3L6BKRQ.js +2 -0
- package/dist/cli/chunks/{cline-installer-BGYVUM6G.js → cline-installer-7RGYJWGN.js} +2 -2
- package/dist/cli/chunks/{code-PJ4MC3MC.js → code-ISC6NW2K.js} +3 -3
- package/dist/cli/chunks/{code-index-extractor-IW2P22YG.js → code-index-extractor-2FID75YV.js} +2 -2
- package/dist/cli/chunks/{codex-installer-A7WZ6OGL.js → codex-installer-DZ7OG6KM.js} +2 -2
- package/dist/cli/chunks/{completions-KS23WD5J.js → completions-SM3LICWK.js} +2 -2
- package/dist/cli/chunks/{complexity-analyzer-Q7GLSR2E.js → complexity-analyzer-ZWD2CTAD.js} +2 -2
- package/dist/cli/chunks/{continuedev-installer-SK55BFW2.js → continuedev-installer-AGASOA26.js} +2 -2
- package/dist/cli/chunks/{copilot-installer-3N5J3WTM.js → copilot-installer-CLPZYTQC.js} +2 -2
- package/dist/cli/chunks/core-handlers-5EFOJ37H.js +2 -0
- package/dist/cli/chunks/{cost-tracker-NENVSO4A.js → cost-tracker-7PIGQYDV.js} +2 -2
- package/dist/cli/chunks/{coverage-5L7UQWDH.js → coverage-T2GEBTYS.js} +9 -9
- package/dist/cli/chunks/cross-domain-router-65WJAKVD.js +2 -0
- package/dist/cli/chunks/{cursor-installer-XXBO2ZE6.js → cursor-installer-KXBID4MB.js} +2 -2
- package/dist/cli/chunks/daemon-43MXIVH3.js +18 -0
- package/dist/cli/chunks/{daemon-CDCQU3LR.js → daemon-VAMJLQJ5.js} +3 -3
- package/dist/cli/chunks/{dag-attention-scheduler-HOMMF7FA.js → dag-attention-scheduler-UBP4VHTA.js} +2 -2
- package/dist/cli/chunks/{detect-FXCOUG6X.js → detect-QWFIQRKI.js} +2 -2
- package/dist/cli/chunks/{dist-node-GXQ7FMTY.js → dist-node-I2GICS3W.js} +2 -2
- package/dist/cli/chunks/{domain-handler-TI3JBAPC.js → domain-handler-Z66ISB2A.js} +2 -2
- package/dist/cli/chunks/{domain-plugins-R7LTUM32.js → domain-plugins-KHMD3FKT.js} +2 -2
- package/dist/cli/chunks/{domain-transfer-LBIAFHIQ.js → domain-transfer-JWGNNA6K.js} +2 -2
- package/dist/cli/chunks/dream-VQ2PZCVR.js +2 -0
- package/dist/cli/chunks/embed-and-insert-pattern-F5P5B6JX.js +3 -0
- package/dist/cli/chunks/{embedding-space-HHLWTBF5.js → embedding-space-KHG6TITM.js} +2 -2
- package/dist/cli/chunks/{eval-KDOZMAXJ.js → eval-43OHU7EI.js} +2 -2
- package/dist/cli/chunks/{experience-capture-middleware-X45PECQN.js → experience-capture-middleware-KXD47H6P.js} +3 -3
- package/dist/cli/chunks/{fast-paths-462V6UUB.js → fast-paths-6D75D5KD.js} +2 -2
- package/dist/cli/chunks/{feature-flags-NIRQ4YDM.js → feature-flags-IE35Y55N.js} +2 -2
- package/dist/cli/chunks/{feature-flags-G66OT3AS.js → feature-flags-OYYHY7LS.js} +2 -2
- package/dist/cli/chunks/file-discovery-LGBTY3ID.js +2 -0
- package/dist/cli/chunks/{fleet-PXWGB7CU.js → fleet-AGVJMFGD.js} +16 -16
- package/dist/cli/chunks/{gnn-wrapper-7MUW3M5M.js → gnn-wrapper-5L66A7LW.js} +2 -2
- package/dist/cli/chunks/{heartbeat-handler-5237PB35.js → heartbeat-handler-2BY6YYOT.js} +5 -5
- package/dist/cli/chunks/heartbeat-scheduler-3DU3M5AT.js +2 -0
- package/dist/cli/chunks/hnsw-adapter-N2IMSRPV.js +2 -0
- package/dist/cli/chunks/hnsw-index-DVU7TTJE.js +2 -0
- package/dist/cli/chunks/{hnsw-legacy-bridge-OSQPW7JP.js → hnsw-legacy-bridge-RYMWFNAH.js} +2 -2
- package/dist/cli/chunks/{hnswlib-node-GX6WG2GB.js → hnswlib-node-GG47HP2P.js} +2 -2
- package/dist/cli/chunks/{hooks-GUWHL7VC.js → hooks-FQNACS24.js} +10 -10
- package/dist/cli/chunks/hybrid-backend-AS2PNHOD.js +2 -0
- package/dist/cli/chunks/{hypergraph-engine-SRWLLCU3.js → hypergraph-engine-6BYNJQEP.js} +2 -2
- package/dist/cli/chunks/{hypergraph-handler-AVOPRHHO.js → hypergraph-handler-CYTAXZKJ.js} +3 -3
- package/dist/cli/chunks/impact-analyzer-Y4OONLFP.js +2 -0
- package/dist/cli/chunks/{init-guard-P4N6EVZS.js → init-guard-METTAV5O.js} +2 -2
- package/dist/cli/chunks/{init-handler-LRGWOJMD.js → init-handler-GFT74U5Y.js} +6 -6
- package/dist/cli/chunks/init-wizard-HLNUBJQN.js +2 -0
- package/dist/cli/chunks/kernel-XKFWCL7Y.js +2 -0
- package/dist/cli/chunks/{kilocode-installer-7R2EPOQ6.js → kilocode-installer-GZV2D3FF.js} +2 -2
- package/dist/cli/chunks/{kiro-installer-QNM7DPOB.js → kiro-installer-Q4ZXUFC7.js} +2 -2
- package/dist/cli/chunks/knowledge-graph-CNL77CSZ.js +2 -0
- package/dist/cli/chunks/{learning-7OIZBPXZ.js → learning-WA2QEYL7.js} +35 -34
- package/dist/cli/chunks/{llm-router-SIDXES23.js → llm-router-GRTCHWH7.js} +4 -4
- package/dist/cli/chunks/llm-router-service-UIYTYKP6.js +2 -0
- package/dist/cli/chunks/{load-EI2E2C3S.js → load-WXN3Q7Y5.js} +2 -2
- package/dist/cli/chunks/load-test-PXLW4A5B.js +2 -0
- package/dist/cli/chunks/{mcp-IOE5WOCS.js → mcp-LIQCPSJN.js} +2 -2
- package/dist/cli/chunks/{memory-DLYGJAP7.js → memory-OP6CHRFH.js} +5 -5
- package/dist/cli/chunks/memory-backend-XYOSO73Q.js +2 -0
- package/dist/cli/chunks/memory-handlers-PQFYVNVG.js +2 -0
- package/dist/cli/chunks/{multi-model-executor-WHH4YCHM.js → multi-model-executor-H54DEVRZ.js} +2 -2
- package/dist/cli/chunks/{opencode-installer-63FDZAMS.js → opencode-installer-BSQV6UAT.js} +2 -2
- package/dist/cli/chunks/{orchestrator-3LA776KK.js → orchestrator-TJDPQ4VL.js} +122 -35
- package/dist/cli/chunks/pattern-null-store-BKGTQFNF.js +2 -0
- package/dist/cli/chunks/{pattern-usage-recorder-NW54QUGI.js → pattern-usage-recorder-FOVS4M5L.js} +2 -2
- package/dist/cli/chunks/{pipeline-P3TYX6J6.js → pipeline-4AY2ZIC6.js} +2 -2
- package/dist/cli/chunks/{platform-FNA2WLI6.js → platform-FCSITYMR.js} +2 -2
- package/dist/cli/chunks/{plugin-NJS7BC2S.js → plugin-E56TV5S2.js} +2 -2
- package/dist/cli/chunks/{prime-radiant-advanced-wasm-NIAVL2OT.js → prime-radiant-advanced-wasm-ACOPC533.js} +2 -2
- package/dist/cli/chunks/project-root-MPX7CN2C.js +2 -0
- package/dist/cli/chunks/protocol-executor-CRQOCC4A.js +2 -0
- package/dist/cli/chunks/{protocol-handler-JU5C4JHY.js → protocol-handler-KRVXF4LS.js} +2 -2
- package/dist/cli/chunks/{prove-35VOSLYP.js → prove-KMFPSKGD.js} +2 -2
- package/dist/cli/chunks/qe-reasoning-bank-UEGQ3O7F.js +2 -0
- package/dist/cli/chunks/{quality-ET74X7HN.js → quality-6DBI3HLB.js} +2 -2
- package/dist/cli/chunks/{quality-gate-FEDQISNB.js → quality-gate-3ROZMEIL.js} +3 -3
- package/dist/cli/chunks/queen-coordinator-32574XSG.js +2 -0
- package/dist/cli/chunks/real-embeddings-MIGZNKK3.js +2 -0
- package/dist/cli/chunks/{ref-validation-DTBPYCEB.js → ref-validation-EYIP7DHW.js} +2 -2
- package/dist/cli/chunks/{roocode-installer-LYQEMR4J.js → roocode-installer-IGGZHR2Y.js} +2 -2
- package/dist/cli/chunks/router-CZJY5WX6.js +2 -0
- package/dist/cli/chunks/routing-feedback-RC3UBNFX.js +2 -0
- package/dist/cli/chunks/{routing-handler-DJOJFPII.js → routing-handler-BWNHBYDC.js} +2 -2
- package/dist/cli/chunks/{ruvector-commands-VXYGJDPW.js → ruvector-commands-PXIHF432.js} +2 -2
- package/dist/cli/chunks/rvf-dual-writer-OG7OV2AK.js +2 -0
- package/dist/cli/chunks/rvf-migration-adapter-THYMW7ZO.js +2 -0
- package/dist/cli/chunks/rvf-migration-coordinator-3H6CLFU7.js +2 -0
- package/dist/cli/chunks/rvf-native-adapter-6JQJIKKW.js +2 -0
- package/dist/cli/chunks/{rvf-store-integrity-GA2ZYOEG.js → rvf-store-integrity-CVB3NMSL.js} +2 -2
- package/dist/cli/chunks/safe-db-QFKCVTIJ.js +2 -0
- package/dist/cli/chunks/schedule-6JLVMMYB.js +2 -0
- package/dist/cli/chunks/scheduler-3MPZRMJD.js +2 -0
- package/dist/cli/chunks/{security-MM6YOECX.js → security-DCRGOTWU.js} +3 -3
- package/dist/cli/chunks/{shared-rvf-adapter-6AHPA3V5.js → shared-rvf-adapter-GKD74QUB.js} +2 -2
- package/dist/cli/chunks/{shared-rvf-dual-writer-EYAVY2GZ.js → shared-rvf-dual-writer-HVAAVEOH.js} +2 -2
- package/dist/cli/chunks/sqlite-persistence-LGTIKAEX.js +2 -0
- package/dist/cli/chunks/{standalone-memory-A3PLB4CZ.js → standalone-memory-O7O2U5N4.js} +2 -2
- package/dist/cli/chunks/{status-handler-OSSFAP4Z.js → status-handler-BQTPJJTL.js} +2 -2
- package/dist/cli/chunks/{structural-health-PGY5XUNO.js → structural-health-4H6J4OHK.js} +2 -2
- package/dist/cli/chunks/sync-DJ4TF6QX.js +2 -0
- package/dist/cli/chunks/{sync-CWEHYGNN.js → sync-WW5TAVYW.js} +2 -2
- package/dist/cli/chunks/{task-handler-LHMQ75W4.js → task-handler-HEM4IEOW.js} +2 -2
- package/dist/cli/chunks/{task-handlers-S2TX5FTR.js → task-handlers-JRA3NXIR.js} +3 -3
- package/dist/cli/chunks/{test-4EGZZ6NJ.js → test-772ZXVG2.js} +4 -4
- package/dist/cli/chunks/test-runner-process-XGF2U3NG.js +2 -0
- package/dist/cli/chunks/{test-scheduling-YJQHH3XE.js → test-scheduling-4TRB7LZ7.js} +3 -3
- package/dist/cli/chunks/token-bootstrap-CICBIJ7T.js +2 -0
- package/dist/cli/chunks/{token-usage-WPNOJR6H.js → token-usage-B7PEKE2G.js} +2 -2
- package/dist/cli/chunks/{transformers-4MRPXCPU.js → transformers-V7X7BDZX.js} +2 -2
- package/dist/cli/chunks/tree-sitter-wasm-parser-OXPFKFZS.js +2 -0
- package/dist/cli/chunks/{types-6P5FB4EB.js → types-AHHTUY3I.js} +2 -2
- package/dist/cli/chunks/unified-memory-GUR3IUI6.js +2 -0
- package/dist/cli/chunks/unified-memory-hnsw-NJP2F2RY.js +2 -0
- package/dist/cli/chunks/unified-persistence-NILBWXDP.js +2 -0
- package/dist/cli/chunks/{upgrade-4ICTN63Y.js → upgrade-DZ4DLUQ5.js} +2 -2
- package/dist/cli/chunks/{validate-HQF5GZ7L.js → validate-4DTLIDJE.js} +2 -2
- package/dist/cli/chunks/{validate-swarm-45JYG7VW.js → validate-swarm-A26UFVIS.js} +2 -2
- package/dist/cli/chunks/visual-security-YECYZ27X.js +2 -0
- package/dist/cli/chunks/{web-tree-sitter-UOTWZLNH.js → web-tree-sitter-F2C7QRYT.js} +2 -2
- package/dist/cli/chunks/{windsurf-installer-WDWSBXGN.js → windsurf-installer-OOBTDA6W.js} +2 -2
- package/dist/cli/chunks/{witness-chain-DOYMNPC7.js → witness-chain-KGFZJP32.js} +2 -2
- package/dist/cli/chunks/witness-chain-LYBXFLJB.js +2 -0
- package/dist/cli/chunks/witness-chain-repair-CNTXOGPN.js +2 -0
- package/dist/cli/chunks/{witness-chain-verifier-JB42X62J.js → witness-chain-verifier-OB7ZZOI3.js} +2 -2
- package/dist/cli/chunks/{witness-key-manager-LXXO6L2G.js → witness-key-manager-YCKGKGQI.js} +2 -2
- package/dist/cli/chunks/{workflow-6ARK47NF.js → workflow-PRERHWKY.js} +4 -4
- package/dist/cli/chunks/workflow-orchestrator-UIBGWCU3.js +2 -0
- package/dist/cli/chunks/wrappers-L4UY4V63.js +2 -0
- package/dist/cli/commands/coverage.js +4 -1
- package/dist/cli/commands/learning-prune.js +9 -1
- package/dist/cli/handlers/brain-handler.js +32 -2
- package/dist/cli/handlers/heartbeat-handler.js +3 -1
- package/dist/cli/utils/coverage-data.js +5 -1
- package/dist/cli/utils/coverage-verdict.d.ts +10 -2
- package/dist/cli/utils/coverage-verdict.js +23 -8
- package/dist/cli/utils/fleet-operation.js +9 -3
- package/dist/coordination/handlers/code-intelligence-handlers.js +17 -3
- package/dist/coordination/handlers/coverage-handlers.js +22 -9
- package/dist/coordination/handlers/coverage-target.d.ts +22 -2
- package/dist/coordination/handlers/coverage-target.js +45 -9
- package/dist/coordination/handlers/handler-utils.d.ts +19 -0
- package/dist/coordination/handlers/handler-utils.js +22 -8
- package/dist/coordination/protocols/code-intelligence-index.js +6 -3
- package/dist/coordination/protocols/learning-consolidation-archive.d.ts +6 -3
- package/dist/coordination/protocols/learning-consolidation-archive.js +4 -3
- package/dist/coordination/workflow-builtin.js +1 -0
- package/dist/domains/defect-intelligence/interfaces.d.ts +2 -0
- package/dist/domains/defect-intelligence/prediction-history.d.ts +15 -1
- package/dist/domains/defect-intelligence/prediction-history.js +63 -7
- package/dist/domains/defect-intelligence/services/defect-predictor.d.ts +1 -0
- package/dist/domains/defect-intelligence/services/defect-predictor.js +33 -13
- package/dist/domains/learning-optimization/coordinator.js +17 -10
- package/dist/domains/learning-optimization/domain-ranking.d.ts +26 -0
- package/dist/domains/learning-optimization/domain-ranking.js +28 -0
- package/dist/domains/learning-optimization/interfaces.d.ts +5 -0
- package/dist/domains/learning-optimization/pattern-archive.d.ts +55 -8
- package/dist/domains/learning-optimization/pattern-archive.js +90 -17
- package/dist/domains/learning-optimization/pattern-consolidation.js +18 -2
- package/dist/domains/learning-optimization/pattern-merge.d.ts +26 -0
- package/dist/domains/learning-optimization/pattern-merge.js +127 -0
- package/dist/domains/learning-optimization/services/learning-coordinator.js +21 -35
- package/dist/domains/test-execution/services/test-executor.js +6 -2
- package/dist/init/init-wizard-steps.js +3 -1
- package/dist/init/phases/07-hooks.js +97 -10
- package/dist/integrations/embeddings/cache/EmbeddingCache.js +1 -1
- package/dist/integrations/ruvector/brain-rvf-exporter.d.ts +16 -1
- package/dist/integrations/ruvector/brain-rvf-exporter.js +18 -32
- package/dist/integrations/ruvector/brain-rvf-richness.d.ts +75 -0
- package/dist/integrations/ruvector/brain-rvf-richness.js +127 -0
- package/dist/kernel/unified-memory-migration.js +1 -1
- package/dist/learning/checkpoint-shrink-ack.d.ts +25 -0
- package/dist/learning/checkpoint-shrink-ack.js +57 -0
- package/dist/learning/dream/dream-engine.d.ts +44 -3
- package/dist/learning/dream/dream-engine.js +6 -2
- package/dist/learning/embedder-identity-store.js +3 -1
- package/dist/learning/embedding-space-legacy-adoption.d.ts +53 -0
- package/dist/learning/embedding-space-legacy-adoption.js +115 -0
- package/dist/learning/embedding-space-registry.d.ts +15 -0
- package/dist/learning/embedding-space-registry.js +50 -11
- package/dist/learning/experience-capture.d.ts +3 -1
- package/dist/learning/experience-capture.js +15 -5
- package/dist/learning/experience-space-verification.d.ts +2 -0
- package/dist/learning/experience-space-verification.js +3 -2
- package/dist/learning/learning-retention.js +4 -0
- package/dist/learning/pattern-promotion.d.ts +7 -0
- package/dist/learning/pattern-promotion.js +64 -12
- package/dist/learning/real-embeddings.js +31 -7
- package/dist/learning/rvf-pattern-store.js +6 -1
- package/dist/mcp/bundle.js +570 -558
- package/dist/mcp/handlers/domain-handler-configs.d.ts +3 -0
- package/dist/mcp/handlers/domain-handler-configs.js +1 -0
- package/dist/mcp/handlers/heartbeat-handlers.d.ts +4 -2
- package/dist/mcp/tools/learning-optimization/optimize.d.ts +6 -1
- package/dist/mcp/tools/learning-optimization/optimize.js +20 -11
- package/dist/planning/goap-planner.js +4 -0
- package/dist/planning/plan-executor.js +6 -2
- package/dist/shared/git/git-analyzer.d.ts +30 -11
- package/dist/shared/git/git-analyzer.js +95 -48
- package/dist/shared/io/confined-read.d.ts +32 -7
- package/dist/shared/io/confined-read.js +58 -25
- package/dist/shared/io/file-reader.js +4 -1
- package/dist/shared/safe-db.d.ts +1 -1
- package/dist/shared/safe-db.js +20 -5
- package/dist/shared/sqlite-journal-mode.d.ts +39 -0
- package/dist/shared/sqlite-journal-mode.js +53 -0
- package/dist/sync/claude-flow-bridge.js +1 -1
- package/dist/sync/readers/sqlite-reader.js +3 -4
- package/dist/sync/writers/sqlite-writer.js +1 -1
- package/dist/workers/interfaces.d.ts +2 -2
- package/dist/workers/quality-daemon/git-watcher.d.ts +8 -0
- package/dist/workers/quality-daemon/git-watcher.js +54 -12
- package/dist/workers/quality-daemon/index.js +1 -1
- package/dist/workers/quality-daemon/priority-queue.d.ts +2 -1
- package/dist/workers/workers/defect-predictor.d.ts +9 -4
- package/dist/workers/workers/defect-predictor.js +98 -37
- package/package.json +1 -1
- package/dist/cli/chunks/adapter-OMILP6KH.js +0 -2
- package/dist/cli/chunks/aqe-learning-engine-OXH5CCOS.js +0 -2
- package/dist/cli/chunks/base-MAK2BLTG.js +0 -2
- package/dist/cli/chunks/brain-handler-GCQZFZGQ.js +0 -95
- package/dist/cli/chunks/browser-workflow-IR3VF2TL.js +0 -2
- package/dist/cli/chunks/chunk-4EJLHNER.js +0 -12
- package/dist/cli/chunks/chunk-A4BVDYIL.js +0 -2
- package/dist/cli/chunks/chunk-BE7ZHM34.js +0 -3
- package/dist/cli/chunks/chunk-DHKSPOUQ.js +0 -16
- package/dist/cli/chunks/chunk-FAQ24UHB.js +0 -29
- package/dist/cli/chunks/chunk-IOWEBPXJ.js +0 -5
- package/dist/cli/chunks/chunk-KB34MTFZ.js +0 -3
- package/dist/cli/chunks/chunk-MCXW3DKE.js +0 -8
- package/dist/cli/chunks/chunk-O7VJ3VKD.js +0 -2
- package/dist/cli/chunks/chunk-PIWGKGWP.js +0 -3
- package/dist/cli/chunks/chunk-SFITYZLV.js +0 -7
- package/dist/cli/chunks/chunk-TIVKDIF7.js +0 -2
- package/dist/cli/chunks/client-NO5FOWT4.js +0 -2
- package/dist/cli/chunks/core-handlers-JNAZPXE2.js +0 -2
- package/dist/cli/chunks/cross-domain-router-HEBM767Z.js +0 -2
- package/dist/cli/chunks/daemon-JEBJGEUK.js +0 -18
- package/dist/cli/chunks/dream-GQDCEJMS.js +0 -2
- package/dist/cli/chunks/embed-and-insert-pattern-33KLHDD5.js +0 -3
- package/dist/cli/chunks/file-discovery-33USPLB5.js +0 -2
- package/dist/cli/chunks/heartbeat-scheduler-LIXLC5IH.js +0 -2
- package/dist/cli/chunks/hnsw-adapter-62D5UH27.js +0 -2
- package/dist/cli/chunks/hnsw-index-GSGUMQQC.js +0 -2
- package/dist/cli/chunks/hybrid-backend-FRWP4BOY.js +0 -2
- package/dist/cli/chunks/impact-analyzer-7KF3AQXV.js +0 -2
- package/dist/cli/chunks/init-wizard-XWWAXY25.js +0 -2
- package/dist/cli/chunks/kernel-ZEJPNDBW.js +0 -2
- package/dist/cli/chunks/knowledge-graph-RRZQS7KY.js +0 -2
- package/dist/cli/chunks/llm-router-service-3OSW67LC.js +0 -2
- package/dist/cli/chunks/load-test-7TRIH2WJ.js +0 -2
- package/dist/cli/chunks/memory-backend-G7ZW6Q2B.js +0 -2
- package/dist/cli/chunks/memory-handlers-TPF3KCO5.js +0 -2
- package/dist/cli/chunks/pattern-null-store-OU3ZC3NR.js +0 -2
- package/dist/cli/chunks/project-root-GMOFJEKD.js +0 -2
- package/dist/cli/chunks/protocol-executor-AD345XRO.js +0 -2
- package/dist/cli/chunks/qe-reasoning-bank-NLTP26RC.js +0 -2
- package/dist/cli/chunks/queen-coordinator-2TB4FWS6.js +0 -2
- package/dist/cli/chunks/real-embeddings-II6CXTCI.js +0 -2
- package/dist/cli/chunks/router-PLM3MWME.js +0 -2
- package/dist/cli/chunks/routing-feedback-I7VOX2HU.js +0 -2
- package/dist/cli/chunks/rvf-dual-writer-GQZHFWO2.js +0 -2
- package/dist/cli/chunks/rvf-migration-adapter-3TVKBCAM.js +0 -2
- package/dist/cli/chunks/rvf-migration-coordinator-XUHKLMT6.js +0 -2
- package/dist/cli/chunks/rvf-native-adapter-5GUTYOWS.js +0 -2
- package/dist/cli/chunks/safe-db-RZPQGLGQ.js +0 -2
- package/dist/cli/chunks/schedule-G7JMQDUX.js +0 -2
- package/dist/cli/chunks/scheduler-4SEGPCKD.js +0 -2
- package/dist/cli/chunks/sqlite-persistence-IVE4SQXR.js +0 -2
- package/dist/cli/chunks/sync-PM6D7EQF.js +0 -2
- package/dist/cli/chunks/test-runner-process-72YACW6M.js +0 -2
- package/dist/cli/chunks/token-bootstrap-DJNETMVW.js +0 -2
- package/dist/cli/chunks/tree-sitter-wasm-parser-UVWSDXFR.js +0 -2
- package/dist/cli/chunks/unified-memory-2VMGSGQL.js +0 -2
- package/dist/cli/chunks/unified-memory-hnsw-3KULVD3N.js +0 -2
- package/dist/cli/chunks/unified-persistence-QCSLU2SV.js +0 -2
- package/dist/cli/chunks/visual-security-ZYP2KPH7.js +0 -2
- package/dist/cli/chunks/witness-chain-5QRT7EMX.js +0 -2
- package/dist/cli/chunks/witness-chain-repair-CUF2AFQB.js +0 -2
- package/dist/cli/chunks/workflow-orchestrator-RYDDWIXN.js +0 -2
- package/dist/cli/chunks/wrappers-CYQBOMPL.js +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import{a as S,b,c as f,d as P,e as x,f as L}from"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{a as S,b,c as f,d as P,e as x,f as L}from"./chunk-ZS27R7VL.js";import{a as T}from"./chunk-SOUS7Z2H.js";import{a as w}from"./chunk-6IHZDSDL.js";import"./chunk-7XTUKKRA.js";import"./chunk-5M24X6W7.js";import"./chunk-3RPDKJGV.js";import"./chunk-FVH7TXWU.js";import"./chunk-5AGXIZQ5.js";import"./chunk-RMEQYJPU.js";import"./chunk-Y4LSEOZ3.js";import"./chunk-JKIJVVSP.js";import"./chunk-X5I2Y4VO.js";import"./chunk-LLQ2UMF6.js";import"./chunk-L3IPUIT3.js";import"./chunk-B52ULNYO.js";import"./chunk-LOJ7OO6W.js";import"./chunk-WZVRMKG2.js";import"./chunk-LHY7TMTM.js";import{i as R,n as I}from"./chunk-RTYXFXTI.js";import"./chunk-LTGB7OIU.js";import"./chunk-4BIMTRRX.js";import"./chunk-ZNTHX5G3.js";import"./chunk-OW23N2Y5.js";import"./chunk-YDI56L35.js";import"./chunk-ZFT3RLA4.js";import"./chunk-MZRBNBB3.js";import"./chunk-MSX2OHYT.js";import"./chunk-SRVNR3R3.js";import"./chunk-Z7SD7LXM.js";import"./chunk-QZU6M5IO.js";import"./chunk-LWAFRYKE.js";import"./chunk-SWGPLXWW.js";import"./chunk-YFILS5D5.js";import"./chunk-MQM37KAR.js";import"./chunk-BGXXMX3Y.js";import"./chunk-M24ZAZ4U.js";import"./chunk-JMRDT2XK.js";import"./chunk-4QSQKFED.js";import"./chunk-O5EWFR76.js";import"./chunk-NKU3FFM4.js";import"./chunk-Q7V722K5.js";import"./chunk-KH4T6STG.js";import"./chunk-V2LJ54KP.js";import"./chunk-BKMQQY5T.js";import"./chunk-YP2GHQSV.js";import"./chunk-ZDWD73UF.js";import"./chunk-WGXT5NWQ.js";import"./chunk-BSXKZDKO.js";import"./chunk-WJN3V7QB.js";import"./chunk-L2MBKVSE.js";import"./chunk-AWQAE3SW.js";import"./chunk-244RKAEP.js";import"./chunk-BDVFSMOQ.js";import{Command as _}from"commander";import o from"chalk";import*as p from"fs";import*as m from"path";import*as C from"yaml";I();var h=["accessibility-testing","security-testing","performance-testing","chaos-engineering-resilience","contract-testing"],F=["risk-based-testing","test-design-techniques","regression-testing","test-data-management","localization-testing"],B=["quality-metrics","refactoring-patterns","iterative-loop","stream-chain"];function D(e){typeof e=="number"&&Number.isFinite(e)&&e>0&&(process.env.AQE_MAX_BUDGET_USD=String(e),console.log(o.gray(` Budget cap: $${e.toFixed(2)} for this run`)))}function N(e){switch(e){case 3:return h;case 2:return[...h,...F];case 1:return[...h,...F,...B];default:return h}}var v="";function U(e){let t=Math.round(e.completedTasks/e.totalTasks*100),s=k(e.elapsedMs),n=k(e.estimatedRemainingMs),r=j(t,30),u=`${o.cyan("Progress:")} ${r} ${t}% | ${o.green(e.completedTasks)}/${e.totalTasks} tasks | ${o.yellow(e.failedTasks)} failed | ${o.blue(e.activeWorkers)} workers | ${s} elapsed, ~${n} remaining`;v&&process.stdout.write("\r"+" ".repeat(v.length)+"\r"),process.stdout.write(u),v=u}function j(e,t){let s=Math.round(e/100*t),n=t-s;return o.green("=".repeat(s))+o.gray("-".repeat(n))}function k(e){if(e<1e3)return`${e}ms`;if(e<6e4)return`${(e/1e3).toFixed(1)}s`;let t=Math.floor(e/6e4),s=Math.round(e%6e4/1e3);return`${t}m ${s}s`}function O(e){let t=[];t.push(""),t.push(o.bold(`Eval Results: ${e.skill}`)+o.dim(` (${e.model})`)),t.push("=".repeat(60));let s=e.passed?o.green("PASSED"):o.red("FAILED");t.push(`Status: ${s}`),t.push(""),t.push(o.bold("Metrics:")),t.push(` Total Tests: ${e.totalTests}`),t.push(` Passed: ${o.green(e.passedTests)}`),t.push(` Failed: ${o.red(e.failedTests)}`),t.push(` Skipped: ${o.yellow(e.skippedTests)}`),t.push(` Pass Rate: ${(e.passRate*100).toFixed(1)}%`),t.push(` Reasoning Avg: ${(e.avgReasoningQuality*100).toFixed(1)}%`),t.push(""),t.push(o.bold("Performance:")),t.push(` Duration: ${k(e.totalDurationMs)}`),t.push(` Workers Used: ${e.workersUsed}`),t.push(` Parallel Speedup: ${o.cyan(e.parallelSpeedup.toFixed(2)+"x")}`),t.push("");let n=e.testResults.filter(r=>!r.passed);if(n.length>0){t.push(o.bold.red("Failed Tests:"));for(let r of n.slice(0,5))t.push(` ${o.red("x")} ${r.testId}`),r.error&&t.push(` ${o.dim(r.error)}`);n.length>5&&t.push(` ... and ${n.length-5} more`),t.push("")}return t.join(`
|
|
3
3
|
`)}function Q(e){let t=[];t.push("# Skill Evaluation Report"),t.push(""),t.push(`Generated: ${new Date().toISOString()}`),t.push(""),t.push("## Summary"),t.push(""),t.push("| Skill | Model | Pass Rate | Duration | Speedup | Status |"),t.push("|-------|-------|-----------|----------|---------|--------|");for(let s of e){let n=s.passed?"PASSED":"FAILED";t.push(`| ${s.skill} | ${s.model} | ${(s.passRate*100).toFixed(1)}% | ${k(s.totalDurationMs)} | ${s.parallelSpeedup.toFixed(2)}x | ${n} |`)}t.push(""),t.push("## Detailed Results"),t.push("");for(let s of e){t.push(`### ${s.skill} (${s.model})`),t.push(""),t.push(`- **Total Tests:** ${s.totalTests}`),t.push(`- **Passed:** ${s.passedTests}`),t.push(`- **Failed:** ${s.failedTests}`),t.push(`- **Pass Rate:** ${(s.passRate*100).toFixed(1)}%`),t.push(`- **Avg Reasoning Quality:** ${(s.avgReasoningQuality*100).toFixed(1)}%`),t.push("");let n=s.testResults.filter(r=>!r.passed);if(n.length>0){t.push("**Failed Tests:**"),t.push("");for(let r of n)t.push(`- \`${r.testId}\`: ${r.error||"No error message"}`);t.push("")}}return t.join(`
|
|
4
4
|
`)}var q=".claude/skills";function V(e){let t=m.join(process.cwd(),q,e,"evals",`${e}.yaml`);if(!p.existsSync(t))return null;try{let s=C.parse(p.readFileSync(t,"utf-8"));return x(s)?"command":"llm"}catch{return null}}function z(e,t){return{skill:e.skill,model:t,totalTests:e.totalTests,passedTests:e.passedTests,failedTests:e.failedTests,skippedTests:0,passRate:e.passRate,testResults:e.testResults.map(s=>G(s)),totalDurationMs:e.totalDurationMs,parallelSpeedup:1,avgReasoningQuality:0,passed:e.passed,workersUsed:1,timestamp:e.timestamp}}function G(e){let t=[];return e.setupFailure&&t.push(e.setupFailure),e.failures.length&&t.push(...e.failures),{testId:e.testId,passed:e.passed,expectedPatterns:[],actualPatterns:[],reasoningQuality:0,executionTimeMs:e.durationMs,category:e.category??"uncategorized",priority:e.priority??"medium",error:t.length?t.join("; "):void 0}}async function $(){let e=await T({sqlite:{dbPath:".agentic-qe/eval-runner.db"},hnsw:{M:16,efConstruction:100,efSearch:50}});await e.initialize();let t=w(e);return{runner:f(t),learner:t,reasoningBank:e}}async function W(e){if(console.log(o.bold(`
|
|
5
5
|
AQE Parallel Eval Runner`)),console.log(o.dim(`ADR-056 Phase 5: Worker Pool Pattern
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import{a as T}from"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{a as T}from"./chunk-ZXHHHR7K.js";import{i as b}from"./chunk-4BIMTRRX.js";import{C as O,w as y}from"./chunk-OW23N2Y5.js";import"./chunk-YDI56L35.js";import"./chunk-ZFT3RLA4.js";import"./chunk-MZRBNBB3.js";import"./chunk-MSX2OHYT.js";import"./chunk-SRVNR3R3.js";import"./chunk-Z7SD7LXM.js";import"./chunk-QZU6M5IO.js";import"./chunk-LWAFRYKE.js";import"./chunk-YFILS5D5.js";import"./chunk-MQM37KAR.js";import{l as _}from"./chunk-BGXXMX3Y.js";import"./chunk-M24ZAZ4U.js";import"./chunk-4QSQKFED.js";import"./chunk-O5EWFR76.js";import{d as x,e as R}from"./chunk-NKU3FFM4.js";import"./chunk-Q7V722K5.js";import"./chunk-KH4T6STG.js";import"./chunk-V2LJ54KP.js";import"./chunk-YP2GHQSV.js";import"./chunk-ZDWD73UF.js";import"./chunk-WJN3V7QB.js";import"./chunk-L2MBKVSE.js";import{a as f,e as D}from"./chunk-AWQAE3SW.js";import"./chunk-244RKAEP.js";import"./chunk-BDVFSMOQ.js";O();D();R();var L=x("ExperienceCapture"),U=600*1e3,M=120*1e3,I=1024*1024;function m(e,t=I){if(e==null)return null;try{let n=JSON.stringify(e);return n.length>t?(console.warn(`[ExperienceCaptureMiddleware] JSON payload exceeds size limit (${n.length} > ${t} bytes), truncating`),JSON.stringify({_truncated:!0,_originalSize:n.length,_preview:typeof e=="object"?Object.keys(e).slice(0,10):String(e).slice(0,100)})):n}catch(n){return console.warn("[ExperienceCaptureMiddleware] Failed to serialize JSON:",n),null}}var p=new Map,l=null;function k(){let e=Date.now(),t=0;for(let[n,r]of p){let s=e-r.context.startedAt.getTime();s>U&&(console.warn(`[ExperienceCaptureMiddleware] Cleaning up stale experience: ${n} (age=${Math.round(s/1e3)}s, domain=${r.context.domain})`),p.delete(n),t++)}return t>0&&console.log(`[ExperienceCaptureMiddleware] Cleaned ${t} stale experiences`),t}function F(){l||(l=setInterval(()=>{k()},M),l.unref())}function K(){l&&(clearInterval(l),l=null)}var d=null,E=null;async function N(){return E||(E=h(),E)}async function h(){try{d=y(),await d.initialize();let e=d.getDatabase();if(e){let t=!1;if(e.prepare("SELECT COUNT(*) as cnt FROM sqlite_master WHERE type='table' AND name='captured_experiences'").get().cnt>0){let a=e.prepare("PRAGMA table_info(captured_experiences)").all(),i=new Set(a.map(c=>c.name));!i.has("success")||!i.has("task")?(e.exec("ALTER TABLE captured_experiences RENAME TO captured_experiences_v2_backup"),t=!0):(i.has("domain")||e.exec("ALTER TABLE captured_experiences ADD COLUMN domain TEXT NOT NULL DEFAULT ''"),i.has("source")||e.exec("ALTER TABLE captured_experiences ADD COLUMN source TEXT DEFAULT 'middleware'"))}else t=!0;t&&e.exec(`
|
|
3
3
|
CREATE TABLE IF NOT EXISTS captured_experiences (
|
|
4
4
|
id TEXT PRIMARY KEY,
|
|
5
5
|
task TEXT NOT NULL,
|
|
@@ -27,7 +27,7 @@ import{a as T}from"./chunk-INI3Q4CN.js";import{i as b}from"./chunk-XPTCQKVE.js";
|
|
|
27
27
|
(id, task, agent, domain, success, quality, duration_ms, model_tier,
|
|
28
28
|
routing_json, steps_json, result_json, error, started_at, completed_at, source)
|
|
29
29
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, datetime('now'), ?)
|
|
30
|
-
`);await n.writeWhenUnlocked(()=>s.run(t.id,e.task,e.agent,e.domain,t.success?1:0,t.quality,t.durationMs,e.modelTier||null,m(e.routing),m(t.steps),m(t.result),t.error||null,e.startedAt.toISOString(),"middleware")),j(n,t.id,e.task,e.domain).catch(a=>{L.warn("Embedding computation failed",{error:a instanceof Error?a.message:String(a),experienceId:t.id,domain:e.domain})})}catch(r){console.error("[ExperienceCaptureMiddleware] Failed to persist experience:",r)}}async function j(e,t,n,r){try{let{computeRealEmbedding:s,getActiveEmbeddingSpaceIdentity:a}=await import("./real-embeddings-
|
|
30
|
+
`);await n.writeWhenUnlocked(()=>s.run(t.id,e.task,e.agent,e.domain,t.success?1:0,t.quality,t.durationMs,e.modelTier||null,m(e.routing),m(t.steps),m(t.result),t.error||null,e.startedAt.toISOString(),"middleware")),j(n,t.id,e.task,e.domain).catch(a=>{L.warn("Embedding computation failed",{error:a instanceof Error?a.message:String(a),experienceId:t.id,domain:e.domain})})}catch(r){console.error("[ExperienceCaptureMiddleware] Failed to persist experience:",r)}}async function j(e,t,n,r){try{let{computeRealEmbedding:s,getActiveEmbeddingSpaceIdentity:a}=await import("./real-embeddings-MIGZNKK3.js"),i=`${r}: ${n}`.slice(0,512),c=await s(i);if(!c||c.length===0)return;let o=Buffer.from(new Float32Array(c).buffer),u=e.getDatabase();await e.writeWhenUnlocked(()=>{u.prepare(`
|
|
31
31
|
UPDATE captured_experiences
|
|
32
32
|
SET embedding = ?, embedding_dimension = ?
|
|
33
33
|
WHERE id = ? AND embedding IS NULL
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import"./chunk-BDVFSMOQ.js";function n(e){return e.includes("--version")||e.includes("-v")?"cli-version":e[2]==="health"?"cli-health":process.env.AQE_MCP==="1"||process.env.AQE_MCP_MODE==="1"?"mcp":process.env.AQE_HTTP_PORT?"http":"cli-full"}function o(e){return process.env.AQE_FAST_PATHS==="false"?!1:e.includes("--version")||e.includes("-v")}function r(e){return e[2]==="health"}export{n as detectBootMode,r as isHealthFastPath,o as isVersionFastPath};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q}from"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q}from"./chunk-F4AGNKL2.js";import"./chunk-BDVFSMOQ.js";q();export{a as DEFAULT_FEATURE_FLAGS,n as configureForCI,o as configureForDevelopment,p as configureForHeuristicMode,b as getVibiumFeatureFlags,m as initVibiumFeatureFlagsFromEnv,j as isAutoRetryEnabled,l as isAxeCoreEnabled,e as isBrowserModeEnabled,i as isDefaultHeadless,h as isE2EExecutionEnabled,f as isScreenshotCaptureEnabled,g as isVisualRegressionEnabled,d as resetVibiumFeatureFlags,c as setVibiumFeatureFlags,k as shouldLogPerformanceMetrics};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import{A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,S as R,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,S as R,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-V2LJ54KP.js";import"./chunk-BDVFSMOQ.js";R();export{a as DEFAULT_FEATURE_FLAGS,b as getRuVectorFeatureFlags,A as getRvfMigrationStage,Q as initFeatureFlagsFromEnv,y as isAgentMemoryBranchingEnabled,t as isCNNVisualRegressionEnabled,O as isCognitiveRoutingEnabled,v as isCoherenceActionGateEnabled,r as isCoherenceGateEnabled,H as isColdTierGNNEnabled,o as isCrossDomainTransferEnabled,C as isCusumDriftDetectionEnabled,u as isDAGAttentionEnabled,D as isDeltaEventSourcingEnabled,l as isDeterministicDitherEnabled,M as isEpropOnlineLearningEnabled,E as isEwcPlusPlusEnabled,f as isFlashAttentionEnabled,g as isGNNIndexEnabled,N as isGrangerCausalityEnabled,F as isGraphMAEEnabled,B as isHDCFingerprintingEnabled,p as isHnswHealthMonitorEnabled,G as isHopfieldMemoryEnabled,P as isHyperbolicHnswEnabled,I as isMetaLearningEnabled,k as isMetadataFilteringEnabled,i as isNativeHNSWEnabled,m as isNeuralRoutingEnabled,x as isRVFPatternStoreEnabled,w as isReasoningQECEnabled,q as isRegretTrackingEnabled,L as isReservoirReplayEnabled,e as isSONAEnabled,n as isSONAThreeLoopEnabled,K as isSpectralSparsificationEnabled,J as isSublinearSolverEnabled,j as isTemporalCompressionEnabled,z as isUnifiedHnswEnabled,s as isWitnessChainEnabled,d as resetRuVectorFeatureFlags,c as setRuVectorFeatureFlags,h as shouldLogMigrationMetrics};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{a,b,c}from"./chunk-HGG4HR7C.js";import"./chunk-OBCXCRXK.js";import"./chunk-BDVFSMOQ.js";export{a as SOURCE_EXTENSIONS,c as filterTestFilesForFramework,b as walkSourceFiles};
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import{a as T,b as
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{a as T,b as he,c as _,d as V,e as we,f as G,g as ke,j as be}from"./chunk-MNNLONAD.js";import{a as ve}from"./chunk-B6S4FC7M.js";import{b as q}from"./chunk-HGG4HR7C.js";import{a as fe}from"./chunk-355MI7RV.js";import{d as z,e as C}from"./chunk-VEGUYUVS.js";import{a as O,b as ye}from"./chunk-LA3JPGQA.js";import"./chunk-LSEC2BU7.js";import{e as ge}from"./chunk-Q2BZSG7Z.js";import{a as pe}from"./chunk-A5YTKKNA.js";import"./chunk-4CVNVBX5.js";import{f as le,l as ce,m as de,p as ue,q as W}from"./chunk-54RCGMLB.js";import{a as me}from"./chunk-ULYUVUL2.js";import"./chunk-UWSJVKTE.js";import{L as ae,w as B}from"./chunk-SJF3O4FX.js";import"./chunk-UQAA4PHU.js";import"./chunk-HZQBW5EM.js";import"./chunk-XJN3RKUD.js";import"./chunk-FYINK2B7.js";import"./chunk-OBCXCRXK.js";import"./chunk-477FKXSS.js";import"./chunk-MVYQRVLP.js";import"./chunk-EONDCWY4.js";import"./chunk-4HL3SD4A.js";import"./chunk-KJBYZO57.js";import"./chunk-PGO46IIW.js";import"./chunk-3YMIT73A.js";import"./chunk-ADNGZAT2.js";import"./chunk-JR2UMTKG.js";import"./chunk-6P3Y45QL.js";import"./chunk-L7PSU2YN.js";import"./chunk-DUCVLT3F.js";import"./chunk-LC2QRN7V.js";import"./chunk-WQNLXUWA.js";import{d as re}from"./chunk-53ZBETYR.js";import"./chunk-IPWMSXBF.js";import{d as se}from"./chunk-E4RMJCGA.js";import"./chunk-C5QVJ5XQ.js";import"./chunk-2Q6DTBMT.js";import"./chunk-6D6TGL2E.js";import"./chunk-BOVAKCDC.js";import"./chunk-5M24X6W7.js";import"./chunk-IWVNC7VY.js";import{a as ie}from"./chunk-MZC5WM2P.js";import"./chunk-3RPDKJGV.js";import"./chunk-TRB3EVH3.js";import"./chunk-OXOO3YDL.js";import"./chunk-N3KQU4UC.js";import"./chunk-27TUMXPD.js";import"./chunk-OA4EQDC4.js";import"./chunk-PZOYQHWS.js";import"./chunk-OOSV2RIA.js";import"./chunk-OHU5P25N.js";import"./chunk-A3GDX6UF.js";import"./chunk-HBDSCYSK.js";import{b as oe}from"./chunk-KFCQP434.js";import"./chunk-FWR5QY37.js";import"./chunk-F4AGNKL2.js";import"./chunk-FVH7TXWU.js";import"./chunk-FT24SSDG.js";import"./chunk-YSX756AM.js";import"./chunk-IZODXKZD.js";import"./chunk-AXVD7O3F.js";import"./chunk-HSQ3GUYJ.js";import"./chunk-FQRS7WVA.js";import"./chunk-K6CH4CFF.js";import"./chunk-6TEVM3X3.js";import"./chunk-5AGXIZQ5.js";import"./chunk-RMEQYJPU.js";import"./chunk-UNTBVJ5X.js";import"./chunk-Y4LSEOZ3.js";import"./chunk-F6YD3BOW.js";import"./chunk-JKIJVVSP.js";import"./chunk-X5I2Y4VO.js";import"./chunk-O5RDHD5T.js";import"./chunk-GPIJIZJQ.js";import"./chunk-TWTXPSFU.js";import"./chunk-XZLIF4O2.js";import"./chunk-X7IQIFTS.js";import"./chunk-YYIJLG7S.js";import"./chunk-LUG7YNVZ.js";import"./chunk-J2MT2OJV.js";import"./chunk-LLQ2UMF6.js";import"./chunk-L3IPUIT3.js";import"./chunk-B52ULNYO.js";import"./chunk-LOJ7OO6W.js";import"./chunk-WZVRMKG2.js";import"./chunk-LHY7TMTM.js";import"./chunk-RTYXFXTI.js";import"./chunk-VVGUE2T2.js";import"./chunk-LTGB7OIU.js";import"./chunk-4BIMTRRX.js";import"./chunk-ZNTHX5G3.js";import"./chunk-OW23N2Y5.js";import"./chunk-YDI56L35.js";import"./chunk-ZFT3RLA4.js";import"./chunk-MZRBNBB3.js";import"./chunk-MSX2OHYT.js";import"./chunk-SRVNR3R3.js";import"./chunk-Z7SD7LXM.js";import"./chunk-QZU6M5IO.js";import"./chunk-LWAFRYKE.js";import"./chunk-5RFXX4IF.js";import"./chunk-SWGPLXWW.js";import"./chunk-YFILS5D5.js";import"./chunk-MQM37KAR.js";import"./chunk-BGXXMX3Y.js";import"./chunk-M24ZAZ4U.js";import"./chunk-FVDM3X42.js";import{a as M}from"./chunk-JMRDT2XK.js";import"./chunk-4QSQKFED.js";import"./chunk-O5EWFR76.js";import"./chunk-NKU3FFM4.js";import"./chunk-Q7V722K5.js";import"./chunk-KH4T6STG.js";import"./chunk-V2LJ54KP.js";import"./chunk-BKMQQY5T.js";import"./chunk-YP2GHQSV.js";import"./chunk-ZDWD73UF.js";import"./chunk-WGXT5NWQ.js";import"./chunk-BSXKZDKO.js";import{d as N,e as Le}from"./chunk-WJN3V7QB.js";import"./chunk-L2MBKVSE.js";import{a as ne,e as je}from"./chunk-AWQAE3SW.js";import"./chunk-244RKAEP.js";import"./chunk-BDVFSMOQ.js";import{Command as ot}from"commander";import d from"chalk";je();Le();import y from"chalk";import{existsSync as Me}from"fs";import{join as H}from"path";var K=class{projectRoot;options;orchestrator;constructor(e){this.options=e,this.projectRoot=e.projectRoot}async checkCodeIntelligence(){if(this.options.skipCodeScan)return console.log(y.yellow(" Code intelligence scan skipped (--skip-code-scan flag)")),{codeIntelligence:{hasIndex:!1,entryCount:0,wasPrompted:!1,scanRequested:!1},shouldProceed:!0,skipReason:"skip-flag"};if(await this.hasCodeIntelligenceIndex()){let o=await this.getKGEntryCount();return console.log(y.green(` \u2713 Code intelligence index found (${o} entries)`)),{codeIntelligence:{hasIndex:!0,entryCount:o,wasPrompted:!1,scanRequested:!1},shouldProceed:!0}}return!this.options.nonInteractive&&(console.log(y.yellow(`
|
|
3
3
|
\u26A0 No code intelligence index found`)),console.log(y.gray(" Building a knowledge graph improves agent accuracy by 80%")),console.log(y.gray(" This is a one-time operation and can be run later with:")),console.log(y.cyan(` aqe code-intelligence index
|
|
4
4
|
`)),await this.promptScan())?{codeIntelligence:{hasIndex:!1,entryCount:0,wasPrompted:!0,scanRequested:!0},shouldProceed:!1,skipReason:"scan-requested"}:(console.log(y.gray(" Continuing without code intelligence index")),{codeIntelligence:{hasIndex:!1,entryCount:0,wasPrompted:!this.options.nonInteractive,scanRequested:!1},shouldProceed:!0})}async runCodeIntelligenceScan(){try{if(console.log(y.blue(`
|
|
5
|
-
Building code intelligence knowledge graph...`)),this.orchestrator||(this.orchestrator=new
|
|
5
|
+
Building code intelligence knowledge graph...`)),this.orchestrator||(this.orchestrator=new fe({projectRoot:this.projectRoot,autoMode:!0,...this.options.initOptions})),await this.hasCodeIntelligenceIndex()){let c=await this.getKGEntryCount();return console.log(y.green(` \u2713 Index already exists (${c} entries)`)),{success:!0,entries:c}}let{KnowledgeGraphService:o}=await import("./knowledge-graph-CNL77CSZ.js"),{InMemoryBackend:i}=await import("./memory-backend-XYOSO73Q.js"),a=new i;await a.initialize();let n=new o(a,{namespace:"code-intelligence:kg",enableVectorEmbeddings:!0,projectRoot:this.projectRoot}),{glob:s}=await import("tinyglobby"),l=await s(["**/*.ts","**/*.tsx","**/*.js","**/*.jsx","**/*.py"],{cwd:this.projectRoot,ignore:["node_modules/**","dist/**","coverage/**",".agentic-qe/**"],expandDirectories:!1});console.log(y.gray(` Indexing ${l.length} files...`));let r=await n.index({paths:l.map(c=>H(this.projectRoot,c)),incremental:!1,includeTests:!0});if(n.destroy(),r.success){let c=r.value.nodesCreated+r.value.edgesCreated;return console.log(y.green(` \u2713 Indexed ${c} knowledge graph entries`)),{success:!0,entries:c}}return console.log(y.yellow(" \u26A0 Code intelligence scan completed with warnings")),{success:!1,entries:0}}catch(e){return console.error(y.red(" \u2717 Code intelligence scan failed:"),ne(e)),{success:!1,entries:0}}}async getStatusForAgents(){let e=await this.hasCodeIntelligenceIndex(),o=e?await this.getKGEntryCount():0;return{codeIntelligenceAvailable:e,knowledgeGraphSize:o,recommendedCapabilities:e?["semantic-search","code-analysis","context-aware"]:["basic-analysis"]}}async hasCodeIntelligenceIndex(){let e=H(this.projectRoot,".agentic-qe","memory.db");if(!Me(e))return!1;try{let o=N(e),i=o.prepare(`
|
|
6
6
|
SELECT COUNT(*) as count FROM kv_store
|
|
7
7
|
WHERE namespace = 'code-intelligence:kg'
|
|
8
8
|
`).get();return o.close(),i.count>0}catch{return!1}}async getKGEntryCount(){let e=H(this.projectRoot,".agentic-qe","memory.db");try{let o=N(e),i=o.prepare(`
|
|
9
9
|
SELECT COUNT(*) as count FROM kv_store
|
|
10
10
|
WHERE namespace LIKE 'code-intelligence:kg%'
|
|
11
|
-
`).get();return o.close(),i.count}catch{return 0}}async promptScan(){let o=(await import("readline")).createInterface({input:process.stdin,output:process.stdout});return new Promise(i=>{o.question(y.white(" Run code intelligence scan now? [Y/n]: "),a=>{o.close();let n=a.trim().toLowerCase();i(n===""||n==="y"||n==="yes")})})}};function
|
|
12
|
-
Best for: ${i.recommended}`,isRecommended:o==="hierarchical-mesh"})),defaultValue:this.options.defaultTopology||"hierarchical-mesh",validValues:["hierarchical","mesh","ring","adaptive","hierarchical-mesh"]}),new
|
|
13
|
-
Features: ${i.features.join(", ")}`,isRecommended:o==="hybrid"})),defaultValue:this.options.defaultMemoryBackend||"hybrid",validValues:["sqlite","agentdb","hybrid"]}),new G({id:"lazyLoading",stepNumber:"5/6",title:"Enable lazy loading",description:"Enable lazy loading for agents and domains",additionalInfo:"Reduces startup time by loading components on-demand",defaultValue:this.options.defaultLazyLoading??!0}),new G({id:"loadPatterns",stepNumber:"6/6",title:"Load pre-trained patterns",description:"Load pre-trained intelligence patterns from repository",additionalInfo:e?"Pre-trained patterns detected in project":"No pre-trained patterns found (will start fresh)",defaultValue:this.options.defaultLoadPatterns??e})]}buildResult(e){return{topology:e.topology,maxAgents:e.maxAgents,domains:e.domains,memoryBackend:e.memoryBackend,lazyLoading:e.lazyLoading,loadPatterns:e.loadPatterns,cancelled:!1}}printSummary(e){T.printSummaryHeader(),T.printSummaryField("Topology",e.topology),T.printSummaryField("Max Agents",String(e.maxAgents));let o=e.domains.includes("all")?"all (12 domains)":e.domains.join(", ");T.printSummaryField("Domains",o),T.printSummaryField("Memory Backend",e.memoryBackend),T.printSummaryField("Lazy Loading",_.enabledDisabled(e.lazyLoading)),T.printSummaryField("Load Patterns",_.yesNo(e.loadPatterns));let i=Se[e.topology],a=Fe[e.memoryBackend],n={"Topology style":i.description,"Memory features":a.features.slice(0,2).join(", ")};if(!e.domains.includes("all")){let s=new Set;for(let r of e.domains)if(r!=="all"){let c=U[r];c&&c.agentTypes.forEach(m=>s.add(m))}let l=Array.from(s);n["Agent types"]=l.slice(0,4).join(", ")+(l.length>4?"...":"")}T.printDerivedSettings(n)}getDefaults(){return{topology:this.options.defaultTopology||"hierarchical-mesh",maxAgents:this.options.defaultMaxAgents||15,domains:this.options.defaultDomains||["all"],memoryBackend:this.options.defaultMemoryBackend||"hybrid",lazyLoading:this.options.defaultLazyLoading??!0,loadPatterns:this.options.defaultLoadPatterns??!1,cancelled:!1}}getCancelled(){return{topology:"hierarchical-mesh",maxAgents:15,domains:["all"],memoryBackend:"hybrid",lazyLoading:!0,loadPatterns:!1,cancelled:!0}}};async function Te(t={}){return new Y(t).run()}import v from"chalk";import{existsSync as Ne,statSync as Be}from"node:fs";import{extname as We,resolve as qe}from"node:path";var Re=["test","analyze","scan"],$=80,De=new Set([".ts",".tsx",".js",".jsx",".mjs",".cjs"]),R=t=>({success:!1,error:t});async function Ie(t,e,o){let i=qe(e);if(!Ne(i))return R(`Target does not exist: ${e}`);let{skipped:a}=await oe([e],{projectRoot:o,allowDirectory:!0});if(a[0]?.reason==="outside-project-root")return R(`Target ${e} resolves outside the project. Run aqe from the project the target belongs to.`);switch(t){case"test":{let n=q(i,{includeTests:!1});return n.length===0?R(`No source files under ${e} to generate tests for.`):{success:!0,task:{domain:"test-generation",type:"generate-tests",payload:{sourceFiles:n}}}}case"scan":{let n=q(i,{includeTests:!0}).filter(l=>De.has(We(l).toLowerCase()));if(n.length===0)return R(`No files under ${e} that the SAST scanner covers (${[...De].join(" ")}).`);let s=n.filter(l=>Be(l).size>B);return s.length>0?R(`${s.length} files under ${e} are over the ${B/(1024*1024)} MB SAST limit (${s.slice(0,5).join(", ")}${s.length>5?", \u2026":""}). Narrow --target to the source to scan.`):{success:!0,task:{domain:"security-compliance",type:"sast-scan",payload:{files:n}}}}case"analyze":{let n=await ce(i);if(n.status==="no-report")return R(`No coverage report for project ${n.projectRoot}, so there is no coverage to analyze. Run your tests with coverage first (e.g. \`npm test -- --coverage\`), or pass the report file as --target.`);if(n.status==="target-missing")return R(W("target-missing",e,null));let{evaluation:s,projectRoot:l}=n;if(s.status!=="measured")return R(W(s.reason,e,l));let r={files:s.files,summary:be(s.files)},c=le(s.evidence,l);return{success:!0,task:{domain:"coverage-analysis",type:"analyze-coverage",payload:{coverageData:r,threshold:$},...c.length>0?{insufficientEvidence:c}:{}}}}}}import J from"chalk";var _e={scan:"files",test:"sourceFiles"};function Ve(t,e){let o=Math.max(1,Math.min(e,t.length)),i=Math.floor(t.length/o),a=t.length%o,n=[],s=0;for(let l=0;l<o;l++){let r=i+(l<a?1:0);n.push(t.slice(s,s+r)),s+=r}return n}function ze(t,e,o){let i=_e[t];if(!i){let r=o!==void 0&&o>1?`${t} judges one coverage report as a whole, so it runs as one task; --parallel ${o} does not apply.`:void 0;return{payloads:[e],files:[[]],...r?{note:r}:{}}}let a=Array.isArray(e[i])?e[i]:[],s=Ve(a,o??4),l=o!==void 0&&s.length<o?`--parallel ${o} asks for more workers than there are files (${a.length}); ${s.length} run.`:void 0;return{payloads:s.map(r=>({...e,[i]:r})),files:s,...l?{note:l}:{}}}var P=t=>t!==null&&typeof t=="object"&&!Array.isArray(t)?t:void 0,Ge=["critical","high","medium","low","informational","totalFiles"];function X(t,e){let o=t.map(i=>i?.[e]);return o.every(i=>typeof i=="number")?o.reduce((i,a)=>i+a,0):void 0}function He(t){if(!t.every(r=>P(r.summary)&&Array.isArray(r.vulnerabilities)))return;let e=t.map(r=>P(r.summary)),o={};for(let r of Ge){let c=X(e,r);c!==void 0&&(o[r]=c)}let i=t.map(r=>P(r.coverage)),a=X(i,"filesScanned"),n=X(i,"linesScanned"),s=t.map(r=>P(r.evidence)?.completeness),l=s.every(r=>typeof r=="string")?s.every(r=>r==="complete")?"complete":s.every(r=>r==="none")?"none":"partial":void 0;return{vulnerabilities:t.flatMap(r=>r.vulnerabilities),summary:o,...a!==void 0||n!==void 0?{coverage:{...a!==void 0?{filesScanned:a}:{},...n!==void 0?{linesScanned:n}:{}}}:{},...l?{evidence:{completeness:l}}:{}}}function Ce(t,e){if(e.length===0)return;if(e.length===1)return e[0];let o=e.map(P);if(o.some(a=>!a))return;let i=o;switch(t){case"scan":return He(i);case"test":return i.every(a=>Array.isArray(a.tests))?{tests:i.flatMap(a=>a.tests)}:void 0;case"analyze":return}}var Ke=["critical","high","medium","low","informational"],E=10,x=t=>t!==null&&typeof t=="object"?t:void 0,xe=t=>typeof t=="number"?`${t}%`:"n/a";function Ue(t){let e=x(t.summary),o=Array.isArray(t.vulnerabilities)?t.vulnerabilities:void 0;if(!e||!o)return j("scan");let i=c=>Number(e[c]??0),a=x(t.coverage),n=x(t.evidence),s=typeof n?.completeness=="string"?n.completeness:"unknown",l=[`Findings: ${Ke.map(c=>`${c} ${i(c)}`).join(", ")}`,`Files scanned: ${a?.filesScanned??"n/a"} (evidence: ${s})`,...o.slice(0,E).map(c=>` [${c.severity??"?"}] ${c.title??"untitled"} @ ${c.location?.file??"?"}:${c.location?.line??"?"}`)];o.length>E&&l.push(` \u2026 ${o.length-E} more (--format json lists every finding)`);let r=[];return i("critical")+i("high")>0&&r.push(`${i("critical")} critical and ${i("high")} high findings`),s!=="complete"&&r.push(`scan evidence is ${s}: not every requested file was analyzed`),{lines:l,passed:r.length===0,reasons:r}}function Qe(t){if(!Array.isArray(t.tests))return j("test");let e=t.tests,o=e.reduce((l,r)=>l+(typeof r.assertions=="number"?r.assertions:0),0),i=[...new Set(e.map(l=>l.generationMode).filter(l=>typeof l=="string"))],a=e.filter(l=>x(l.qualityGateResult)?.passed===!1),n=[`Tests generated: ${e.length}, assertions: ${o}`+(i.length>0?`, generation mode: ${i.join(", ")}`:""),`Quality gate: ${a.length===0?"passed":`failed for ${a.length} of ${e.length} tests`}`,...a.slice(0,E).map(l=>` ${l.testFile??l.name??l.id}`)],s=[];return e.length===0&&s.push("no tests were generated"),a.length>0&&s.push(`${a.length} generated tests failed the test quality gate`),{lines:n,passed:s.length===0,reasons:s}}function Ye(t){let e=x(t.summary);if(!e||typeof e.line!="number")return j("analyze");let o=x(t.collected),i=c=>o?.[c]!==!1,a=c=>i(c)?xe(e[c]):"n/a (not collected)",n=c=>typeof e[c]=="number"?e[c]:0,s=de({line:n("line"),branch:n("branch"),function:n("function"),statement:n("statement")},$,{branch:i("branch"),function:i("function"),statement:i("statement")}),l=[`Coverage: line ${xe(e.line)}, branch ${a("branch")}, function ${a("function")}, statement ${a("statement")} over ${e.files??"n/a"} files`,`Overall over collected metrics: ${s.overall.toFixed(1)}% (threshold ${$}%)`],r=s.meetsThreshold?[]:[`coverage is below the ${$}% threshold`];return{lines:l,passed:r.length===0,reasons:r}}function j(t){let e=`the ${t} result has no readable summary`;return{lines:[`Result: ${e}`],passed:!1,reasons:[e]}}function Xe(t,e){let o=x(e);if(!o)return j(t);switch(t){case"scan":return Ue(o);case"test":return Qe(o);case"analyze":return Ye(o)}}function Z(t,e,o=[]){let i=e.filter(r=>r.success).map(r=>r.result),a=i.length>0?Ce(t,i):void 0,n=i.length>0?Xe(t,a):void 0,s=e.length-i.length,l=[...n?.reasons??[]];return o.length>0&&l.push("insufficient evidence: the coverage report is incomplete or stale for the target"),s>0&&l.unshift(`${s} of ${e.length} workers did not complete`),{combined:a,...n?{summary:n}:{},passed:l.length===0,reasons:l}}function $e(t,e,o=a=>console.log(a),i=[]){let a=Z(t,e,i);if(a.summary){o("");for(let n of a.summary.lines)o(` ${n}`)}for(let n of i)o(J.yellow(` Evidence: ${n}`));return o(""),o(a.passed?J.green(" Verdict: PASSED"):J.red(` Verdict: FAILED (${a.reasons.join("; ")})`)),a.passed}var Pe=6e4,Je=250,Ze={start:()=>{},addAgent:()=>{},updateAgent:()=>{},completeAgent:()=>{},stop:()=>{}};async function et({queen:t,type:e,domain:o,payload:i}){let a=await t.submitTask({type:e,priority:"p1",targetDomains:[o],payload:i,timeout:Pe});if(!a.success)throw a.error;let n=Date.now()+Pe;for(;Date.now()<n;){let s=t.getTaskStatus(a.value);if(!s)throw new Error(`Task status unavailable: ${a.value}`);if(s.status==="completed")return s.result;if(s.status==="failed"||s.status==="cancelled")throw new Error(s.error||`Task ${s.status}`);await new Promise(l=>setTimeout(l,Je))}throw new Error(`Task timed out: ${a.value}`)}function tt(t){if(t===void 0)return;let e=Number(t);if(!Number.isSafeInteger(e)||e<1)throw new Error("--parallel must be a positive integer");return e}function Ae(t,e,o,i){t.command("run").description("Run a coordinated fleet operation").argument("<operation>","Operation type (test|analyze|scan)").option("-t, --target <path>","Target path",".").option("--parallel <count>","Workers to split the target's files across (default 4; analyze runs as one task)").option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async(a,n)=>{let s=n.format==="json",l=async r=>(s?z(C({operation:a,target:n.target,status:"refused",error:r}),n.output):console.error(v.red(`
|
|
14
|
-
Operation '${a}' cannot run: ${r}`)),o(1));if(!await i())return o(1);try{if(n.format!=="text"&&!s)throw new Error(`Unsupported format: ${n.format} (text|json)`);let r=
|
|
11
|
+
`).get();return o.close(),i.count}catch{return 0}}async promptScan(){let o=(await import("readline")).createInterface({input:process.stdin,output:process.stdout});return new Promise(i=>{o.question(y.white(" Run code intelligence scan now? [Y/n]: "),a=>{o.close();let n=a.trim().toLowerCase();i(n===""||n==="y"||n==="yes")})})}};function Ne(t){return new K(t)}async function Se(t,e={}){return await Ne({projectRoot:t,...e}).checkCodeIntelligence()}var U={"test-generation":{description:"AI-powered test creation and generation",agentTypes:["test-generator","mutation-tester"]},"test-execution":{description:"Parallel execution, retry, flaky detection",agentTypes:["test-executor","flaky-detector"]},"coverage-analysis":{description:"Sublinear O(log n) gap detection",agentTypes:["coverage-analyzer","gap-detector"]},"quality-assessment":{description:"Quality gates and deployment decisions",agentTypes:["quality-gate","deployment-validator"]},"defect-intelligence":{description:"Prediction and root cause analysis",agentTypes:["defect-predictor","rca-analyst"]},"requirements-validation":{description:"BDD scenarios and testability scoring",agentTypes:["requirements-validator","bdd-generator"]},"code-intelligence":{description:"Knowledge graph and semantic search",agentTypes:["code-indexer","semantic-searcher"]},"security-compliance":{description:"SAST/DAST and compliance scanning",agentTypes:["security-scanner","compliance-auditor"]},"contract-testing":{description:"API contracts and GraphQL validation",agentTypes:["contract-validator","api-tester"]},"visual-accessibility":{description:"Visual regression and a11y testing",agentTypes:["visual-tester","a11y-scanner"]},"chaos-resilience":{description:"Chaos engineering and load testing",agentTypes:["chaos-engineer","load-tester"]},"learning-optimization":{description:"Cross-domain learning and optimization",agentTypes:["learning-optimizer","pattern-recognizer"]}},Fe={hierarchical:{description:"Queen-led hierarchy with direct worker control",recommended:"Large teams, clear task delegation"},mesh:{description:"Fully connected peer network for collaboration",recommended:"Small teams, equal peer collaboration"},ring:{description:"Sequential message passing in a ring",recommended:"Pipeline workflows, sequential processing"},adaptive:{description:"Dynamic topology based on workload",recommended:"Variable workloads, auto-scaling needs"},"hierarchical-mesh":{description:"Hybrid combining hierarchy with peer connections",recommended:"Most projects (best of both worlds)"}},Te={sqlite:{description:"SQLite-based persistent storage",features:["Cross-platform","No setup required","Good for development"]},agentdb:{description:"AgentDB with HNSW vector indexing",features:["150x-12,500x faster search","Vector embeddings","Semantic queries"]},hybrid:{description:"Combined SQLite + AgentDB",features:["Best of both","Fallback support","Production recommended"]}},Q=class extends we{constructor(e){let o=Object.keys(U);super({id:"domains",stepNumber:"3/6",title:"Domain Focus",description:'Select which DDD domains to enable (comma-separated numbers or "all")',instructions:"Each domain brings specialized agents and capabilities",options:[{key:"0",value:"all",label:"all",description:"Enable all 12 domains"},...o.map((i,a)=>({key:String(a+1),value:i,label:i,description:U[i].description,isDefaultSelected:e.includes(i)||e.includes("all")}))],defaultValue:e,validValues:["all",...o],allowEmpty:!1})}async execute(e){let o=await super.execute(e);return o.value.includes("all")?{value:["all"],continue:!0}:o}},Y=class extends be{constructor(e={}){super(e)}getTitle(){return"Fleet Initialization Wizard"}getSubtitle(){return"Configure your AQE v3 multi-agent fleet"}getConfirmationPrompt(){return"Initialize fleet with these settings?"}isNonInteractive(){return this.options.nonInteractive??!1}getCommands(){let e=he.checkPatternsExist(this.cwd);return[new V({id:"topology",stepNumber:"1/6",title:"Topology Type",description:"Select the coordination topology for your agent fleet",options:Object.entries(Fe).map(([o,i],a)=>({key:String(a+1),value:o,label:o,description:`${i.description}
|
|
12
|
+
Best for: ${i.recommended}`,isRecommended:o==="hierarchical-mesh"})),defaultValue:this.options.defaultTopology||"hierarchical-mesh",validValues:["hierarchical","mesh","ring","adaptive","hierarchical-mesh"]}),new ke({id:"maxAgents",stepNumber:"2/6",title:"Max agents",description:"Set the maximum number of agents in your fleet (5-50). More agents = more parallelism, but higher resource usage.",presets:[{key:"1",value:5,label:"5 agents - Minimal (development/testing)"},{key:"2",value:10,label:"10 agents - Small team"},{key:"3",value:15,label:"15 agents - Standard (recommended)"},{key:"4",value:25,label:"25 agents - Large team"},{key:"5",value:50,label:"50 agents - Maximum capacity"}],defaultValue:this.options.defaultMaxAgents||15,min:5,max:50}),new Q(this.options.defaultDomains||["all"]),new V({id:"memoryBackend",stepNumber:"4/6",title:"Memory Backend",description:"Select the memory storage backend for agent coordination",options:Object.entries(Te).map(([o,i],a)=>({key:String(a+1),value:o,label:o,description:`${i.description}
|
|
13
|
+
Features: ${i.features.join(", ")}`,isRecommended:o==="hybrid"})),defaultValue:this.options.defaultMemoryBackend||"hybrid",validValues:["sqlite","agentdb","hybrid"]}),new G({id:"lazyLoading",stepNumber:"5/6",title:"Enable lazy loading",description:"Enable lazy loading for agents and domains",additionalInfo:"Reduces startup time by loading components on-demand",defaultValue:this.options.defaultLazyLoading??!0}),new G({id:"loadPatterns",stepNumber:"6/6",title:"Load pre-trained patterns",description:"Load pre-trained intelligence patterns from repository",additionalInfo:e?"Pre-trained patterns detected in project":"No pre-trained patterns found (will start fresh)",defaultValue:this.options.defaultLoadPatterns??e})]}buildResult(e){return{topology:e.topology,maxAgents:e.maxAgents,domains:e.domains,memoryBackend:e.memoryBackend,lazyLoading:e.lazyLoading,loadPatterns:e.loadPatterns,cancelled:!1}}printSummary(e){T.printSummaryHeader(),T.printSummaryField("Topology",e.topology),T.printSummaryField("Max Agents",String(e.maxAgents));let o=e.domains.includes("all")?"all (12 domains)":e.domains.join(", ");T.printSummaryField("Domains",o),T.printSummaryField("Memory Backend",e.memoryBackend),T.printSummaryField("Lazy Loading",_.enabledDisabled(e.lazyLoading)),T.printSummaryField("Load Patterns",_.yesNo(e.loadPatterns));let i=Fe[e.topology],a=Te[e.memoryBackend],n={"Topology style":i.description,"Memory features":a.features.slice(0,2).join(", ")};if(!e.domains.includes("all")){let s=new Set;for(let r of e.domains)if(r!=="all"){let c=U[r];c&&c.agentTypes.forEach(m=>s.add(m))}let l=Array.from(s);n["Agent types"]=l.slice(0,4).join(", ")+(l.length>4?"...":"")}T.printDerivedSettings(n)}getDefaults(){return{topology:this.options.defaultTopology||"hierarchical-mesh",maxAgents:this.options.defaultMaxAgents||15,domains:this.options.defaultDomains||["all"],memoryBackend:this.options.defaultMemoryBackend||"hybrid",lazyLoading:this.options.defaultLazyLoading??!0,loadPatterns:this.options.defaultLoadPatterns??!1,cancelled:!1}}getCancelled(){return{topology:"hierarchical-mesh",maxAgents:15,domains:["all"],memoryBackend:"hybrid",lazyLoading:!0,loadPatterns:!1,cancelled:!0}}};async function De(t={}){return new Y(t).run()}import v from"chalk";import{existsSync as Be,statSync as We}from"node:fs";import{extname as qe,resolve as _e}from"node:path";var Ie=["test","analyze","scan"],x=80,Re=new Set([".ts",".tsx",".js",".jsx",".mjs",".cjs"]),D=t=>({success:!1,error:t});async function ze(t,e,o){let i=_e(e);if(!Be(i))return D(`Target does not exist: ${e}`);let{skipped:a}=await oe([e],{projectRoot:o,allowDirectory:!0});if(a[0]?.reason==="outside-project-root")return D(`Target ${e} resolves outside the project. Run aqe from the project the target belongs to.`);switch(t){case"test":{let n=q(i,{includeTests:!1});return n.length===0?D(`No source files under ${e} to generate tests for.`):{success:!0,task:{domain:"test-generation",type:"generate-tests",payload:{sourceFiles:n}}}}case"scan":{let n=q(i,{includeTests:!0}).filter(l=>Re.has(qe(l).toLowerCase()));if(n.length===0)return D(`No files under ${e} that the SAST scanner covers (${[...Re].join(" ")}).`);let s=n.filter(l=>We(l).size>B);return s.length>0?D(`${s.length} files under ${e} are over the ${B/(1024*1024)} MB SAST limit (${s.slice(0,5).join(", ")}${s.length>5?", \u2026":""}). Narrow --target to the source to scan.`):{success:!0,task:{domain:"security-compliance",type:"sast-scan",payload:{files:n}}}}case"analyze":{let n=await ce(i);if(n.status==="no-report")return n.refused.length>0?D(`${ue(n.refused)} There is no coverage to analyze for project ${n.projectRoot}.`):D(`No coverage report for project ${n.projectRoot}, so there is no coverage to analyze. Run your tests with coverage first (e.g. \`npm test -- --coverage\`), or pass the report file as --target.`);if(n.status==="target-missing")return D(W("target-missing",e,null));let{evaluation:s,projectRoot:l}=n;if(s.status!=="measured")return D(W(s.reason,e,l,s.refused));let r={files:s.files,summary:ve(s.files)},c=le(s.evidence,l);return{success:!0,task:{domain:"coverage-analysis",type:"analyze-coverage",payload:{coverageData:r,threshold:x},...c.length>0?{insufficientEvidence:c}:{}}}}}}import J from"chalk";var Ve={scan:"files",test:"sourceFiles"};function Ge(t,e){let o=Math.max(1,Math.min(e,t.length)),i=Math.floor(t.length/o),a=t.length%o,n=[],s=0;for(let l=0;l<o;l++){let r=i+(l<a?1:0);n.push(t.slice(s,s+r)),s+=r}return n}function Ce(t,e,o){let i=Ve[t];if(!i){let r=o!==void 0&&o>1?`${t} judges one coverage report as a whole, so it runs as one task; --parallel ${o} does not apply.`:void 0;return{payloads:[e],files:[[]],...r?{note:r}:{}}}let a=Array.isArray(e[i])?e[i]:[],s=Ge(a,o??4),l=o!==void 0&&s.length<o?`--parallel ${o} asks for more workers than there are files (${a.length}); ${s.length} run.`:void 0;return{payloads:s.map(r=>({...e,[i]:r})),files:s,...l?{note:l}:{}}}var P=t=>t!==null&&typeof t=="object"&&!Array.isArray(t)?t:void 0,He=["critical","high","medium","low","informational","totalFiles"];function X(t,e){let o=t.map(i=>i?.[e]);return o.every(i=>typeof i=="number")?o.reduce((i,a)=>i+a,0):void 0}function Ke(t){if(!t.every(r=>P(r.summary)&&Array.isArray(r.vulnerabilities)))return;let e=t.map(r=>P(r.summary)),o={};for(let r of He){let c=X(e,r);c!==void 0&&(o[r]=c)}let i=t.map(r=>P(r.coverage)),a=X(i,"filesScanned"),n=X(i,"linesScanned"),s=t.map(r=>P(r.evidence)?.completeness),l=s.every(r=>typeof r=="string")?s.every(r=>r==="complete")?"complete":s.every(r=>r==="none")?"none":"partial":void 0;return{vulnerabilities:t.flatMap(r=>r.vulnerabilities),summary:o,...a!==void 0||n!==void 0?{coverage:{...a!==void 0?{filesScanned:a}:{},...n!==void 0?{linesScanned:n}:{}}}:{},...l?{evidence:{completeness:l}}:{}}}function $e(t,e){if(e.length===0)return;if(e.length===1)return e[0];let o=e.map(P);if(o.some(a=>!a))return;let i=o;switch(t){case"scan":return Ke(i);case"test":return i.every(a=>Array.isArray(a.tests))?{tests:i.flatMap(a=>a.tests)}:void 0;case"analyze":return}}var Ue=["critical","high","medium","low","informational"],E=10,$=t=>t!==null&&typeof t=="object"?t:void 0,xe=t=>typeof t=="number"?`${t}%`:"n/a";function Qe(t){let e=$(t.summary),o=Array.isArray(t.vulnerabilities)?t.vulnerabilities:void 0;if(!e||!o)return j("scan");let i=c=>Number(e[c]??0),a=$(t.coverage),n=$(t.evidence),s=typeof n?.completeness=="string"?n.completeness:"unknown",l=[`Findings: ${Ue.map(c=>`${c} ${i(c)}`).join(", ")}`,`Files scanned: ${a?.filesScanned??"n/a"} (evidence: ${s})`,...o.slice(0,E).map(c=>` [${c.severity??"?"}] ${c.title??"untitled"} @ ${c.location?.file??"?"}:${c.location?.line??"?"}`)];o.length>E&&l.push(` \u2026 ${o.length-E} more (--format json lists every finding)`);let r=[];return i("critical")+i("high")>0&&r.push(`${i("critical")} critical and ${i("high")} high findings`),s!=="complete"&&r.push(`scan evidence is ${s}: not every requested file was analyzed`),{lines:l,passed:r.length===0,reasons:r}}function Ye(t){if(!Array.isArray(t.tests))return j("test");let e=t.tests,o=e.reduce((l,r)=>l+(typeof r.assertions=="number"?r.assertions:0),0),i=[...new Set(e.map(l=>l.generationMode).filter(l=>typeof l=="string"))],a=e.filter(l=>$(l.qualityGateResult)?.passed===!1),n=[`Tests generated: ${e.length}, assertions: ${o}`+(i.length>0?`, generation mode: ${i.join(", ")}`:""),`Quality gate: ${a.length===0?"passed":`failed for ${a.length} of ${e.length} tests`}`,...a.slice(0,E).map(l=>` ${l.testFile??l.name??l.id}`)],s=[];return e.length===0&&s.push("no tests were generated"),a.length>0&&s.push(`${a.length} generated tests failed the test quality gate`),{lines:n,passed:s.length===0,reasons:s}}function Xe(t){let e=$(t.summary);if(!e||typeof e.line!="number")return j("analyze");let o=$(t.collected),i=c=>o?.[c]!==!1,a=c=>i(c)?xe(e[c]):"n/a (not collected)",n=c=>typeof e[c]=="number"?e[c]:0,s=de({line:n("line"),branch:n("branch"),function:n("function"),statement:n("statement")},x,{branch:i("branch"),function:i("function"),statement:i("statement")}),l=[`Coverage: line ${xe(e.line)}, branch ${a("branch")}, function ${a("function")}, statement ${a("statement")} over ${e.files??"n/a"} files`,`Overall over collected metrics: ${s.overall.toFixed(1)}% (threshold ${x}%)`],r=s.meetsThreshold?[]:[`coverage is below the ${x}% threshold`];return{lines:l,passed:r.length===0,reasons:r}}function j(t){let e=`the ${t} result has no readable summary`;return{lines:[`Result: ${e}`],passed:!1,reasons:[e]}}function Je(t,e){let o=$(e);if(!o)return j(t);switch(t){case"scan":return Qe(o);case"test":return Ye(o);case"analyze":return Xe(o)}}function Z(t,e,o=[]){let i=e.filter(r=>r.success).map(r=>r.result),a=i.length>0?$e(t,i):void 0,n=i.length>0?Je(t,a):void 0,s=e.length-i.length,l=[...n?.reasons??[]];return o.length>0&&l.push("insufficient evidence: the coverage report is incomplete or stale for the target"),s>0&&l.unshift(`${s} of ${e.length} workers did not complete`),{combined:a,...n?{summary:n}:{},passed:l.length===0,reasons:l}}function Pe(t,e,o=a=>console.log(a),i=[]){let a=Z(t,e,i);if(a.summary){o("");for(let n of a.summary.lines)o(` ${n}`)}for(let n of i)o(J.yellow(` Evidence: ${n}`));return o(""),o(a.passed?J.green(" Verdict: PASSED"):J.red(` Verdict: FAILED (${a.reasons.join("; ")})`)),a.passed}var Ae=6e4,Ze=250,et={start:()=>{},addAgent:()=>{},updateAgent:()=>{},completeAgent:()=>{},stop:()=>{}};async function tt({queen:t,type:e,domain:o,payload:i}){let a=await t.submitTask({type:e,priority:"p1",targetDomains:[o],payload:i,timeout:Ae});if(!a.success)throw a.error;let n=Date.now()+Ae;for(;Date.now()<n;){let s=t.getTaskStatus(a.value);if(!s)throw new Error(`Task status unavailable: ${a.value}`);if(s.status==="completed")return s.result;if(s.status==="failed"||s.status==="cancelled")throw new Error(s.error||`Task ${s.status}`);await new Promise(l=>setTimeout(l,Ze))}throw new Error(`Task timed out: ${a.value}`)}function nt(t){if(t===void 0)return;let e=Number(t);if(!Number.isSafeInteger(e)||e<1)throw new Error("--parallel must be a positive integer");return e}function Oe(t,e,o,i){t.command("run").description("Run a coordinated fleet operation").argument("<operation>","Operation type (test|analyze|scan)").option("-t, --target <path>","Target path",".").option("--parallel <count>","Workers to split the target's files across (default 4; analyze runs as one task)").option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async(a,n)=>{let s=n.format==="json",l=async r=>(s?z(C({operation:a,target:n.target,status:"refused",error:r}),n.output):console.error(v.red(`
|
|
14
|
+
Operation '${a}' cannot run: ${r}`)),o(1));if(!await i())return o(1);try{if(n.format!=="text"&&!s)throw new Error(`Unsupported format: ${n.format} (text|json)`);let r=nt(n.parallel);if(!Ie.includes(a))throw new Error(`Unsupported operation: ${a}`);let c=a,m=await ze(c,n.target);if(!m.success)return l(m.error);let{domain:w,payload:h}=m.task,k=m.task.type,f=e.queen.validateTaskExecutable(k,[w]);if(!f.success)return l(f.error.message);let u=Ce(c,h,r),S=u.payloads.map((g,F)=>({id:`${a}-agent-${F+1}`,name:`${a}-worker-${F+1}`,files:u.files[F],payload:{...g,target:n.target,workerId:`${a}-agent-${F+1}`}}));s||(console.log(v.blue(`
|
|
15
15
|
Fleet Operation: ${a}
|
|
16
|
-
`)),u.note&&console.log(v.yellow(` Note: ${u.note}`)));let p=s?
|
|
17
|
-
Operation Summary:`)),console.log(v.gray(` Operation: ${a}`)),console.log(v.gray(` Target: ${n.target}`));let ee=u.files.map(g=>g.length);ee.some(g=>g>0)&&console.log(v.gray(` Workers: ${b.length}, files per worker: ${ee.join(", ")}`)),console.log(v.gray(` Completed: ${b.length-L}`)),L>0&&console.log(v.red(` Failed: ${L}`));let
|
|
18
|
-
Fleet operation failed:`),r),await o(1)}})}function
|
|
16
|
+
`)),u.note&&console.log(v.yellow(` Note: ${u.note}`)));let p=s?et:new O({title:`${a.charAt(0).toUpperCase()+a.slice(1)} Progress`,showEta:!0});p.start(S.length);for(let g of S)p.addAgent({id:g.id,name:g.name,status:"pending",progress:0});let b=await Promise.all(S.map(async g=>{p.updateAgent(g.id,0,{status:"running"});let F={id:g.id,name:g.name,files:g.files};try{let I=await tt({queen:e.queen,type:k,domain:w,payload:g.payload});return p.completeAgent(g.id,!0),{...F,success:!0,result:I}}catch(I){let A=I instanceof Error?I.message:String(I);return s||console.error(v.red(` ${g.name}: ${A}`)),p.completeAgent(g.id,!1),{...F,success:!1,result:void 0,error:A}}})),R=Z(c,b,m.task.insufficientEvidence);if(p.stop({verdictFailed:!R.passed}),s)return z(C({operation:a,target:n.target,status:R.passed?"passed":"failed",verdict:{passed:R.passed,reasons:R.reasons},...R.summary?{summary:R.summary.lines}:{},...m.task.insufficientEvidence?{insufficientEvidence:m.task.insufficientEvidence}:{},...u.note?{note:u.note}:{},combined:R.combined,workers:b.map(({id:g,files:F,success:I,result:A,error:te})=>({id:g,files:F,status:I?"completed":"failed",...te?{error:te}:{result:A}}))}),n.output),o(R.passed?0:1);let L=b.filter(g=>!g.success).length;console.log(v.blue(`
|
|
17
|
+
Operation Summary:`)),console.log(v.gray(` Operation: ${a}`)),console.log(v.gray(` Target: ${n.target}`));let ee=u.files.map(g=>g.length);ee.some(g=>g>0)&&console.log(v.gray(` Workers: ${b.length}, files per worker: ${ee.join(", ")}`)),console.log(v.gray(` Completed: ${b.length-L}`)),L>0&&console.log(v.red(` Failed: ${L}`));let Ee=Pe(c,b,void 0,m.task.insufficientEvidence);console.log(""),await o(Ee?0:1)}catch(r){s?z(C({operation:a,target:n.target,status:"error",error:r instanceof Error?r.message:String(r)}),n.output):console.error(v.red(`
|
|
18
|
+
Fleet operation failed:`),r),await o(1)}})}function en(t,e,o,i){let a=new ot("fleet").description("Fleet operations with multi-agent progress tracking");return a.command("init").description("Initialize fleet with interactive wizard").option("--wizard","Run interactive fleet initialization wizard").option("-t, --topology <type>","Fleet topology (hierarchical|mesh|ring|adaptive|hierarchical-mesh)","hierarchical-mesh").option("-m, --max-agents <count>","Maximum agent count (5-50)","15").option("-d, --domains <domains>",'Domains to enable (comma-separated or "all")',"all").option("--memory <backend>","Memory backend (sqlite|agentdb|hybrid)","hybrid").option("--lazy","Enable lazy loading",!0).option("--skip-patterns","Skip loading pre-trained patterns").option("--skip-code-scan","Skip code intelligence index check").option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async n=>{try{let s=n.topology,l=parseInt(n.maxAgents,10),r=n.domains,c=n.memory,m=n.lazy,w=!n.skipPatterns;if(console.log(d.blue(`
|
|
19
19
|
Code Intelligence Check
|
|
20
|
-
`)),!(await
|
|
20
|
+
`)),!(await Se(process.cwd(),{skipCodeScan:n.skipCodeScan,nonInteractive:!n.wizard})).shouldProceed){console.log(d.blue(`
|
|
21
21
|
Please run the code intelligence scan first:`)),console.log(d.cyan(` aqe code-intelligence index
|
|
22
22
|
`)),console.log(d.gray(` Then re-run fleet init when ready.
|
|
23
23
|
`)),await e(0);return}if(n.wizard){console.log(d.blue(`
|
|
24
24
|
Fleet Initialization Wizard
|
|
25
|
-
`));let u=await
|
|
25
|
+
`));let u=await De({defaultTopology:n.topology!=="hierarchical-mesh"?n.topology:void 0,defaultMaxAgents:n.maxAgents!=="15"?parseInt(n.maxAgents,10):void 0,defaultDomains:n.domains!=="all"?n.domains.split(","):void 0,defaultMemoryBackend:n.memory!=="hybrid"?n.memory:void 0});u.cancelled&&(console.log(d.yellow(`
|
|
26
26
|
Fleet initialization cancelled.
|
|
27
27
|
`)),await e(0)),s=u.topology,l=u.maxAgents,r=u.domains.join(","),c=u.memoryBackend,m=u.lazyLoading,w=u.loadPatterns,console.log(d.green(`
|
|
28
28
|
Starting fleet initialization...
|
|
29
29
|
`))}let k=r==="all"?[...M]:r.split(",").filter(u=>M.includes(u));if(console.log(d.blue(`
|
|
30
30
|
Fleet Configuration
|
|
31
31
|
`)),console.log(d.gray(` Topology: ${s}`)),console.log(d.gray(` Max Agents: ${l}`)),console.log(d.gray(` Domains: ${k.length}`)),console.log(d.gray(` Memory: ${c}`)),console.log(d.gray(` Lazy Loading: ${m?"enabled":"disabled"}`)),console.log(d.gray(` Pre-trained Patterns: ${w?"load":"skip"}
|
|
32
|
-
`)),!t.initialized){t.kernel=new ae({maxConcurrentAgents:l,memoryBackend:c,hnswEnabled:!0,lazyLoading:m,enabledDomains:k,enableExperienceBridge:!1}),await t.kernel.initialize();let u=await
|
|
32
|
+
`)),!t.initialized){t.kernel=new ae({maxConcurrentAgents:l,memoryBackend:c,hnswEnabled:!0,lazyLoading:m,enabledDomains:k,enableExperienceBridge:!1}),await t.kernel.initialize();let u=await pe(t.kernel.plugins);console.log(d.green(" * Kernel initialized")),t.router=new ie(t.kernel.eventBus),await t.router.initialize(),console.log(d.green(" * Cross-domain router initialized")),t.workflowOrchestrator=new re(t.kernel.eventBus,t.kernel.memory,t.kernel.coordinator),await t.workflowOrchestrator.initialize(),i(t.kernel,t.workflowOrchestrator),console.log(d.green(" * Workflow orchestrator initialized")),t.persistentScheduler=ge(),console.log(d.green(" * Persistent scheduler initialized"));let S=b=>t.kernel.getDomainAPI(b),p=new me(t.kernel.eventBus,t.kernel.memory,S);t.queen=se(t.kernel,t.router,p,void 0,u),await t.queen.initialize(),console.log(d.green(" * Queen coordinator initialized")),t.initialized=!0}(n.format||"text")==="json"?z(C({status:"initialized",topology:s,maxAgents:l,domains:k,memoryBackend:c,lazyLoading:m,loadPatterns:w}),n.output):(console.log(d.green(`
|
|
33
33
|
Fleet initialized successfully!
|
|
34
34
|
`)),console.log(d.white("Next steps:")),console.log(d.gray(" 1. Spawn agents: aqe fleet spawn --domains test-generation")),console.log(d.gray(" 2. Run operation: aqe fleet run test --target ./src")),console.log(d.gray(` 3. Check status: aqe fleet status
|
|
35
35
|
`))),await e(0)}catch(s){console.error(d.red(`
|
|
@@ -37,8 +37,8 @@ import{a as T,b as ye,c as _,d as V,e as he,f as G,g as we,j as ke}from"./chunk-
|
|
|
37
37
|
Fleet Spawn Operation
|
|
38
38
|
`));let r=new O({title:"Agent Spawn Progress",showEta:!0}),c=s.length*l;r.start(c);let m=[],w=0;for(let f of s)for(let u=0;u<l;u++){let S=`${f}-${n.type}-${u+1}`,p=`agent-${w++}`;r.addAgent({id:p,name:S,status:"pending",progress:0}),r.updateAgent(p,10,{status:"running"});try{r.updateAgent(p,30,{message:"Initializing..."});let b=await t.queen.requestAgentSpawn(f,n.type,["general"]);r.updateAgent(p,80,{message:"Configuring..."}),b.success?(r.completeAgent(p,!0),m.push({id:b.value,domain:f,success:!0})):(r.completeAgent(p,!1),m.push({id:p,domain:f,success:!1}))}catch{r.completeAgent(p,!1),m.push({id:p,domain:f,success:!1})}}r.stop();let h=m.filter(f=>f.success).length,k=m.filter(f=>!f.success).length;console.log(d.blue(`
|
|
39
39
|
Fleet Summary:`)),console.log(d.gray(` Domains: ${s.join(", ")}`)),console.log(d.green(` Successful: ${h}`)),k>0&&console.log(d.red(` Failed: ${k}`)),console.log(""),await e(k>0?1:0)}catch(s){console.error(d.red(`
|
|
40
|
-
Fleet spawn failed:`),s),await e(1)}}),
|
|
40
|
+
Fleet spawn failed:`),s),await e(1)}}),Oe(a,t,e,o),a.command("status").description("Show fleet status with agent progress").option("-w, --watch","Watch mode with live updates").option("-F, --format <format>","Output format (text|json)","text").option("-o, --output <path>","Write output to file").action(async n=>{if(await o())try{let s=async()=>{let r=t.queen.getHealth(),c=t.queen.getMetrics();console.log(d.blue(`
|
|
41
41
|
Fleet Status
|
|
42
|
-
`));let m="\u2588".repeat(Math.min(Math.round(c.agentUtilization*20),20))+"\u2591".repeat(Math.max(20-Math.round(c.agentUtilization*20),0));console.log(d.white(`Fleet Utilization ${d.cyan(m)} ${(c.agentUtilization*100).toFixed(0)}%`)),console.log(""),console.log(d.white("Agent Progress:"));for(let[w,h]of r.domainHealth){let k=h.agents.active,f=h.agents.total,u=f>0?Math.round(k/f*100):0,S=h.status==="healthy"?d.green("\u2713"):h.status==="degraded"?d.yellow("\u25B6"):d.red("\u2717"),p="\u2588".repeat(Math.round(u/5))+"\u2591".repeat(20-Math.round(u/5));console.log(` ${w.padEnd(28)} ${d.cyan(p)} ${u.toString().padStart(3)}% ${S}`)}console.log(""),console.log(d.gray(` Active: ${r.activeAgents}/${r.totalAgents} agents`)),console.log(d.gray(` Tasks: ${r.runningTasks} running, ${r.pendingTasks} pending`)),console.log("")};if((n.format||"text")==="json"){let r=t.queen.getHealth(),c=t.queen.getMetrics(),m={};for(let[w,h]of r.domainHealth)m[w]={status:h.status,agents:h.agents,errors:h.errors.length};z(C({status:r.status,utilization:c.agentUtilization,activeAgents:r.activeAgents,totalAgents:r.totalAgents,runningTasks:r.runningTasks,pendingTasks:r.pendingTasks,domains:m}),n.output),await e(0);return}if(n.watch){
|
|
42
|
+
`));let m="\u2588".repeat(Math.min(Math.round(c.agentUtilization*20),20))+"\u2591".repeat(Math.max(20-Math.round(c.agentUtilization*20),0));console.log(d.white(`Fleet Utilization ${d.cyan(m)} ${(c.agentUtilization*100).toFixed(0)}%`)),console.log(""),console.log(d.white("Agent Progress:"));for(let[w,h]of r.domainHealth){let k=h.agents.active,f=h.agents.total,u=f>0?Math.round(k/f*100):0,S=h.status==="healthy"?d.green("\u2713"):h.status==="degraded"?d.yellow("\u25B6"):d.red("\u2717"),p="\u2588".repeat(Math.round(u/5))+"\u2591".repeat(20-Math.round(u/5));console.log(` ${w.padEnd(28)} ${d.cyan(p)} ${u.toString().padStart(3)}% ${S}`)}console.log(""),console.log(d.gray(` Active: ${r.activeAgents}/${r.totalAgents} agents`)),console.log(d.gray(` Tasks: ${r.runningTasks} running, ${r.pendingTasks} pending`)),console.log("")};if((n.format||"text")==="json"){let r=t.queen.getHealth(),c=t.queen.getMetrics(),m={};for(let[w,h]of r.domainHealth)m[w]={status:h.status,agents:h.agents,errors:h.errors.length};z(C({status:r.status,utilization:c.agentUtilization,activeAgents:r.activeAgents,totalAgents:r.totalAgents,runningTasks:r.runningTasks,pendingTasks:r.pendingTasks,domains:m}),n.output),await e(0);return}if(n.watch){ye("Watching fleet status (Ctrl+C to exit)").spinner.stop(),await s();let c=setInterval(async()=>{console.clear(),await s()},2e3);c.unref?.(),process.once("SIGINT",async()=>{clearInterval(c),console.log(d.yellow(`
|
|
43
43
|
Stopped watching.`)),await e(0)})}else await s(),await e(0)}catch(s){console.error(d.red(`
|
|
44
|
-
Failed to get fleet status:`),s),await e(1)}}),a}export{
|
|
44
|
+
Failed to get fleet status:`),s),await e(1)}}),a}export{en as createFleetCommand};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}from"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}from"./chunk-FQRS7WVA.js";import"./chunk-LWAFRYKE.js";import"./chunk-MQM37KAR.js";import"./chunk-V2LJ54KP.js";import"./chunk-BDVFSMOQ.js";export{e as GNNLayerFactory,c as QEGNNEmbeddingIndex,d as QEGNNIndexFactory,f as TensorCompressionFactory,p as batchDifferentiableSearch,i as getDifferentiableSearch,k as getGetCompressionLevel,j as getHierarchicalForward,l as getInit,g as getRuvectorLayer,h as getTensorCompress,b as initGNN,a as isGNNAvailable,m as toFloat32Array,o as toIEmbedding,n as toNumberArray};
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import{b as d}from"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{b as d}from"./chunk-R55Y76SJ.js";import"./chunk-OBCXCRXK.js";import{a as c,e as f}from"./chunk-AWQAE3SW.js";import"./chunk-BDVFSMOQ.js";import*as s from"fs";import*as l from"path";import e from"chalk";f();var h=class{name="heartbeat";description="Manage the token-free heartbeat scheduler";cleanupAndExit;worker;constructor(t){this.cleanupAndExit=t}async getWorker(){if(!this.worker){let{HeartbeatSchedulerWorker:t}=await import("./heartbeat-scheduler-3DU3M5AT.js");this.worker=new t}return this.worker}register(t,o){let a=t.command("heartbeat").description(this.description);a.command("status").description("Show heartbeat worker status, health, and schedule").action(async()=>{await this.executeStatus()}),a.command("run-now").description("Trigger an immediate heartbeat cycle").option("-t, --timeout <ms>","Timeout in milliseconds (default: worker built-in 60s)").action(async n=>{let i=n.timeout?parseInt(n.timeout,10):void 0;await this.executeRunNow(i)}),a.command("history").description("Show recent heartbeat results").option("-n, --count <count>","Number of entries to show","10").action(async n=>{await this.executeHistory(parseInt(n.count,10)||10)}),a.command("log").description("Show today's daily log entries").option("-d, --date <date>","Show log for specific date (YYYY-MM-DD)").action(async n=>{await this.executeLog(n.date)}),a.command("pause").description("Pause the heartbeat worker").action(async()=>{await this.executePause()}),a.command("resume").description("Resume the heartbeat worker").action(async()=>{await this.executeResume()})}async executeStatus(){try{this.worker=await this.getWorker(),await this.worker.initialize();let t=this.worker.getHealth(),o=this.worker.lastResult;if(console.log(e.blue(`
|
|
3
3
|
Heartbeat Scheduler Status`)),console.log(e.gray(" "+"\u2500".repeat(35))),console.log(` Status: ${x(t.status)}`),console.log(` Health Score: ${y(t.healthScore)}${e.gray("/100")}`),this.worker.lastRunAt){let n=p(this.worker.lastRunAt);console.log(` Last Run: ${e.cyan(this.worker.lastRunAt.toISOString().replace("T"," ").slice(0,19))} ${e.gray(`(${n})`)}`)}else console.log(` Last Run: ${e.gray("never")}`);if(this.worker.nextRunAt){let n=p(this.worker.nextRunAt,!0);console.log(` Next Run: ${e.cyan(this.worker.nextRunAt.toISOString().replace("T"," ").slice(0,19))} ${e.gray(`(${n})`)}`)}console.log(` Total Runs: ${e.cyan(String(t.totalExecutions))}`);let a=t.totalExecutions>0?(t.successfulExecutions/t.totalExecutions*100).toFixed(1):"100.0";if(console.log(` Success Rate: ${e.cyan(a+"%")}`),o?.metrics?.domainMetrics){let n=o.metrics.domainMetrics;console.log(""),console.log(e.blue(" Last Result:")),console.log(` Promoted: ${e.cyan(String(n.promoted??0))} patterns`),console.log(` Deprecated: ${e.cyan(String(n.deprecated??0))} patterns`),console.log(` Decayed: ${e.cyan(String(n.decayed??0))} patterns`),console.log(` Pending Exp: ${e.cyan(String(n.pendingExperiences??0))}`),console.log(` Avg Conf: ${e.cyan(String(n.avgConfidence??0))}`)}console.log(""),await this.cleanupAndExit(0)}catch(t){console.error(e.red(`
|
|
4
4
|
Failed to get heartbeat status:`),c(t)),await this.cleanupAndExit(1)}}async executeRunNow(t){try{this.worker=await this.getWorker(),console.log(e.blue(`
|
|
5
5
|
Triggering heartbeat cycle...
|
|
6
6
|
`)),await this.worker.initialize();let o=new AbortController,a=t&&t>0?setTimeout(()=>o.abort(),t):null,n=await this.worker.execute({eventBus:{publish:async()=>{}},memory:{get:async()=>{},set:async()=>{},search:async()=>[]},logger:{debug:()=>{},info:(...i)=>console.log(e.gray(" [heartbeat]"),...i),warn:(...i)=>console.warn(e.yellow(" [heartbeat]"),...i),error:(...i)=>console.error(e.red(" [heartbeat]"),...i)},domains:{getDomainAPI:()=>{},getDomainHealth:()=>({status:"healthy",errors:[]})},signal:o.signal});if(a&&clearTimeout(a),n.success){let i=n.metrics.domainMetrics;console.log(e.green(" Heartbeat cycle complete.")),console.log(` Duration: ${e.cyan(d(n.durationMs))}`),console.log(` Health Score: ${y(n.metrics.healthScore)}${e.gray("/100")}`),console.log(` Trend: ${k(n.metrics.trend)}`),console.log(` Promoted: ${e.cyan(String(i.promoted??0))}`),console.log(` Deprecated: ${e.cyan(String(i.deprecated??0))}`),console.log(` Decayed: ${e.cyan(String(i.decayed??0))}`),console.log(` Findings: ${e.cyan(String(n.findings.length))}`)}else console.error(e.red(" Heartbeat cycle failed:"),n.error);await b(n),console.log(""),await this.cleanupAndExit(n.success?0:1)}catch(o){console.error(e.red(`
|
|
7
7
|
Failed to run heartbeat:`),c(o)),await this.cleanupAndExit(1)}}async executeHistory(t){try{let o=await S(t);if(o.length===0){console.log(e.yellow("\n No heartbeat history found. Run `aqe heartbeat run-now` first.\n")),await this.cleanupAndExit(0);return}console.log(e.blue(`
|
|
8
|
-
Heartbeat History (last ${o.length})`)),console.log(e.gray(" "+"\u2500".repeat(60)));for(let a of o){let n=a.success?e.green("OK"):e.red("FAIL"),i=a.timestamp.slice(0,19).replace("T"," "),u=a.domainMetrics||{};console.log(` ${e.gray(i)} ${n} score:${e.cyan(String(a.healthScore))} +${u.promoted??0}/-${u.deprecated??0} ${e.gray(d(a.durationMs))}`)}console.log(""),await this.cleanupAndExit(0)}catch(o){console.error(e.red(`
|
|
8
|
+
Heartbeat History (last ${o.length})`)),console.log(e.gray(" "+"\u2500".repeat(60)));for(let a of o){let n=a.success?e.green("OK"):e.red("FAIL"),i=a.timestamp.slice(0,19).replace("T"," "),u=a.domainMetrics||{};console.log(` ${e.gray(i)} ${n} score:${e.cyan(String(a.healthScore??"unmeasured"))} +${u.promoted??0}/-${u.deprecated??0} ${e.gray(d(a.durationMs))}`)}console.log(""),await this.cleanupAndExit(0)}catch(o){console.error(e.red(`
|
|
9
9
|
Failed to load history:`),c(o)),await this.cleanupAndExit(1)}}async executeLog(t){try{let o=t||new Date().toISOString().split("T")[0];if(!/^\d{4}-\d{2}-\d{2}$/.test(o)){console.error(e.red(`
|
|
10
10
|
Invalid date format: "${o}". Use YYYY-MM-DD.
|
|
11
|
-
`)),await this.cleanupAndExit(1);return}let{findProjectRoot:a}=await import("./unified-memory-
|
|
11
|
+
`)),await this.cleanupAndExit(1);return}let{findProjectRoot:a}=await import("./unified-memory-GUR3IUI6.js"),n=l.join(a(),".agentic-qe","logs"),i=l.join(n,`${o}.md`);if(!s.existsSync(i)){console.log(e.yellow(`
|
|
12
12
|
No daily log found for ${o}.
|
|
13
13
|
`)),await this.cleanupAndExit(0);return}let u=s.readFileSync(i,"utf-8");console.log(e.blue(`
|
|
14
14
|
Daily Log \u2014 ${o}`)),console.log(e.gray(" "+"\u2500".repeat(40)));for(let g of u.split(`
|
|
@@ -45,4 +45,4 @@ Examples:
|
|
|
45
45
|
aqe heartbeat log --date 2026-03-25
|
|
46
46
|
aqe heartbeat pause
|
|
47
47
|
aqe heartbeat resume
|
|
48
|
-
`}},m=100;async function w(){let{findProjectRoot:r}=await import("./unified-memory-
|
|
48
|
+
`}},m=100;async function w(){let{findProjectRoot:r}=await import("./unified-memory-GUR3IUI6.js");return l.join(r(),".agentic-qe","heartbeat-history.json")}async function b(r){try{let t=await w(),o=l.dirname(t);s.existsSync(o)||s.mkdirSync(o,{recursive:!0});let a=[];if(s.existsSync(t))try{a=JSON.parse(s.readFileSync(t,"utf-8"))}catch{a=[]}a.unshift({timestamp:r.timestamp.toISOString(),success:r.success,durationMs:r.durationMs,healthScore:r.metrics.healthScore,domainMetrics:r.metrics.domainMetrics}),a.length>m&&(a=a.slice(0,m)),s.writeFileSync(t,JSON.stringify(a,null,2))}catch{}}async function S(r){try{let t=await w();return s.existsSync(t)?JSON.parse(s.readFileSync(t,"utf-8")).slice(0,r):[]}catch{return[]}}function x(r){switch(r){case"idle":return e.cyan(r);case"running":return e.yellow(r);case"paused":return e.yellow(r);case"stopped":return e.gray(r);case"error":return e.red(r);default:return e.white(r)}}function y(r){return r===null?e.gray("unmeasured"):r>=80?e.green(String(r)):r>=50?e.yellow(String(r)):e.red(String(r))}function k(r){switch(r){case"improving":return e.green(r);case"stable":return e.cyan(r);case"degrading":return e.red(r);default:return e.gray(r)}}function p(r,t=!1){let o=t?r.getTime()-Date.now():Date.now()-r.getTime();return o<0?t?"now":"just now":o<6e4?`${Math.floor(o/1e3)}s ${t?"from now":"ago"}`:o<36e5?`${Math.floor(o/6e4)}m ${t?"from now":"ago"}`:`${Math.floor(o/36e5)}h ${t?"from now":"ago"}`}function A(r){return new h(r)}export{h as HeartbeatHandler,A as createHeartbeatHandler};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{b as a}from"./chunk-CFQLLF3D.js";import"./chunk-BO6EQNOC.js";import"./chunk-7XTUKKRA.js";import"./chunk-MKRKRXTX.js";import"./chunk-Y4LSEOZ3.js";import"./chunk-OW23N2Y5.js";import"./chunk-YDI56L35.js";import"./chunk-ZFT3RLA4.js";import"./chunk-MZRBNBB3.js";import"./chunk-MSX2OHYT.js";import"./chunk-SRVNR3R3.js";import"./chunk-Z7SD7LXM.js";import"./chunk-QZU6M5IO.js";import"./chunk-LWAFRYKE.js";import"./chunk-YFILS5D5.js";import"./chunk-MQM37KAR.js";import"./chunk-M24ZAZ4U.js";import"./chunk-4QSQKFED.js";import"./chunk-O5EWFR76.js";import"./chunk-NKU3FFM4.js";import"./chunk-Q7V722K5.js";import"./chunk-KH4T6STG.js";import"./chunk-V2LJ54KP.js";import"./chunk-YP2GHQSV.js";import"./chunk-ZDWD73UF.js";import"./chunk-WJN3V7QB.js";import"./chunk-L2MBKVSE.js";import"./chunk-AWQAE3SW.js";import"./chunk-244RKAEP.js";import"./chunk-BDVFSMOQ.js";export{a as HeartbeatSchedulerWorker};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{a,b}from"./chunk-QZU6M5IO.js";import"./chunk-LWAFRYKE.js";import"./chunk-V2LJ54KP.js";import"./chunk-BDVFSMOQ.js";b();export{a as HnswAdapter};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import{a,b,c,d}from"./chunk-K6CH4CFF.js";import"./chunk-SRVNR3R3.js";import"./chunk-QZU6M5IO.js";import"./chunk-LWAFRYKE.js";import"./chunk-O5EWFR76.js";import"./chunk-NKU3FFM4.js";import"./chunk-Q7V722K5.js";import"./chunk-KH4T6STG.js";import"./chunk-V2LJ54KP.js";import"./chunk-BDVFSMOQ.js";export{a as DEFAULT_HNSW_CONFIG,b as HNSWIndex,d as benchmarkHNSW,c as createHNSWIndex};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import"./chunk-BDVFSMOQ.js";var s=class{adapter;metadataMap=new Map;insertCount=0;constructor(e){this.adapter=e}async initialize(){}async insert(e,t,r){this.adapter.addByStringId(e,t),this.insertCount++,r&&this.metadataMap.set(e,r)}async search(e,t){return this.adapter.searchByArray(e,t).map(a=>({key:a.id,score:a.score,distance:1-a.score,metadata:this.metadataMap.get(a.id)}))}async batchInsert(e){for(let t of e)await this.insert(t.key,t.vector,t.metadata)}async delete(e){let t=this.adapter.removeByStringId(e);return t&&this.metadataMap.delete(e),t}async getStats(){return{nativeHNSW:!0,backendType:"ruvector-gnn",vectorCount:this.adapter.size(),indexSizeBytes:this.adapter.size()*this.adapter.dimensions()*4,avgSearchLatencyMs:this.adapter.lastSearchLatencyMs,p95SearchLatencyMs:0,p99SearchLatencyMs:0,searchOperations:0,insertOperations:this.insertCount}}async clear(){this.adapter.clear(),this.metadataMap.clear(),this.insertCount=0}isNativeAvailable(){return!0}};export{s as HnswLegacyBridge};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
2
|
-
import"./chunk-
|
|
1
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
2
|
+
import"./chunk-BDVFSMOQ.js";import{createRequire as t}from"module";var o=t(import.meta.url),e=o("hnswlib-node"),i=e,{RuvectorLayer:r,TensorCompress:a,differentiableSearch:c,hierarchicalForward:l,getCompressionLevel:s,init:p,FlashAttention:d,DotProductAttention:m,MultiHeadAttention:u,HyperbolicAttention:A,LinearAttention:h,MoEAttention:f,SonaEngine:_,pipeline:b}=e||{};export{m as DotProductAttention,d as FlashAttention,A as HyperbolicAttention,h as LinearAttention,f as MoEAttention,u as MultiHeadAttention,r as RuvectorLayer,_ as SonaEngine,a as TensorCompress,i as default,c as differentiableSearch,s as getCompressionLevel,l as hierarchicalForward,p as init,b as pipeline};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.
|
|
3
|
-
import{a as A,b as we,c as Se}from"./chunk-
|
|
2
|
+
import{createRequire as __cr}from"module";const require=__cr(import.meta.url);if(process.argv.includes('--version')||process.argv.includes('-v')){console.log("3.15.18");process.exit(0)}
|
|
3
|
+
import{a as A,b as we,c as Se}from"./chunk-HZQBW5EM.js";import{a as ee}from"./chunk-OXOO3YDL.js";import{c as _e,d as be}from"./chunk-IZODXKZD.js";import{d as W,h as oe}from"./chunk-6TEVM3X3.js";import"./chunk-5AGXIZQ5.js";import{b as he}from"./chunk-RMEQYJPU.js";import"./chunk-UNTBVJ5X.js";import{b as Z}from"./chunk-Y4LSEOZ3.js";import"./chunk-F6YD3BOW.js";import"./chunk-JKIJVVSP.js";import"./chunk-X5I2Y4VO.js";import"./chunk-O5RDHD5T.js";import"./chunk-GPIJIZJQ.js";import"./chunk-TWTXPSFU.js";import{a as fe}from"./chunk-X7IQIFTS.js";import{d as Ee,e as Te}from"./chunk-LTGB7OIU.js";import"./chunk-4BIMTRRX.js";import{a as ke,b as ye}from"./chunk-ZNTHX5G3.js";import{C as U,w as M}from"./chunk-OW23N2Y5.js";import"./chunk-YDI56L35.js";import"./chunk-ZFT3RLA4.js";import{a as K,b as Y,c as pe,e as ze}from"./chunk-MZRBNBB3.js";import"./chunk-MSX2OHYT.js";import"./chunk-SRVNR3R3.js";import"./chunk-Z7SD7LXM.js";import"./chunk-QZU6M5IO.js";import"./chunk-LWAFRYKE.js";import{a as ge}from"./chunk-SWGPLXWW.js";import"./chunk-YFILS5D5.js";import{b as me,d as Fe}from"./chunk-MQM37KAR.js";import"./chunk-BGXXMX3Y.js";import"./chunk-M24ZAZ4U.js";import"./chunk-JMRDT2XK.js";import"./chunk-4QSQKFED.js";import{a as He}from"./chunk-O5EWFR76.js";import{c as ue}from"./chunk-NKU3FFM4.js";import"./chunk-Q7V722K5.js";import"./chunk-KH4T6STG.js";import"./chunk-V2LJ54KP.js";import"./chunk-BKMQQY5T.js";import{c as R}from"./chunk-YP2GHQSV.js";import"./chunk-ZDWD73UF.js";import"./chunk-WGXT5NWQ.js";import"./chunk-BSXKZDKO.js";import"./chunk-WJN3V7QB.js";import"./chunk-L2MBKVSE.js";import"./chunk-AWQAE3SW.js";import"./chunk-244RKAEP.js";import"./chunk-BDVFSMOQ.js";import{Command as yt}from"commander";import $ from"chalk";import ve from"node:path";U();import{randomUUID as B}from"crypto";import I from"chalk";var H="dream-scheduler:hook-state";async function Re(r,e,t){try{let{computeRealEmbedding:n,getActiveEmbeddingSpaceIdentity:o}=await import("./real-embeddings-MIGZNKK3.js"),{recordExperienceEmbeddingSpace:s}=await import("./embedding-space-KHG6TITM.js"),{writeWhenUnlockedOn:a}=await import("./unified-memory-GUR3IUI6.js"),c=await n(t.slice(0,512));await a(r,()=>{r.prepare("UPDATE captured_experiences SET embedding = ?, embedding_dimension = ? WHERE id = ?").run(Buffer.from(new Float32Array(c).buffer),c.length,e),s(r,e,o()?.spaceId)})}catch(n){console.error(I.dim(`[hooks] embedding persistence: ${n instanceof Error?n.message:"unknown"}`))}}async function x(r){try{let e=await r.get(H);return e||(e={lastDreamTime:null,experienceCount:0,sessionStartTime:new Date().toISOString(),totalDreamsThisSession:0}),e.experienceCount++,await r.set(H,e),e.experienceCount}catch{return 0}}async function G(r){try{let{getUnifiedMemory:e}=await import("./unified-memory-GUR3IUI6.js"),t=e();t.isInitialized()||await t.initialize();let{initializeExperienceCapture:n}=await import("./experience-capture-middleware-KXD47H6P.js");await n();let o=t.getDatabase();try{o.pragma("busy_timeout = 60000")}catch{}let s=`cli-${Date.now()}-${B().slice(0,8)}`,a=r.durationMs||0,c;if(r.success){let i=a>0&&a<5e3?.1:0,f=r.source.includes("post-task")?.1:r.source.includes("post-edit")?.05:0;c=Math.min(.95,.7+i+f)}else{let i=r.source.includes("post-task")?.15:r.source.includes("post-edit")?.1:0;c=Math.min(.6,.3+i)}o.prepare(`
|
|
4
4
|
INSERT OR REPLACE INTO captured_experiences
|
|
5
5
|
(id, task, agent, domain, success, quality, duration_ms,
|
|
6
6
|
started_at, completed_at, source)
|
|
7
7
|
VALUES (?, ?, ?, ?, ?, ?, ?, datetime('now'), datetime('now'), ?)
|
|
8
|
-
`).run(s,r.task.slice(0,500),r.agent,r.domain,r.success?1:0,c,a,r.source),await Re(o,s,`${r.domain}: ${r.task}`)}catch(e){console.error(I.dim(`[hooks] persistCommandExperience: ${e instanceof Error?e.message:"unknown"}`))}}async function se(r){let{getUnifiedMemory:e}=await import("./unified-memory-
|
|
8
|
+
`).run(s,r.task.slice(0,500),r.agent,r.domain,r.success?1:0,c,a,r.source),await Re(o,s,`${r.domain}: ${r.task}`)}catch(e){console.error(I.dim(`[hooks] persistCommandExperience: ${e instanceof Error?e.message:"unknown"}`))}}async function se(r){let{getUnifiedMemory:e}=await import("./unified-memory-GUR3IUI6.js"),t=e();t.isInitialized()||await t.initialize();let n=t.getDatabase();try{n.pragma("busy_timeout = 60000")}catch{}try{n.exec(`
|
|
9
9
|
CREATE TABLE IF NOT EXISTS captured_experiences (
|
|
10
10
|
id TEXT PRIMARY KEY,
|
|
11
11
|
task TEXT NOT NULL,
|
|
@@ -90,7 +90,7 @@ import{a as A,b as we,c as Se}from"./chunk-ZC3KDNJW.js";import{a as ee}from"./ch
|
|
|
90
90
|
WHERE actionable = 1 AND (applied = 0 OR applied IS NULL)
|
|
91
91
|
ORDER BY created_at DESC
|
|
92
92
|
LIMIT 3
|
|
93
|
-
`).all();if(u.length>0){let{createDreamEngine:E}=await import("./dream-
|
|
93
|
+
`).all();if(u.length>0){let{createDreamEngine:E}=await import("./dream-VQ2PZCVR.js"),g=E();await g.initialize();try{for(let T of u){let D=await g.applyInsight(T.id);D.success&&D.patternId&&d++}}finally{await g.close()}}}catch(u){console.error(I.dim(`[hooks] post-task insight apply: ${u instanceof Error?u.message:"unknown"}`))}return await Re(n,o,`${r.domain??"general"}: ${s}`),{experienceId:o,qualityScore:f,bridge:l,stitchedSiblings:p,insightsApplied:d}}async function Q(r){try{let{getUnifiedMemory:e}=await import("./unified-memory-GUR3IUI6.js"),t=e();t.isInitialized()||await t.initialize();let n=t.getDatabase();try{n.pragma("busy_timeout = 60000")}catch{}let o=`${r.taskType}|${r.priority}|${r.domain||"any"}`,s=r.agent,a=`q-learning:aqe-hook-router:${o}:${s}`,c=r.success?.1:-1,i=.1,f=.9,l=n.prepare(`
|
|
94
94
|
SELECT q_value FROM rl_q_values WHERE id = ?
|
|
95
95
|
`).get(a),p=l&&typeof l.q_value=="number"?l.q_value:0,d=n.prepare(`
|
|
96
96
|
SELECT MAX(q_value) AS m FROM rl_q_values WHERE state_key = ?
|
|
@@ -103,7 +103,7 @@ import{a as A,b as we,c as Se}from"./chunk-ZC3KDNJW.js";import{a as ee}from"./ch
|
|
|
103
103
|
visits = visits + 1,
|
|
104
104
|
last_reward = excluded.last_reward,
|
|
105
105
|
updated_at = datetime('now')
|
|
106
|
-
`).run(a,o,s,u,c,r.domain||"any")}catch(e){console.error(I.dim(`[hooks] q-learning update: ${e instanceof Error?e.message:"unknown"}`))}}async function ae(r){try{let{getUnifiedMemory:e}=await import("./unified-memory-
|
|
106
|
+
`).run(a,o,s,u,c,r.domain||"any")}catch(e){console.error(I.dim(`[hooks] q-learning update: ${e instanceof Error?e.message:"unknown"}`))}}async function ae(r){try{let{getUnifiedMemory:e}=await import("./unified-memory-GUR3IUI6.js"),t=e();t.isInitialized()||await t.initialize();let n=t.getDatabase();try{n.pragma("busy_timeout = 60000")}catch{}n.prepare(`
|
|
107
107
|
UPDATE routing_outcomes
|
|
108
108
|
SET success = ?, quality_score = ?, duration_ms = ?
|
|
109
109
|
WHERE id IN (
|
|
@@ -114,7 +114,7 @@ import{a as A,b as we,c as Se}from"./chunk-ZC3KDNJW.js";import{a as ee}from"./ch
|
|
|
114
114
|
ORDER BY (CASE WHEN used_agent = ? THEN 0 ELSE 1 END), created_at DESC
|
|
115
115
|
LIMIT 1
|
|
116
116
|
)
|
|
117
|
-
`).run(r.success?1:0,r.qualityScore,r.durationMs,r.agent)}catch(e){console.error(I.dim(`[hooks] routing UPDATE: ${e instanceof Error?e.message:"unknown"}`))}}async function ie(){let{getUnifiedMemory:r}=await import("./unified-memory-
|
|
117
|
+
`).run(r.success?1:0,r.qualityScore,r.durationMs,r.agent)}catch(e){console.error(I.dim(`[hooks] routing UPDATE: ${e instanceof Error?e.message:"unknown"}`))}}async function ie(){let{getUnifiedMemory:r}=await import("./unified-memory-GUR3IUI6.js"),e=r();e.isInitialized()||await e.initialize();let t=e.getDatabase();try{t.pragma("busy_timeout = 60000")}catch{}let n=new Set(t.prepare("PRAGMA table_info(captured_experiences)").all().map(i=>i.name)),o=[["consolidated_into","TEXT DEFAULT NULL"],["consolidation_count","INTEGER DEFAULT 1"],["quality_updated_at","TEXT DEFAULT NULL"],["reuse_success_count","INTEGER DEFAULT 0"],["reuse_failure_count","INTEGER DEFAULT 0"]];for(let[i,f]of o)n.has(i)||t.exec(`ALTER TABLE captured_experiences ADD COLUMN ${i} ${f}`);let s=t.prepare(`
|
|
118
118
|
SELECT
|
|
119
119
|
domain,
|
|
120
120
|
agent,
|
|
@@ -130,7 +130,7 @@ import{a as A,b as we,c as Se}from"./chunk-ZC3KDNJW.js";import{a as ee}from"./ch
|
|
|
130
130
|
HAVING cnt >= 3 AND avg_quality >= 0.5 AND success_rate >= 0.6
|
|
131
131
|
ORDER BY avg_quality DESC
|
|
132
132
|
LIMIT 50
|
|
133
|
-
`).all();if(s.length===0)return 0;let{v4:a}=await import("./dist-node-
|
|
133
|
+
`).all();if(s.length===0)return 0;let{v4:a}=await import("./dist-node-I2GICS3W.js"),c=0;for(let i of s)try{let f=new Date().toISOString().slice(0,7),l=`${i.agent}-${i.domain}-${f}`,p=t.prepare(`
|
|
134
134
|
SELECT id FROM qe_patterns
|
|
135
135
|
WHERE qe_domain = ? AND name = ?
|
|
136
136
|
LIMIT 1
|
|
@@ -149,11 +149,11 @@ import{a as A,b as we,c as Se}from"./chunk-ZC3KDNJW.js";import{a as ee}from"./ch
|
|
|
149
149
|
confidence, usage_count, success_rate, quality_score, tier,
|
|
150
150
|
template_json, context_json, created_at, last_used_at, successful_uses
|
|
151
151
|
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, datetime('now'), datetime('now'), ?)
|
|
152
|
-
`).run(d,"workflow",i.domain,i.domain,l,E,k,i.cnt,i.success_rate,u,"short-term",JSON.stringify({type:"workflow",content:`${i.agent} pattern for ${i.domain}`,variables:[]}),JSON.stringify({tags:g,sourceType:"session-consolidation",extractedAt:new Date().toISOString()}),i.successes);let{ensurePatternEmbedding:T}=await import("./embed-and-insert-pattern-
|
|
152
|
+
`).run(d,"workflow",i.domain,i.domain,l,E,k,i.cnt,i.success_rate,u,"short-term",JSON.stringify({type:"workflow",content:`${i.agent} pattern for ${i.domain}`,variables:[]}),JSON.stringify({tags:g,sourceType:"session-consolidation",extractedAt:new Date().toISOString()}),i.successes);let{ensurePatternEmbedding:T}=await import("./embed-and-insert-pattern-F5P5B6JX.js");await T(t,d,l,E,g),c++}t.prepare(`
|
|
153
153
|
UPDATE captured_experiences
|
|
154
154
|
SET application_count = application_count + 1
|
|
155
155
|
WHERE domain = ? AND agent = ? AND application_count = 0
|
|
156
|
-
`).run(i.domain,i.agent)}catch{}return c}var m={reasoningBank:null,hookRegistry:null,coherenceService:null,sessionId:null,initialized:!1,initializationPromise:null};async function Ae(){let r=m.reasoningBank;try{r&&await r.dispose()}catch{}try{let{resetSharedRvfDualWriter:e}=await import("./shared-rvf-dual-writer-
|
|
156
|
+
`).run(i.domain,i.agent)}catch{}return c}var m={reasoningBank:null,hookRegistry:null,coherenceService:null,sessionId:null,initialized:!1,initializationPromise:null};async function Ae(){let r=m.reasoningBank;try{r&&await r.dispose()}catch{}try{let{resetSharedRvfDualWriter:e}=await import("./shared-rvf-dual-writer-HVAAVEOH.js");e()}catch{}try{let{resetSharedRvfAdapter:e}=await import("./shared-rvf-adapter-GKD74QUB.js");e()}catch{}m.reasoningBank=null,m.hookRegistry=null,m.coherenceService=null,m.sessionId=null,m.initialized=!1,m.initializationPromise=null}async function _(){if(m.initializationPromise&&await m.initializationPromise,m.initialized&&m.reasoningBank&&m.hookRegistry)return{reasoningBank:m.reasoningBank,hookRegistry:m.hookRegistry};if(m.initializationPromise=We(),await m.initializationPromise,m.initializationPromise=null,!m.reasoningBank||!m.hookRegistry)throw new Error("Failed to initialize hooks system");return{reasoningBank:m.reasoningBank,hookRegistry:m.hookRegistry}}async function We(){if(!m.initialized)try{let r=R(),e=ve.join(r,".agentic-qe"),t=await O(e);try{m.coherenceService=await _e(be),console.log($.dim("[hooks] CoherenceService initialized with WASM engines"))}catch(a){console.log($.dim(`[hooks] CoherenceService WASM unavailable, using fallback: ${a instanceof Error?a.message:"unknown"}`))}m.reasoningBank=oe(t,void 0,{enableLearning:!0,enableGuidance:!0,enableRouting:!0,embeddingDimension:384,useONNXEmbeddings:!0},m.coherenceService??void 0);let n=1e4,o=new AbortController,s=setTimeout(()=>o.abort(new Error("ReasoningBank init timeout")),n);try{await m.reasoningBank.initialize({signal:o.signal})}finally{clearTimeout(s)}try{let{getSharedRvfDualWriter:a}=await import("./shared-rvf-dual-writer-HVAAVEOH.js"),c=await a();c&&m.reasoningBank.setRvfDualWriter(c)}catch(a){process.env.DEBUG&&console.debug("[hooks] RVF wiring skipped:",a instanceof Error?a.message:a)}m.hookRegistry=Se(m.reasoningBank),m.initialized=!0,console.log($.dim("[hooks] System initialized"))}catch(r){console.warn($.yellow(`[hooks] Using fallback mode: ${r instanceof Error?r.message:"unknown error"}`));let e=Ge();m.reasoningBank=oe(e,void 0,{enableLearning:!0,enableGuidance:!0,enableRouting:!0}),m.hookRegistry=new we,m.hookRegistry.initialize(m.reasoningBank),m.initialized=!0}}function q(r){try{r.pragma("busy_timeout = 60000")}catch{}}async function O(r){let t=new fe({sqlite:{path:ve.join(r,"memory.db"),walMode:!0,poolSize:3,busyTimeout:6e4},enableFallback:!0,defaultNamespace:"qe-patterns"}),n=new AbortController,o=setTimeout(()=>n.abort(new Error("Backend init timeout")),5e3);try{await t.initialize({signal:n.signal})}finally{clearTimeout(o)}return t}function Ge(){let r=new Map;return{initialize:async()=>{},dispose:async()=>{r.clear()},get:async e=>{let t=r.get(e);return t?t.value:void 0},set:async(e,t,n)=>{r.set(e,{value:t})},delete:async e=>r.delete(e),has:async e=>r.has(e),search:async(e,t)=>{let n=e.replace(/[.+?^${}()|[\]\\]/g,"\\$&"),o=new RegExp(n.replace(/\*/g,".*"));return Array.from(r.keys()).filter(s=>o.test(s))},vectorSearch:async(e,t)=>[],storeVector:async(e,t,n)=>{},count:async e=>{let t=0,n=`${e}:`;for(let o of r.keys())o.startsWith(n)&&t++;return t},hasCodeIntelligenceIndex:async()=>{let e="code-intelligence:kg:";for(let t of r.keys())if(t.startsWith(e))return!0;return!1}}}function h(r){console.log(JSON.stringify(r,null,2))}function N(r){console.log($.green("\u2713"),r)}function w(r){console.error($.red("\u2717"),r)}function te(r){if(r.length===0){console.log($.dim(" No specific guidance"));return}r.forEach((e,t)=>{console.log($.cyan(` ${t+1}.`),e)})}async function F(r=500){return process.stdin.isTTY?"":new Promise(e=>{let t="",n=setTimeout(()=>{process.stdin.removeAllListeners(),process.stdin.pause(),e(t)},r);process.stdin.setEncoding("utf8"),process.stdin.on("data",o=>{t+=o}),process.stdin.on("end",()=>{clearTimeout(n),e(t)}),process.stdin.on("error",()=>{clearTimeout(n),e(t)}),process.stdin.resume()})}function Oe(r){if(!r.trim())return"";let e;try{e=JSON.parse(r)}catch{return""}let t=e.tool_input,n=e.toolInput,o=[t?.file_path,t?.filePath,n?.file_path,n?.filePath,e.file_path,e.filePath];for(let s of o)if(typeof s=="string"&&s.trim())return s;return""}function Ne(r){if(!r.trim())return"";let e;try{e=JSON.parse(r)}catch{return""}let t=e.tool_input,n=e.toolInput,o=[t?.subagent_type,t?.subagentType,n?.subagent_type,n?.subagentType,e.subagent_type,e.subagentType];for(let s of o)if(typeof s=="string"&&s.trim())return s;return""}import P from"chalk";import Qe from"node:path";U();function De(r){r.command("pre-edit").description("Get context and guidance before editing a file").requiredOption("-f, --file <path>","File path to edit").option("-o, --operation <type>","Operation type: create, update, delete, refactor","update").option("--json","Output as JSON").action(async e=>{try{let{hookRegistry:t}=await _(),o=(await t.emit(A.PreTestGeneration,{targetFile:e.file,testType:"unit",operation:e.operation}))[0]||{success:!0,guidance:[],routing:null};if(e.json){let s=o.guidance||[],c=[o.routing?.recommendedAgent?`Recommended agent: ${o.routing.recommendedAgent} (${(o.routing.confidence*100).toFixed(0)}% confidence).`:"",...s.map(i=>i)].filter(Boolean).join(" ");h({hookSpecificOutput:{hookEventName:"PreToolUse",additionalContext:c||void 0},file:e.file,operation:e.operation,patterns:o.routing?.patterns?.length||0})}else console.log(P.bold(`
|
|
157
157
|
\u{1F4DD} Pre-Edit Analysis`)),console.log(P.dim(` File: ${e.file}`)),console.log(P.dim(` Operation: ${e.operation}`)),o.routing&&(console.log(P.bold(`
|
|
158
158
|
\u{1F3AF} Recommended Agent:`),P.cyan(o.routing.recommendedAgent)),console.log(P.dim(` Confidence: ${(o.routing.confidence*100).toFixed(1)}%`))),console.log(P.bold(`
|
|
159
159
|
\u{1F4A1} Guidance:`)),te(o.guidance||[]);return}catch(t){throw w(`pre-edit failed: ${t instanceof Error?t.message:"unknown"}`),t}}),r.command("post-edit").description("Record editing outcome for pattern learning").requiredOption("-f, --file <path>","File path that was edited").option("--success","Edit was successful").option("--failure","Edit failed").option("--pattern-id <id>","Pattern ID that was applied").option("--json","Output as JSON").action(async e=>{try{let{hookRegistry:t}=await _(),n=e.success||!e.failure,o=e.file||"";if(!o.trim())try{let p=await F();o=Oe(p)}catch{}let s=o.split("/").pop()||"unknown",c=/\.(test|spec)\.(ts|js|tsx|jsx)$/.test(s)?"test-generation":"code-intelligence",i=e.patternId||`edit:${c}:${s}`,l=(await t.emit(A.PostTestGeneration,{targetFile:o,success:n,patternId:i,generatedTests:null,testCount:0}))[0]||{success:!0,patternsLearned:0};try{let{reasoningBank:p}=await _();await p.recordOutcome({patternId:i,success:n,metrics:{executionTimeMs:0},feedback:`Edit ${n?"succeeded":"failed"}: ${o}`})}catch{}try{await G({task:`edit: ${o}`,agent:"cli-hook",domain:c,success:n,source:"cli-hook-post-edit"})}catch{}try{let p=R(),d=Qe.join(p,".agentic-qe"),k=await O(d);await x(k)}catch{}e.json?h({success:!0,file:o,editSuccess:n,patternsLearned:l.patternsLearned||0,dreamTriggered:!1,dreamReason:"deferred-to-kernel"}):(N(`Recorded edit outcome for ${o||"(unknown file)"}`),l.patternsLearned&&console.log(P.green(` Patterns learned: ${l.patternsLearned}`)));return}catch(t){throw w(`post-edit failed: ${t instanceof Error?t.message:"unknown"}`),t}})}import{randomUUID as Je}from"crypto";U();import v from"chalk";import Ve from"node:path";function Xe(r){if(!r.trim())return"";let e;try{e=JSON.parse(r)}catch{return r.trim()}let t=[e.prompt,e.user_prompt,e.command,e.tool_input?.prompt,e.tool_input?.description,e.toolInput?.prompt,e.toolInput?.description];for(let n of t)if(typeof n=="string"&&n.trim())return n;return""}function xe(r){r.command("route").description("Route a task to the optimal QE agent").option("-t, --task <description>","Task description (falls back to stdin event JSON)").option("-d, --domain <domain>","Target QE domain hint").option("-c, --capabilities <caps...>","Required capabilities").option("--json","Output as JSON").action(async e=>{try{let t=e.task??"";if(!t.trim()){let c=await F();t=Xe(c)}if(!t.trim())throw new Error("No task provided. Pass --task <description> or pipe a Claude Code hook event JSON to stdin.");let{reasoningBank:n}=await _(),o={task:t,domain:e.domain,capabilities:e.capabilities,includePatternGuidance:!0},s=await n.routeTask(o);if(!s.success)throw new Error(s.error.message);let a=s.value;e.json?h({recommendedAgent:a.recommendedAgent,confidence:a.confidence,alternatives:a.alternatives,domains:a.domains,patternCount:a.patterns.length,patterns:a.patterns.map(c=>({id:c.id,name:c.name,description:c.description,confidence:c.confidence})),guidance:a.guidance,reasoning:a.reasoning,exploration:a.exploration??!1,criticality:a.criticality??null,qWeight:a.qWeight??null}):(console.log(v.bold(`
|
|
@@ -162,7 +162,7 @@ import{a as A,b as we,c as Se}from"./chunk-ZC3KDNJW.js";import{a as ee}from"./ch
|
|
|
162
162
|
\u{1F504} Alternatives:`)),a.alternatives.forEach(c=>{console.log(v.dim(` - ${c.agent}: ${(c.score*100).toFixed(1)}%`))})),console.log(v.bold(`
|
|
163
163
|
\u{1F4C2} Detected Domains:`),a.domains.join(", ")),console.log(v.bold(`
|
|
164
164
|
\u{1F4A1} Guidance:`)),te(a.guidance),console.log(v.bold(`
|
|
165
|
-
\u{1F4D6} Reasoning:`),v.dim(a.reasoning)));try{let{getUnifiedMemory:c}=await import("./unified-memory-
|
|
165
|
+
\u{1F4D6} Reasoning:`),v.dim(a.reasoning)));try{let{getUnifiedMemory:c}=await import("./unified-memory-GUR3IUI6.js"),i=c();i.isInitialized()||await i.initialize();let f=i.getDatabase();q(f),ee(f);let l=`route-${Date.now()}-${Je().slice(0,8)}`,p=a.confidence<.5,d=a;f.prepare(`
|
|
166
166
|
INSERT OR REPLACE INTO routing_outcomes (
|
|
167
167
|
id, task_json, decision_json, used_agent,
|
|
168
168
|
followed_recommendation, success, quality_score,
|