agentic-qe 3.15.15 → 3.15.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/skills-manifest.json +1 -1
- package/CHANGELOG.md +168 -0
- package/assets/skills/skills-manifest.json +1 -1
- package/dist/audit/witness-chain.d.ts +7 -0
- package/dist/audit/witness-chain.js +10 -0
- package/dist/cli/bundle.js +6 -6
- package/dist/cli/chunks/adapter-OMILP6KH.js +2 -0
- package/dist/cli/chunks/{agent-booster-wasm-EUF4XVUC.js → agent-booster-wasm-6BUOFQZA.js} +2 -2
- package/dist/cli/chunks/{agent-handler-MOX6PSIQ.js → agent-handler-HPDK3JI3.js} +2 -2
- package/dist/cli/chunks/{agent-memory-branch-AEXKIGDG.js → agent-memory-branch-5QKUTWK5.js} +2 -2
- package/dist/cli/chunks/aqe-learning-engine-OXH5CCOS.js +2 -0
- package/dist/cli/chunks/{arena-IQ5ZZDRF.js → arena-7OKPMNHD.js} +2 -2
- package/dist/cli/chunks/{arena-M7GA3CVG.js → arena-HZ35LESR.js} +4 -4
- package/dist/cli/chunks/{audit-4IPBMKWB.js → audit-XI575SVK.js} +3 -3
- package/dist/cli/chunks/base-MAK2BLTG.js +2 -0
- package/dist/cli/chunks/{better-sqlite3-IKDKJ2IE.js → better-sqlite3-YO5X7ZJS.js} +2 -2
- package/dist/cli/chunks/{brain-handler-5NQUDH4W.js → brain-handler-GCQZFZGQ.js} +3 -3
- package/dist/cli/chunks/{branch-enumerator-KSXELWRC.js → branch-enumerator-N6G44UU2.js} +2 -2
- package/dist/cli/chunks/{browser-6LACARWE.js → browser-EVKPTLOI.js} +2 -2
- package/dist/cli/chunks/browser-workflow-IR3VF2TL.js +2 -0
- package/dist/cli/chunks/{chunk-DKX4GNRU.js → chunk-2EQK7B5L.js} +2 -2
- package/dist/cli/chunks/chunk-2PCEMDIX.js +757 -0
- package/dist/cli/chunks/{chunk-JCQGJGGZ.js → chunk-2UUZCQSD.js} +7 -7
- package/dist/cli/chunks/chunk-2YWYW7NU.js +21 -0
- package/dist/cli/chunks/{chunk-PFQCV6YS.js → chunk-45223KK6.js} +6 -6
- package/dist/cli/chunks/chunk-4EJLHNER.js +12 -0
- package/dist/cli/chunks/{chunk-E5G4WZ2T.js → chunk-4L6WX5KC.js} +1 -1
- package/dist/cli/chunks/{chunk-UQPA33UK.js → chunk-4NKZU2JZ.js} +2 -2
- package/dist/cli/chunks/{chunk-OBDONJQM.js → chunk-4UKTIQDT.js} +2 -2
- package/dist/cli/chunks/{chunk-7BLZHFKD.js → chunk-4YM45Z5B.js} +1 -1
- package/dist/cli/chunks/{chunk-ZWBGYJ7K.js → chunk-5FSPELOG.js} +2 -2
- package/dist/cli/chunks/{chunk-NWIIYHT6.js → chunk-5WATBVU6.js} +2 -2
- package/dist/cli/chunks/{chunk-7ACCBHRB.js → chunk-5WYZVSL2.js} +1 -1
- package/dist/cli/chunks/{chunk-ZYJB6FML.js → chunk-6LSZCEW2.js} +1 -1
- package/dist/cli/chunks/{chunk-U62OUXBF.js → chunk-6V6BD6PH.js} +1 -1
- package/dist/cli/chunks/{chunk-MIA447GY.js → chunk-74MDUIAZ.js} +1 -1
- package/dist/cli/chunks/{chunk-AJPROCDW.js → chunk-776K4ZLE.js} +2 -2
- package/dist/cli/chunks/{chunk-CBK5CT6T.js → chunk-7BSOO3CY.js} +2 -2
- package/dist/cli/chunks/{chunk-ERN56H6S.js → chunk-7SNSI4VY.js} +1 -1
- package/dist/cli/chunks/{chunk-JKJOB65O.js → chunk-A4BVDYIL.js} +1 -1
- package/dist/cli/chunks/{chunk-MV55NXTD.js → chunk-AGCS5GSO.js} +2 -2
- package/dist/cli/chunks/{chunk-XIVVTYM2.js → chunk-AVHYJ3XP.js} +2 -2
- package/dist/cli/chunks/{chunk-KJBPB7P5.js → chunk-BE7ZHM34.js} +2 -2
- package/dist/cli/chunks/{chunk-GKSMRBHU.js → chunk-BHQ2DLJU.js} +1 -1
- package/dist/cli/chunks/{chunk-7XB3FCKM.js → chunk-BKHEQIRZ.js} +2 -2
- package/dist/cli/chunks/{chunk-G242G224.js → chunk-BSIWI4ES.js} +2 -2
- package/dist/cli/chunks/{chunk-NQS3BWS6.js → chunk-C7QLLMYI.js} +1 -1
- package/dist/cli/chunks/{chunk-XWIAZG3C.js → chunk-CMN7PU2H.js} +2 -2
- package/dist/cli/chunks/{chunk-4X3SWKBA.js → chunk-COTQ44YO.js} +2 -2
- package/dist/cli/chunks/{chunk-3J3RNJNX.js → chunk-CQER6IJ5.js} +1 -1
- package/dist/cli/chunks/{chunk-6KCSKGVY.js → chunk-CVPXHDQU.js} +1 -1
- package/dist/cli/chunks/{chunk-R6LHJ7ME.js → chunk-CVYPMGUM.js} +2 -2
- package/dist/cli/chunks/chunk-CXCMATZ6.js +3 -0
- package/dist/cli/chunks/{chunk-PYPS65P7.js → chunk-D75GLKEL.js} +2 -2
- package/dist/cli/chunks/chunk-DCDSN67A.js +2 -0
- package/dist/cli/chunks/{chunk-6RBTS3NF.js → chunk-DHKSPOUQ.js} +2 -2
- package/dist/cli/chunks/{chunk-JW74KRBC.js → chunk-DJDVD6RM.js} +2 -2
- package/dist/cli/chunks/{chunk-X33CWRDF.js → chunk-DNVRTJKB.js} +2 -2
- package/dist/cli/chunks/{chunk-BQ47GQPK.js → chunk-DS5IFRY6.js} +2 -2
- package/dist/cli/chunks/{chunk-AHMWD6JG.js → chunk-E7XIMOKW.js} +2 -2
- package/dist/cli/chunks/{chunk-SON6ZRH3.js → chunk-ECKHDHR2.js} +2 -2
- package/dist/cli/chunks/chunk-EPVPXHL7.js +2 -0
- package/dist/cli/chunks/{chunk-BP5T3OEV.js → chunk-ERYADKMZ.js} +4 -4
- package/dist/cli/chunks/{chunk-DUKE27HC.js → chunk-EUWG2JG4.js} +2 -2
- package/dist/cli/chunks/chunk-FAQ24UHB.js +29 -0
- package/dist/cli/chunks/{chunk-XG4F4XH4.js → chunk-FBBPRVNF.js} +2 -2
- package/dist/cli/chunks/{chunk-5PTAFGJT.js → chunk-FBSBXCZS.js} +2 -2
- package/dist/cli/chunks/chunk-G2X3OLMN.js +153 -0
- package/dist/cli/chunks/{chunk-IXL5ZHWJ.js → chunk-GG7PMTHD.js} +1 -1
- package/dist/cli/chunks/{chunk-6BRQPHMZ.js → chunk-GN6OE3JT.js} +1 -1
- package/dist/cli/chunks/{chunk-SZAZQZWI.js → chunk-GPPTRKEM.js} +2 -2
- package/dist/cli/chunks/{chunk-LTQVUAPH.js → chunk-H2LHWZRE.js} +2 -2
- package/dist/cli/chunks/{chunk-WVXJ2QIG.js → chunk-HAQJFUAQ.js} +2 -2
- package/dist/cli/chunks/{chunk-C5CXL3JP.js → chunk-HD6W6PHV.js} +2 -2
- package/dist/cli/chunks/{chunk-K3WZICFA.js → chunk-HFZD5KLR.js} +1 -1
- package/dist/cli/chunks/{chunk-VCXI4XC4.js → chunk-HRUHHHVR.js} +2 -2
- package/dist/cli/chunks/{chunk-GV2QE5TO.js → chunk-HVT7RMGV.js} +1 -1
- package/dist/cli/chunks/chunk-HWQPMUSN.js +2 -0
- package/dist/cli/chunks/{chunk-4ATQP3PR.js → chunk-HZ5O7G2P.js} +1 -1
- package/dist/cli/chunks/{chunk-XHHWABJV.js → chunk-IHQGNDMX.js} +2 -2
- package/dist/cli/chunks/{chunk-UUBIQR6A.js → chunk-IJSROBM6.js} +18 -18
- package/dist/cli/chunks/{chunk-PS6UMZVK.js → chunk-IJZFJPHS.js} +2 -2
- package/dist/cli/chunks/{chunk-C4KLXFJP.js → chunk-IKB3M7OF.js} +1 -1
- package/dist/cli/chunks/{chunk-SJCKCSN3.js → chunk-INI3Q4CN.js} +1 -1
- package/dist/cli/chunks/{chunk-LYJHUNBK.js → chunk-IOWEBPXJ.js} +2 -2
- package/dist/cli/chunks/{chunk-HTZSRMHW.js → chunk-IQL6XRF5.js} +2 -2
- package/dist/cli/chunks/{chunk-DEKR3CTS.js → chunk-IRHXGCQR.js} +2 -2
- package/dist/cli/chunks/{chunk-TODNOP7C.js → chunk-J3QFJI2Y.js} +6 -6
- package/dist/cli/chunks/{chunk-OLZH5LRT.js → chunk-J6QRNQJF.js} +11 -11
- package/dist/cli/chunks/{chunk-HL2ANKN3.js → chunk-J7Q5TXFZ.js} +2 -2
- package/dist/cli/chunks/{chunk-6YVMX2TC.js → chunk-JHKKIJT2.js} +2 -2
- package/dist/cli/chunks/{chunk-K3XBQC3R.js → chunk-JI33PMPZ.js} +1 -1
- package/dist/cli/chunks/{chunk-74YG72NQ.js → chunk-JRIJM4LE.js} +3 -3
- package/dist/cli/chunks/{chunk-TDQWTSBS.js → chunk-JVWZAE2H.js} +2 -2
- package/dist/cli/chunks/{chunk-RDMRY7CT.js → chunk-K7WAI662.js} +1 -1
- package/dist/cli/chunks/{chunk-C4RTAVC6.js → chunk-KB34MTFZ.js} +2 -2
- package/dist/cli/chunks/{chunk-2CKERSMB.js → chunk-KPIPVSIP.js} +2 -2
- package/dist/cli/chunks/{chunk-LNX74WHQ.js → chunk-KR2TAAF6.js} +1 -1
- package/dist/cli/chunks/{chunk-73PBAWAF.js → chunk-KT2QCXO6.js} +2 -2
- package/dist/cli/chunks/{chunk-BBRROA3Z.js → chunk-KTORRIX3.js} +2 -2
- package/dist/cli/chunks/{chunk-GCHYOPRZ.js → chunk-LCWEQRZI.js} +2 -2
- package/dist/cli/chunks/{chunk-M4WMSCAE.js → chunk-LG5PPJT7.js} +1 -1
- package/dist/cli/chunks/{chunk-UAQZI6N4.js → chunk-LIF6UWHV.js} +2 -2
- package/dist/cli/chunks/chunk-LN7NKE3N.js +27 -0
- package/dist/cli/chunks/chunk-LOLSZG5J.js +2 -0
- package/dist/cli/chunks/{chunk-BLL2XU7A.js → chunk-LOMT4UC2.js} +2 -2
- package/dist/cli/chunks/chunk-LRKLATSH.js +2 -0
- package/dist/cli/chunks/{chunk-EKP2SC77.js → chunk-LRY6UIRI.js} +2 -2
- package/dist/cli/chunks/{chunk-JCZCJE6X.js → chunk-LV7UIK4Q.js} +2 -2
- package/dist/cli/chunks/{chunk-LVABQNRF.js → chunk-M2YI5YUR.js} +2 -2
- package/dist/cli/chunks/{chunk-RIRZHOS2.js → chunk-MCXW3DKE.js} +2 -2
- package/dist/cli/chunks/{chunk-ZSOMUTNL.js → chunk-MGZ6XZHU.js} +1 -1
- package/dist/cli/chunks/{chunk-H5DER3JY.js → chunk-MLMD3I75.js} +1 -1
- package/dist/cli/chunks/{chunk-UXIY4IAI.js → chunk-MVVVGQJ6.js} +2 -2
- package/dist/cli/chunks/{chunk-WUOOX7UG.js → chunk-ND72UDVH.js} +2 -2
- package/dist/cli/chunks/{chunk-AKZO6GGG.js → chunk-NE3LRUNC.js} +4 -4
- package/dist/cli/chunks/{chunk-O6EWL5DQ.js → chunk-NKUHMA4T.js} +2 -2
- package/dist/cli/chunks/{chunk-L32JNNKL.js → chunk-NQFDJ6BT.js} +1 -1
- package/dist/cli/chunks/{chunk-T66PPF4D.js → chunk-NZJVDOUN.js} +31 -31
- package/dist/cli/chunks/{chunk-EBTNMQSS.js → chunk-O7VJ3VKD.js} +2 -2
- package/dist/cli/chunks/{chunk-76P32JVU.js → chunk-OJIUIEI4.js} +1 -1
- package/dist/cli/chunks/chunk-OO2M2QUV.js +12 -0
- package/dist/cli/chunks/{chunk-CAOUV5GZ.js → chunk-ORQ2YBRR.js} +2 -2
- package/dist/cli/chunks/chunk-OWIQR6N2.js +4 -0
- package/dist/cli/chunks/chunk-OWIZBZLN.js +14 -0
- package/dist/cli/chunks/{chunk-J3FP5UGL.js → chunk-P3D7SEHW.js} +1 -1
- package/dist/cli/chunks/{chunk-3CYNZFKH.js → chunk-P4OB6WDJ.js} +1 -1
- package/dist/cli/chunks/{chunk-LHMQIZ6B.js → chunk-PCL5JRKN.js} +2 -2
- package/dist/cli/chunks/{chunk-KLTMOXIK.js → chunk-PIWGKGWP.js} +2 -2
- package/dist/cli/chunks/{chunk-VMAM46HQ.js → chunk-PK34KJH7.js} +2 -2
- package/dist/cli/chunks/chunk-POPSZDI2.js +65 -0
- package/dist/cli/chunks/{chunk-JUDUBQHA.js → chunk-Q6F3DYZN.js} +2 -2
- package/dist/cli/chunks/{chunk-Y2OX6KGN.js → chunk-QJSSUBO3.js} +2 -2
- package/dist/cli/chunks/{chunk-XM6ZVFM5.js → chunk-QN7HP2UW.js} +235 -173
- package/dist/cli/chunks/{chunk-T4GE7MPI.js → chunk-QSQNXBD2.js} +2 -2
- package/dist/cli/chunks/{chunk-5C62XMJR.js → chunk-QTQDX4TZ.js} +33 -33
- package/dist/cli/chunks/{chunk-DURD37JZ.js → chunk-R3KBOQ3O.js} +2 -2
- package/dist/cli/chunks/{chunk-LJMYRTJ7.js → chunk-REY52O7J.js} +1 -1
- package/dist/cli/chunks/{chunk-W5ZJG2OU.js → chunk-RKCN4B26.js} +2 -2
- package/dist/cli/chunks/chunk-S3DT5TPR.js +14 -0
- package/dist/cli/chunks/{chunk-4HKAD25N.js → chunk-S3TBOKAZ.js} +22 -22
- package/dist/cli/chunks/{chunk-2IIXCEMS.js → chunk-SAEECT23.js} +2 -2
- package/dist/cli/chunks/{chunk-LB2LGEDP.js → chunk-SAZ4PJBR.js} +2 -2
- package/dist/cli/chunks/{chunk-FOOW4JVS.js → chunk-SFITYZLV.js} +2 -2
- package/dist/cli/chunks/{chunk-2ZFLULL4.js → chunk-SRBCBVSI.js} +2 -2
- package/dist/cli/chunks/chunk-SUAZ5Z47.js +63 -0
- package/dist/cli/chunks/{chunk-RBKUU7WF.js → chunk-TDZ6N43D.js} +2 -2
- package/dist/cli/chunks/chunk-TIVKDIF7.js +2 -0
- package/dist/cli/chunks/{chunk-MPFPWJTH.js → chunk-TM75GAXG.js} +2 -2
- package/dist/cli/chunks/{chunk-UJABDXST.js → chunk-TWBZONKT.js} +2 -2
- package/dist/cli/chunks/{chunk-AOKKUB5F.js → chunk-U4S74IIZ.js} +1 -1
- package/dist/cli/chunks/{chunk-W62OOK7A.js → chunk-U5SMBJ6F.js} +2 -2
- package/dist/cli/chunks/{chunk-6LE362LZ.js → chunk-UHJVZEQA.js} +2 -2
- package/dist/cli/chunks/{chunk-T67R2MUN.js → chunk-UOVCTK5L.js} +2 -2
- package/dist/cli/chunks/{chunk-FTRSS64D.js → chunk-VDEKVIP5.js} +2 -2
- package/dist/cli/chunks/{chunk-BDKEAGQ2.js → chunk-VITV7AEC.js} +2 -2
- package/dist/cli/chunks/{chunk-BU4UQR36.js → chunk-VKREKVFI.js} +2 -2
- package/dist/cli/chunks/{chunk-BZULJMGH.js → chunk-VLTDW7XJ.js} +2 -2
- package/dist/cli/chunks/{chunk-UE2J6MA5.js → chunk-VQFV2IPV.js} +1 -1
- package/dist/cli/chunks/{chunk-TZIHDJZD.js → chunk-VYPVU3JF.js} +2 -2
- package/dist/cli/chunks/{chunk-UORB2QDU.js → chunk-WAOEQA3W.js} +2 -2
- package/dist/cli/chunks/{chunk-GQABPCQE.js → chunk-WBDWHHKP.js} +2 -2
- package/dist/cli/chunks/{chunk-GGQGCT4Y.js → chunk-WX4PO65Q.js} +2 -2
- package/dist/cli/chunks/chunk-X2DWHGCC.js +6 -0
- package/dist/cli/chunks/{chunk-337Z52QM.js → chunk-X5QD76IU.js} +2 -2
- package/dist/cli/chunks/{chunk-E56PVVWC.js → chunk-XBTGEYED.js} +2 -2
- package/dist/cli/chunks/{chunk-5AFVEWMT.js → chunk-XEMCHGAJ.js} +2 -2
- package/dist/cli/chunks/{chunk-E3MRDIZF.js → chunk-XEYFZLIT.js} +1 -1
- package/dist/cli/chunks/{chunk-KCQNFBBR.js → chunk-XFTX3KLE.js} +1 -1
- package/dist/cli/chunks/{chunk-QFGYH6HD.js → chunk-XPTCQKVE.js} +1 -1
- package/dist/cli/chunks/{chunk-PXATBHWN.js → chunk-YAJOBZE5.js} +2 -2
- package/dist/cli/chunks/{chunk-27HE2BHC.js → chunk-YCVLKU6H.js} +2 -2
- package/dist/cli/chunks/{chunk-ZIPAB5J6.js → chunk-YD2C6EPN.js} +2 -2
- package/dist/cli/chunks/{chunk-5G4UFTV4.js → chunk-YKRLUTK7.js} +2 -2
- package/dist/cli/chunks/{chunk-YUS6TWAL.js → chunk-YMUY3TES.js} +6 -6
- package/dist/cli/chunks/chunk-YR5QBUHZ.js +6 -0
- package/dist/cli/chunks/{chunk-XH4JMX5O.js → chunk-Z7SKUC6P.js} +1 -1
- package/dist/cli/chunks/{chunk-EFUJDMNC.js → chunk-ZAQMRFBB.js} +2 -2
- package/dist/cli/chunks/{chunk-22UKJGGN.js → chunk-ZC3KDNJW.js} +3 -3
- package/dist/cli/chunks/{chunk-AP2W7Z3A.js → chunk-ZGV7L4MW.js} +1 -1
- package/dist/cli/chunks/{chunk-W27AJ5B4.js → chunk-ZN35XSKF.js} +2 -2
- package/dist/cli/chunks/{chunk-M4CJCPCQ.js → chunk-ZNXM6WVL.js} +2 -2
- package/dist/cli/chunks/{chunk-5I7357KS.js → chunk-ZP5AWQRO.js} +2 -2
- package/dist/cli/chunks/{chunk-OQG3UQQ7.js → chunk-ZTP3DQ5M.js} +1 -1
- package/dist/cli/chunks/{chunk-BFQTLF5X.js → chunk-ZVMSSCTH.js} +2 -2
- package/dist/cli/chunks/chunk-ZWUF27P4.js +2 -0
- package/dist/cli/chunks/{ci-UCUJOSBW.js → ci-3RTTTS2D.js} +2 -2
- package/dist/cli/chunks/{ci-config-2XILD3XG.js → ci-config-XRUR3I4K.js} +2 -2
- package/dist/cli/chunks/{ci-output-BL6KWOHW.js → ci-output-E5IAMU2U.js} +2 -2
- package/dist/cli/chunks/{circuit-breaker-5XLIOXE5.js → circuit-breaker-SHR2P44P.js} +2 -2
- package/dist/cli/chunks/{claude-flow-setup-4IMP6ACS.js → claude-flow-setup-ZDDILFMF.js} +2 -2
- package/dist/cli/chunks/client-NO5FOWT4.js +2 -0
- package/dist/cli/chunks/{cline-installer-RYLHCDK7.js → cline-installer-BGYVUM6G.js} +2 -2
- package/dist/cli/chunks/{code-WY3GJXHX.js → code-PJ4MC3MC.js} +4 -3
- package/dist/cli/chunks/{code-index-extractor-Y4MZBZCW.js → code-index-extractor-IW2P22YG.js} +2 -2
- package/dist/cli/chunks/{codex-installer-SCJ3T3DX.js → codex-installer-A7WZ6OGL.js} +2 -2
- package/dist/cli/chunks/{completions-CN2DXQFU.js → completions-KS23WD5J.js} +2 -2
- package/dist/cli/chunks/{complexity-analyzer-7MDPPIBH.js → complexity-analyzer-Q7GLSR2E.js} +2 -2
- package/dist/cli/chunks/{continuedev-installer-GCEJRK34.js → continuedev-installer-SK55BFW2.js} +2 -2
- package/dist/cli/chunks/copilot-installer-3N5J3WTM.js +3 -0
- package/dist/cli/chunks/core-handlers-JNAZPXE2.js +2 -0
- package/dist/cli/chunks/{cost-tracker-VO5MFWR6.js → cost-tracker-NENVSO4A.js} +2 -2
- package/dist/cli/chunks/{coverage-LYFQYNH6.js → coverage-5L7UQWDH.js} +3 -3
- package/dist/cli/chunks/cross-domain-router-HEBM767Z.js +2 -0
- package/dist/cli/chunks/{cursor-installer-KP4HA7TV.js → cursor-installer-XXBO2ZE6.js} +2 -2
- package/dist/cli/chunks/{daemon-7RC7TS57.js → daemon-CDCQU3LR.js} +3 -3
- package/dist/cli/chunks/daemon-JEBJGEUK.js +18 -0
- package/dist/cli/chunks/{dag-attention-scheduler-NKA44RSR.js → dag-attention-scheduler-HOMMF7FA.js} +2 -2
- package/dist/cli/chunks/{detect-CMYAJWYF.js → detect-FXCOUG6X.js} +2 -2
- package/dist/cli/chunks/{dist-node-EN3PYEGW.js → dist-node-GXQ7FMTY.js} +2 -2
- package/dist/cli/chunks/{domain-handler-EXSZCX7A.js → domain-handler-TI3JBAPC.js} +2 -2
- package/dist/cli/chunks/{domain-plugins-HCQFSNL7.js → domain-plugins-R7LTUM32.js} +2 -2
- package/dist/cli/chunks/{domain-transfer-3LGSNTPO.js → domain-transfer-LBIAFHIQ.js} +2 -2
- package/dist/cli/chunks/dream-GQDCEJMS.js +2 -0
- package/dist/cli/chunks/embed-and-insert-pattern-33KLHDD5.js +3 -0
- package/dist/cli/chunks/embedding-space-HHLWTBF5.js +2 -0
- package/dist/cli/chunks/{eval-OQELIWJK.js → eval-KDOZMAXJ.js} +2 -2
- package/dist/cli/chunks/experience-capture-middleware-X45PECQN.js +40 -0
- package/dist/cli/chunks/{fast-paths-UV4NDEWM.js → fast-paths-462V6UUB.js} +2 -2
- package/dist/cli/chunks/{feature-flags-H7H33B6C.js → feature-flags-G66OT3AS.js} +2 -2
- package/dist/cli/chunks/{feature-flags-CKTYX67J.js → feature-flags-NIRQ4YDM.js} +2 -2
- package/dist/cli/chunks/file-discovery-33USPLB5.js +2 -0
- package/dist/cli/chunks/{fleet-ZJBCAKRG.js → fleet-PXWGB7CU.js} +3 -3
- package/dist/cli/chunks/{gnn-wrapper-RUE2QZRG.js → gnn-wrapper-7MUW3M5M.js} +2 -2
- package/dist/cli/chunks/{heartbeat-handler-XRV327M7.js → heartbeat-handler-5237PB35.js} +4 -4
- package/dist/cli/chunks/heartbeat-scheduler-LIXLC5IH.js +2 -0
- package/dist/cli/chunks/hnsw-adapter-62D5UH27.js +2 -0
- package/dist/cli/chunks/hnsw-index-GSGUMQQC.js +2 -0
- package/dist/cli/chunks/{hnsw-legacy-bridge-UJID6ZZ4.js → hnsw-legacy-bridge-OSQPW7JP.js} +2 -2
- package/dist/cli/chunks/{hnswlib-node-WS43R4AX.js → hnswlib-node-GX6WG2GB.js} +2 -2
- package/dist/cli/chunks/{hooks-YZNJKXAJ.js → hooks-GUWHL7VC.js} +23 -22
- package/dist/cli/chunks/hybrid-backend-FRWP4BOY.js +2 -0
- package/dist/cli/chunks/{hypergraph-engine-XQJSIMTS.js → hypergraph-engine-SRWLLCU3.js} +2 -2
- package/dist/cli/chunks/{hypergraph-handler-ZD2NYXMR.js → hypergraph-handler-AVOPRHHO.js} +3 -3
- package/dist/cli/chunks/impact-analyzer-7KF3AQXV.js +2 -0
- package/dist/cli/chunks/{init-guard-DSRUAVRT.js → init-guard-P4N6EVZS.js} +2 -2
- package/dist/cli/chunks/{init-handler-RJU5QMAP.js → init-handler-LRGWOJMD.js} +6 -6
- package/dist/cli/chunks/init-wizard-XWWAXY25.js +2 -0
- package/dist/cli/chunks/kernel-ZEJPNDBW.js +2 -0
- package/dist/cli/chunks/{kilocode-installer-BCPOCVMC.js → kilocode-installer-7R2EPOQ6.js} +2 -2
- package/dist/cli/chunks/{kiro-installer-GFCWCB2S.js → kiro-installer-QNM7DPOB.js} +2 -2
- package/dist/cli/chunks/knowledge-graph-RRZQS7KY.js +2 -0
- package/dist/cli/chunks/{learning-FZTD72CF.js → learning-7OIZBPXZ.js} +3 -3
- package/dist/cli/chunks/{llm-router-GJVKGRJL.js → llm-router-SIDXES23.js} +4 -4
- package/dist/cli/chunks/llm-router-service-3OSW67LC.js +2 -0
- package/dist/cli/chunks/{load-YKTPOYBE.js → load-EI2E2C3S.js} +2 -2
- package/dist/cli/chunks/load-test-7TRIH2WJ.js +2 -0
- package/dist/cli/chunks/{mcp-LT6R2IKS.js → mcp-IOE5WOCS.js} +2 -2
- package/dist/cli/chunks/{memory-4HKKOLRY.js → memory-DLYGJAP7.js} +5 -5
- package/dist/cli/chunks/memory-backend-G7ZW6Q2B.js +2 -0
- package/dist/cli/chunks/memory-handlers-TPF3KCO5.js +2 -0
- package/dist/cli/chunks/{multi-model-executor-2YPM2WTK.js → multi-model-executor-WHH4YCHM.js} +2 -2
- package/dist/cli/chunks/{opencode-installer-WBAJMH5K.js → opencode-installer-63FDZAMS.js} +2 -2
- package/dist/cli/chunks/{orchestrator-5W5WVMVJ.js → orchestrator-3LA776KK.js} +5 -5
- package/dist/cli/chunks/pattern-null-store-OU3ZC3NR.js +2 -0
- package/dist/cli/chunks/{pattern-usage-recorder-GXRMNPAZ.js → pattern-usage-recorder-NW54QUGI.js} +2 -2
- package/dist/cli/chunks/{pipeline-2NA4DRDA.js → pipeline-P3TYX6J6.js} +2 -2
- package/dist/cli/chunks/{platform-BGERNQ5V.js → platform-FNA2WLI6.js} +2 -2
- package/dist/cli/chunks/{plugin-L4EPVENR.js → plugin-NJS7BC2S.js} +2 -2
- package/dist/cli/chunks/{prime-radiant-advanced-wasm-RTQRTPTM.js → prime-radiant-advanced-wasm-NIAVL2OT.js} +2 -2
- package/dist/cli/chunks/project-root-GMOFJEKD.js +2 -0
- package/dist/cli/chunks/protocol-executor-AD345XRO.js +2 -0
- package/dist/cli/chunks/{protocol-handler-SYQXM6JK.js → protocol-handler-JU5C4JHY.js} +2 -2
- package/dist/cli/chunks/{prove-5O7GPJCU.js → prove-35VOSLYP.js} +2 -2
- package/dist/cli/chunks/qe-reasoning-bank-NLTP26RC.js +2 -0
- package/dist/cli/chunks/{quality-KIIDHGNF.js → quality-ET74X7HN.js} +2 -2
- package/dist/cli/chunks/{quality-gate-H65VECD3.js → quality-gate-FEDQISNB.js} +3 -3
- package/dist/cli/chunks/queen-coordinator-2TB4FWS6.js +2 -0
- package/dist/cli/chunks/real-embeddings-II6CXTCI.js +2 -0
- package/dist/cli/chunks/{ref-validation-CSBJOMZM.js → ref-validation-DTBPYCEB.js} +2 -2
- package/dist/cli/chunks/{roocode-installer-G7OVYXEN.js → roocode-installer-LYQEMR4J.js} +2 -2
- package/dist/cli/chunks/router-PLM3MWME.js +2 -0
- package/dist/cli/chunks/routing-feedback-I7VOX2HU.js +2 -0
- package/dist/cli/chunks/{routing-handler-ZNZPPI5Y.js → routing-handler-DJOJFPII.js} +2 -2
- package/dist/cli/chunks/{ruvector-commands-C6IG3OY3.js → ruvector-commands-VXYGJDPW.js} +2 -2
- package/dist/cli/chunks/rvf-dual-writer-GQZHFWO2.js +2 -0
- package/dist/cli/chunks/rvf-migration-adapter-3TVKBCAM.js +2 -0
- package/dist/cli/chunks/rvf-migration-coordinator-XUHKLMT6.js +2 -0
- package/dist/cli/chunks/rvf-native-adapter-5GUTYOWS.js +2 -0
- package/dist/cli/chunks/{rvf-store-integrity-3G6LFLT3.js → rvf-store-integrity-GA2ZYOEG.js} +2 -2
- package/dist/cli/chunks/safe-db-RZPQGLGQ.js +2 -0
- package/dist/cli/chunks/schedule-G7JMQDUX.js +2 -0
- package/dist/cli/chunks/scheduler-4SEGPCKD.js +2 -0
- package/dist/cli/chunks/{security-A3IMVLFM.js → security-MM6YOECX.js} +3 -3
- package/dist/cli/chunks/{shared-rvf-adapter-VHWQ6US5.js → shared-rvf-adapter-6AHPA3V5.js} +2 -2
- package/dist/cli/chunks/{shared-rvf-dual-writer-JB3QS7IG.js → shared-rvf-dual-writer-EYAVY2GZ.js} +2 -2
- package/dist/cli/chunks/sqlite-persistence-IVE4SQXR.js +2 -0
- package/dist/cli/chunks/{standalone-memory-DDNXCSBD.js → standalone-memory-A3PLB4CZ.js} +2 -2
- package/dist/cli/chunks/{status-handler-2HK7XPEK.js → status-handler-OSSFAP4Z.js} +2 -2
- package/dist/cli/chunks/{structural-health-DSJVLEPV.js → structural-health-PGY5XUNO.js} +2 -2
- package/dist/cli/chunks/{sync-NTUR53PI.js → sync-CWEHYGNN.js} +2 -2
- package/dist/cli/chunks/sync-PM6D7EQF.js +2 -0
- package/dist/cli/chunks/task-handler-LHMQ75W4.js +64 -0
- package/dist/cli/chunks/{task-handlers-VJR6EHRZ.js → task-handlers-S2TX5FTR.js} +4 -4
- package/dist/cli/chunks/test-4EGZZ6NJ.js +34 -0
- package/dist/cli/chunks/test-runner-process-72YACW6M.js +2 -0
- package/dist/cli/chunks/{test-scheduling-Q6QEEOS6.js → test-scheduling-YJQHH3XE.js} +3 -3
- package/dist/cli/chunks/token-bootstrap-DJNETMVW.js +2 -0
- package/dist/cli/chunks/{token-usage-YEEFWSSI.js → token-usage-WPNOJR6H.js} +2 -2
- package/dist/cli/chunks/{transformers-BZCHJJJT.js → transformers-4MRPXCPU.js} +2 -2
- package/dist/cli/chunks/tree-sitter-wasm-parser-UVWSDXFR.js +2 -0
- package/dist/cli/chunks/{types-4AOKZYOX.js → types-6P5FB4EB.js} +2 -2
- package/dist/cli/chunks/unified-memory-2VMGSGQL.js +2 -0
- package/dist/cli/chunks/unified-memory-hnsw-3KULVD3N.js +2 -0
- package/dist/cli/chunks/unified-persistence-QCSLU2SV.js +2 -0
- package/dist/cli/chunks/{upgrade-2MWW6BT2.js → upgrade-4ICTN63Y.js} +2 -2
- package/dist/cli/chunks/{validate-PAEV3GT5.js → validate-HQF5GZ7L.js} +2 -2
- package/dist/cli/chunks/{validate-swarm-ZIXACK5K.js → validate-swarm-45JYG7VW.js} +2 -2
- package/dist/cli/chunks/visual-security-ZYP2KPH7.js +2 -0
- package/dist/cli/chunks/{web-tree-sitter-VLTXZFAB.js → web-tree-sitter-UOTWZLNH.js} +2 -2
- package/dist/cli/chunks/{windsurf-installer-VELMLOZF.js → windsurf-installer-WDWSBXGN.js} +2 -2
- package/dist/cli/chunks/witness-chain-5QRT7EMX.js +2 -0
- package/dist/cli/chunks/witness-chain-DOYMNPC7.js +2 -0
- package/dist/cli/chunks/witness-chain-repair-CUF2AFQB.js +2 -0
- package/dist/cli/chunks/{witness-chain-verifier-MIDWD4JS.js → witness-chain-verifier-JB42X62J.js} +2 -2
- package/dist/cli/chunks/{witness-key-manager-OSVCWOB2.js → witness-key-manager-LXXO6L2G.js} +2 -2
- package/dist/cli/chunks/{workflow-MK7A7QCX.js → workflow-6ARK47NF.js} +4 -4
- package/dist/cli/chunks/workflow-orchestrator-RYDDWIXN.js +2 -0
- package/dist/cli/chunks/wrappers-CYQBOMPL.js +2 -0
- package/dist/cli/commands/code.js +4 -0
- package/dist/cli/commands/hooks-handlers/hooks-dream-learning.js +10 -2
- package/dist/cli/commands/test.js +26 -4
- package/dist/cli/handlers/task-handler.d.ts +5 -0
- package/dist/cli/handlers/task-handler.js +21 -1
- package/dist/cli/utils/task-result.d.ts +11 -0
- package/dist/cli/utils/task-result.js +39 -0
- package/dist/coordination/handlers/test-execution-handlers.js +137 -59
- package/dist/coordination/mincut/mincut-persistence.js +29 -25
- package/dist/domains/code-intelligence/coordinator.d.ts +4 -0
- package/dist/domains/code-intelligence/coordinator.js +46 -13
- package/dist/domains/code-intelligence/interfaces.d.ts +10 -1
- package/dist/domains/code-intelligence/services/semantic-analyzer.d.ts +37 -7
- package/dist/domains/code-intelligence/services/semantic-analyzer.js +135 -62
- package/dist/domains/code-intelligence/services/text-relevance.d.ts +32 -0
- package/dist/domains/code-intelligence/services/text-relevance.js +63 -0
- package/dist/domains/learning-optimization/services/learning-coordinator.js +1 -1
- package/dist/domains/quality-assessment/coordinator.js +2 -1
- package/dist/domains/test-execution/coordinator.d.ts +3 -1
- package/dist/domains/test-execution/coordinator.js +21 -7
- package/dist/domains/test-execution/interfaces.d.ts +17 -0
- package/dist/domains/test-execution/plugin.js +8 -2
- package/dist/domains/test-execution/services/flaky-detector.d.ts +9 -1
- package/dist/domains/test-execution/services/flaky-detector.js +26 -8
- package/dist/domains/test-execution/services/retry-handler.d.ts +9 -1
- package/dist/domains/test-execution/services/retry-handler.js +56 -12
- package/dist/domains/test-execution/services/runner-test-cases.d.ts +2 -0
- package/dist/domains/test-execution/services/runner-test-cases.js +7 -3
- package/dist/domains/test-execution/services/test-executor.d.ts +6 -1
- package/dist/domains/test-execution/services/test-executor.js +97 -14
- package/dist/domains/visual-accessibility/coordinator.d.ts +15 -7
- package/dist/domains/visual-accessibility/coordinator.js +15 -7
- package/dist/domains/visual-accessibility/interfaces.d.ts +27 -3
- package/dist/domains/visual-accessibility/services/accessibility-contrast.d.ts +39 -0
- package/dist/domains/visual-accessibility/services/accessibility-contrast.js +93 -0
- package/dist/domains/visual-accessibility/services/accessibility-tester-browser.d.ts +18 -3
- package/dist/domains/visual-accessibility/services/accessibility-tester-browser.js +50 -40
- package/dist/domains/visual-accessibility/services/accessibility-tester-checks.d.ts +27 -0
- package/dist/domains/visual-accessibility/services/accessibility-tester-checks.js +137 -0
- package/dist/domains/visual-accessibility/services/accessibility-tester.d.ts +5 -0
- package/dist/domains/visual-accessibility/services/accessibility-tester.js +43 -24
- package/dist/domains/visual-accessibility/services/browser-swarm-coordinator.d.ts +2 -3
- package/dist/domains/visual-accessibility/services/browser-swarm-coordinator.js +8 -14
- package/dist/feedback/coverage-learner.js +13 -9
- package/dist/feedback/test-outcome-tracker.js +13 -9
- package/dist/governance/witness-chain.d.ts +5 -0
- package/dist/governance/witness-chain.js +22 -6
- package/dist/init/copilot-installer.d.ts +6 -0
- package/dist/init/copilot-installer.js +37 -17
- package/dist/init/platform-config-generator.d.ts +10 -0
- package/dist/init/platform-config-generator.js +26 -1
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts +22 -0
- package/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js +115 -45
- package/dist/integrations/agentic-flow/reasoning-bank/pattern-evolution.d.ts +6 -0
- package/dist/integrations/agentic-flow/reasoning-bank/pattern-evolution.js +51 -33
- package/dist/integrations/agentic-flow/reasoning-bank/trajectory-tracker.js +17 -9
- package/dist/integrations/embeddings/cache/EmbeddingCache.d.ts +8 -0
- package/dist/integrations/embeddings/cache/EmbeddingCache.js +24 -10
- package/dist/integrations/ruvector/delta-tracker.d.ts +11 -0
- package/dist/integrations/ruvector/delta-tracker.js +16 -0
- package/dist/integrations/ruvector/sona-persistence.d.ts +10 -0
- package/dist/integrations/ruvector/sona-persistence.js +49 -24
- package/dist/kernel/unified-memory.d.ts +32 -0
- package/dist/kernel/unified-memory.js +76 -8
- package/dist/learning/aqe-learning-engine.js +1 -1
- package/dist/learning/embed-and-insert-pattern.js +4 -2
- package/dist/learning/embedder-endpoint-client.d.ts +76 -0
- package/dist/learning/embedder-endpoint-client.js +201 -13
- package/dist/learning/embedding-space-registry.d.ts +75 -0
- package/dist/learning/embedding-space-registry.js +142 -0
- package/dist/learning/embedding-space.d.ts +12 -0
- package/dist/learning/embedding-space.js +17 -0
- package/dist/learning/experience-capture-middleware.js +25 -13
- package/dist/learning/experience-capture.js +1 -1
- package/dist/learning/experience-consolidation.d.ts +18 -0
- package/dist/learning/experience-consolidation.js +55 -8
- package/dist/learning/experience-space-verification.d.ts +71 -0
- package/dist/learning/experience-space-verification.js +147 -0
- package/dist/learning/pattern-lifecycle.d.ts +40 -4
- package/dist/learning/pattern-lifecycle.js +153 -76
- package/dist/learning/pattern-null-store.d.ts +5 -0
- package/dist/learning/pattern-null-store.js +8 -0
- package/dist/learning/pattern-promotion.js +6 -3
- package/dist/learning/pattern-store.d.ts +6 -0
- package/dist/learning/pattern-store.js +19 -6
- package/dist/learning/qe-reasoning-bank.js +2 -2
- package/dist/learning/real-embeddings.d.ts +3 -0
- package/dist/learning/real-embeddings.js +52 -12
- package/dist/learning/real-qe-reasoning-bank.d.ts +5 -0
- package/dist/learning/real-qe-reasoning-bank.js +77 -47
- package/dist/learning/rvf-pattern-store.js +6 -2
- package/dist/learning/sqlite-persistence.d.ts +6 -0
- package/dist/learning/sqlite-persistence.js +10 -0
- package/dist/mcp/bundle.js +699 -619
- package/dist/mcp/entry.js +4 -0
- package/dist/mcp/handlers/domain-handler-configs.js +2 -0
- package/dist/mcp/handlers/trajectory-judge.js +1 -1
- package/dist/mcp/protocol-server.js +1 -0
- package/dist/mcp/tools/visual-accessibility/index.js +8 -2
- package/dist/mcp/types.d.ts +6 -0
- package/dist/optimization/session-cache.d.ts +17 -1
- package/dist/optimization/session-cache.js +40 -36
- package/dist/planning/goap-planner.d.ts +6 -0
- package/dist/planning/goap-planner.js +35 -19
- package/dist/planning/plan-executor.js +24 -15
- package/dist/routing/co-execution-repository.js +12 -9
- package/dist/routing/routing-feedback.d.ts +8 -0
- package/dist/routing/routing-feedback.js +46 -24
- package/dist/routing/routing-outcomes-migration.js +7 -2
- package/dist/shared/embeddings/index.d.ts +2 -2
- package/dist/shared/embeddings/index.js +1 -1
- package/dist/shared/embeddings/nomic-embedder.d.ts +8 -2
- package/dist/shared/embeddings/nomic-embedder.js +19 -11
- package/dist/shared/embeddings/ollama-client.d.ts +28 -2
- package/dist/shared/embeddings/ollama-client.js +84 -22
- package/dist/shared/embeddings/types.d.ts +15 -0
- package/dist/shared/embeddings/types.js +4 -0
- package/dist/shared/llm/spend-ledger.d.ts +9 -0
- package/dist/shared/llm/spend-ledger.js +64 -39
- package/dist/shared/pytest-junit-report.d.ts +93 -0
- package/dist/shared/pytest-junit-report.js +241 -0
- package/dist/shared/sqlite-lock-wait.d.ts +27 -0
- package/dist/shared/sqlite-lock-wait.js +37 -0
- package/dist/shared/sqlite-write-queue.d.ts +28 -0
- package/dist/shared/sqlite-write-queue.js +38 -0
- package/dist/shared/test-runner-project.d.ts +119 -0
- package/dist/shared/test-runner-project.js +301 -0
- package/dist/skills/security-visual-testing/index.d.ts +3 -1
- package/dist/skills/security-visual-testing/index.js +49 -35
- package/dist/skills/security-visual-testing/types.d.ts +19 -3
- package/dist/workers/workers/heartbeat-scheduler.js +5 -5
- package/dist/workers/workers/learning-consolidation.js +8 -7
- package/package.json +1 -1
- package/dist/cli/chunks/adapter-QU6INSKP.js +0 -2
- package/dist/cli/chunks/aqe-learning-engine-PAJPENJD.js +0 -2
- package/dist/cli/chunks/base-OTGSN6IC.js +0 -2
- package/dist/cli/chunks/browser-workflow-WLZGR6SB.js +0 -2
- package/dist/cli/chunks/chunk-2LUTPMBO.js +0 -21
- package/dist/cli/chunks/chunk-3HVFIITW.js +0 -2
- package/dist/cli/chunks/chunk-4D4CWP72.js +0 -2
- package/dist/cli/chunks/chunk-5KA5TVPR.js +0 -6
- package/dist/cli/chunks/chunk-6NBRMD25.js +0 -13
- package/dist/cli/chunks/chunk-7O45RQHF.js +0 -153
- package/dist/cli/chunks/chunk-EMSZVUYA.js +0 -29
- package/dist/cli/chunks/chunk-G6RDCCFV.js +0 -4
- package/dist/cli/chunks/chunk-HH4ED4F7.js +0 -744
- package/dist/cli/chunks/chunk-Q6I4SIUU.js +0 -65
- package/dist/cli/chunks/chunk-QGBGSQ2E.js +0 -14
- package/dist/cli/chunks/chunk-QRKTBSZT.js +0 -27
- package/dist/cli/chunks/chunk-SHRI7TKJ.js +0 -62
- package/dist/cli/chunks/chunk-TX2CHQD7.js +0 -2
- package/dist/cli/chunks/chunk-UGYM4U44.js +0 -2
- package/dist/cli/chunks/chunk-VY4U6DPO.js +0 -12
- package/dist/cli/chunks/chunk-WNTA4YKE.js +0 -14
- package/dist/cli/chunks/chunk-XHLYGXYE.js +0 -2
- package/dist/cli/chunks/client-KKRNPX4F.js +0 -2
- package/dist/cli/chunks/copilot-installer-BHPDSELY.js +0 -3
- package/dist/cli/chunks/core-handlers-47MPMED7.js +0 -2
- package/dist/cli/chunks/cross-domain-router-U6MBFHEC.js +0 -2
- package/dist/cli/chunks/daemon-AXLVPKVO.js +0 -18
- package/dist/cli/chunks/dream-76L6EEN7.js +0 -2
- package/dist/cli/chunks/embed-and-insert-pattern-B6MNHICW.js +0 -3
- package/dist/cli/chunks/experience-capture-middleware-SUFILYPW.js +0 -40
- package/dist/cli/chunks/file-discovery-VSFKZ3LJ.js +0 -2
- package/dist/cli/chunks/heartbeat-scheduler-NIK3KKEH.js +0 -2
- package/dist/cli/chunks/hnsw-adapter-WJG7LUJJ.js +0 -2
- package/dist/cli/chunks/hnsw-index-D6PRI5HC.js +0 -2
- package/dist/cli/chunks/hybrid-backend-RIUR3I7F.js +0 -2
- package/dist/cli/chunks/impact-analyzer-C36YYTJ5.js +0 -2
- package/dist/cli/chunks/init-wizard-JCKNGIGT.js +0 -2
- package/dist/cli/chunks/kernel-F7ILJTYD.js +0 -2
- package/dist/cli/chunks/knowledge-graph-VTXDBHB2.js +0 -2
- package/dist/cli/chunks/llm-router-service-TNOWQINA.js +0 -2
- package/dist/cli/chunks/load-test-FPVBK2EV.js +0 -2
- package/dist/cli/chunks/memory-backend-2QE7O67A.js +0 -2
- package/dist/cli/chunks/memory-handlers-X4CMVBXB.js +0 -2
- package/dist/cli/chunks/pattern-null-store-UI35ORHW.js +0 -2
- package/dist/cli/chunks/project-root-S7WDFTMU.js +0 -2
- package/dist/cli/chunks/protocol-executor-OPANXQVB.js +0 -2
- package/dist/cli/chunks/qe-reasoning-bank-3OTF4DYQ.js +0 -2
- package/dist/cli/chunks/queen-coordinator-WTYH4TAN.js +0 -2
- package/dist/cli/chunks/real-embeddings-DYIOLKQ3.js +0 -2
- package/dist/cli/chunks/router-DBBW4NC2.js +0 -2
- package/dist/cli/chunks/routing-feedback-W35QHCL4.js +0 -2
- package/dist/cli/chunks/rvf-dual-writer-X3NSL25Z.js +0 -2
- package/dist/cli/chunks/rvf-migration-adapter-TZR7GDOK.js +0 -2
- package/dist/cli/chunks/rvf-migration-coordinator-4ATTHGHD.js +0 -2
- package/dist/cli/chunks/rvf-native-adapter-HD25ZYV5.js +0 -2
- package/dist/cli/chunks/safe-db-ZS2QKANY.js +0 -2
- package/dist/cli/chunks/schedule-ZH6VNA32.js +0 -2
- package/dist/cli/chunks/scheduler-T6CD74B6.js +0 -2
- package/dist/cli/chunks/sqlite-persistence-47WU5EKZ.js +0 -2
- package/dist/cli/chunks/sync-3MUV6S5E.js +0 -2
- package/dist/cli/chunks/task-handler-74MZN2EO.js +0 -62
- package/dist/cli/chunks/test-O6FK3FVF.js +0 -34
- package/dist/cli/chunks/test-runner-process-2NPW3UDQ.js +0 -2
- package/dist/cli/chunks/token-bootstrap-TTRCECLP.js +0 -2
- package/dist/cli/chunks/tree-sitter-wasm-parser-RZAND65G.js +0 -2
- package/dist/cli/chunks/unified-memory-FZ5K2C7W.js +0 -2
- package/dist/cli/chunks/unified-memory-hnsw-VREWX56M.js +0 -2
- package/dist/cli/chunks/unified-persistence-YZGMKX6B.js +0 -2
- package/dist/cli/chunks/visual-security-GXGSFBVA.js +0 -2
- package/dist/cli/chunks/witness-chain-MRJKVCOW.js +0 -2
- package/dist/cli/chunks/witness-chain-WWHJKITG.js +0 -2
- package/dist/cli/chunks/witness-chain-repair-5SAXPETG.js +0 -2
- package/dist/cli/chunks/workflow-orchestrator-SG7DV72E.js +0 -2
- package/dist/cli/chunks/wrappers-5QFMCKXL.js +0 -2
|
@@ -1,7 +1,7 @@
|
|
|
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
|
-
var i={copilot:{id:"copilot",name:"GitHub Copilot",configPath:".vscode/mcp.json",configFormat:"json",configKey:"servers",rulesPath:".github/copilot-instructions.md",rulesFormat:"markdown",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1},cursor:{id:"cursor",name:"Cursor",configPath:".cursor/mcp.json",configFormat:"json",configKey:"mcpServers",rulesPath:".cursorrules",rulesFormat:"markdown",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1},cline:{id:"cline",name:"Cline",configPath:".vscode/cline_mcp_settings.json",configFormat:"json",configKey:"mcpServers",rulesPath:".vscode/cline_custom_modes.json",rulesFormat:"json",supportsAutoApprove:!0,supportsCustomModes:!0,globalConfig:!1},kilocode:{id:"kilocode",name:"Kilo Code",configPath:".kilocode/mcp.json",configFormat:"json",configKey:"mcpServers",rulesPath:".kilocode/modes.json",rulesFormat:"json",supportsAutoApprove:!0,supportsCustomModes:!0,globalConfig:!1},roocode:{id:"roocode",name:"Roo Code",configPath:".roo/mcp.json",configFormat:"json",configKey:"mcpServers",rulesPath:".roo/modes.json",rulesFormat:"json",supportsAutoApprove:!0,supportsCustomModes:!0,globalConfig:!1},codex:{id:"codex",name:"OpenAI Codex CLI",configPath:".codex/config.toml",configFormat:"toml",configKey:"mcp_servers",rulesPath:"AGENTS.md",rulesFormat:"markdown",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1},windsurf:{id:"windsurf",name:"Windsurf",configPath:".windsurf/mcp_config.json",configFormat:"json",configKey:"mcpServers",rulesPath:".windsurfrules",rulesFormat:"markdown",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1},continuedev:{id:"continuedev",name:"Continue.dev",configPath:".continue/config.yaml",configFormat:"yaml",configKey:"mcpServers",rulesPath:".continue/rules/aqe-qe-standards.yaml",rulesFormat:"yaml",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1}},l=["fleet_init","fleet_status","fleet_health","agent_list","agent_metrics","agent_status","team_list","team_health","task_list","task_status","test_generate_enhanced","coverage_analyze_sublinear","quality_assess","defect_predict","code_index","memory_store","memory_retrieve","memory_query","memory_usage","model_route","routing_metrics","aqe_health"];function
|
|
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.17");process.exit(0)}
|
|
2
|
+
import{createRequire as u}from"module";var i={copilot:{id:"copilot",name:"GitHub Copilot",configPath:".vscode/mcp.json",configFormat:"json",configKey:"servers",rulesPath:".github/copilot-instructions.md",rulesFormat:"markdown",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1},cursor:{id:"cursor",name:"Cursor",configPath:".cursor/mcp.json",configFormat:"json",configKey:"mcpServers",rulesPath:".cursorrules",rulesFormat:"markdown",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1},cline:{id:"cline",name:"Cline",configPath:".vscode/cline_mcp_settings.json",configFormat:"json",configKey:"mcpServers",rulesPath:".vscode/cline_custom_modes.json",rulesFormat:"json",supportsAutoApprove:!0,supportsCustomModes:!0,globalConfig:!1},kilocode:{id:"kilocode",name:"Kilo Code",configPath:".kilocode/mcp.json",configFormat:"json",configKey:"mcpServers",rulesPath:".kilocode/modes.json",rulesFormat:"json",supportsAutoApprove:!0,supportsCustomModes:!0,globalConfig:!1},roocode:{id:"roocode",name:"Roo Code",configPath:".roo/mcp.json",configFormat:"json",configKey:"mcpServers",rulesPath:".roo/modes.json",rulesFormat:"json",supportsAutoApprove:!0,supportsCustomModes:!0,globalConfig:!1},codex:{id:"codex",name:"OpenAI Codex CLI",configPath:".codex/config.toml",configFormat:"toml",configKey:"mcp_servers",rulesPath:"AGENTS.md",rulesFormat:"markdown",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1},windsurf:{id:"windsurf",name:"Windsurf",configPath:".windsurf/mcp_config.json",configFormat:"json",configKey:"mcpServers",rulesPath:".windsurfrules",rulesFormat:"markdown",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1},continuedev:{id:"continuedev",name:"Continue.dev",configPath:".continue/config.yaml",configFormat:"yaml",configKey:"mcpServers",rulesPath:".continue/rules/aqe-qe-standards.yaml",rulesFormat:"yaml",supportsAutoApprove:!1,supportsCustomModes:!1,globalConfig:!1}},l=["fleet_init","fleet_status","fleet_health","agent_list","agent_metrics","agent_status","team_list","team_health","task_list","task_status","test_generate_enhanced","coverage_analyze_sublinear","quality_assess","defect_predict","code_index","memory_store","memory_retrieve","memory_query","memory_usage","model_route","routing_metrics","aqe_health"];function m(t){return t?{AQE_MEMORY_BACKEND:"memory",AQE_V3_MODE:"true"}:{AQE_MEMORY_PATH:".agentic-qe/memory.db",AQE_V3_MODE:"true"}}function g(){return"3.15.17"}function f(){return{AQE_INIT_VERSION:g()}}function d(t,o){let e={command:"npx",args:["-y","agentic-qe@latest","mcp"],env:m(o)};return t&&(e.disabled=!1,e.alwaysAllow=l),e}function p(t,o){let e=d(t.supportsAutoApprove,o);if(t.id==="copilot"){let r={[t.configKey]:{"agentic-qe":{type:"stdio",...e,env:{...e.env,...f()}}}};return JSON.stringify(r,null,2)+`
|
|
3
3
|
`}let n={[t.configKey]:{"agentic-qe":e}};return JSON.stringify(n,null,2)+`
|
|
4
|
-
`}function
|
|
4
|
+
`}function y(t){return`# Agentic QE MCP Server
|
|
5
5
|
[mcp_servers.agentic-qe]
|
|
6
6
|
type = "stdio"
|
|
7
7
|
command = "npx"
|
|
@@ -11,7 +11,7 @@ args = ["-y", "agentic-qe@latest", "mcp"]
|
|
|
11
11
|
${t?`AQE_MEMORY_BACKEND = "memory"
|
|
12
12
|
AQE_V3_MODE = "true"`:`AQE_MEMORY_PATH = ".agentic-qe/memory.db"
|
|
13
13
|
AQE_V3_MODE = "true"`}
|
|
14
|
-
`}function
|
|
14
|
+
`}function _(t){return`# Agentic QE MCP Server
|
|
15
15
|
mcpServers:
|
|
16
16
|
- name: agentic-qe
|
|
17
17
|
command: npx
|
|
@@ -67,6 +67,6 @@ Always call \`fleet_init\` before using other AQE tools to initialize the QE fle
|
|
|
67
67
|
4. **Descriptive names**: \`should_returnValue_when_condition\`
|
|
68
68
|
5. **Mock at boundaries**: Only mock external dependencies
|
|
69
69
|
6. **Edge cases first**: Test boundary conditions, not just happy paths
|
|
70
|
-
`;function
|
|
71
|
-
`}var a=class{getPlatform(o){let e=i[o];if(!e)throw new Error(`Unknown platform: ${o}`);return e}getAllPlatformIds(){return Object.keys(i)}generateMcpConfig(o,e){let n=this.getPlatform(o),r=e?.memoryBackend==="memory",s;switch(n.configFormat){case"toml":s=
|
|
72
|
-
${c}`;break;default:n=c;break}return{path:e.rulesPath,content:n,format:e.rulesFormat}}getAutoApproveTools(){return[...l]}};function
|
|
70
|
+
`;function A(t){return JSON.stringify([{slug:"qe-engineer",name:"QE Engineer",roleDefinition:"You are a Quality Engineering specialist powered by Agentic QE. Use AQE MCP tools for test generation, coverage analysis, quality assessment, and security scanning. Always call fleet_init before using other AQE tools.",groups:["read","edit","browser","command","mcp"],customInstructions:"Follow the test pyramid: 70% unit, 20% integration, 10% e2e. Use boundary value analysis and equivalence partitioning for test design. Always run quality_assess before marking work complete. Store learned patterns with memory_store for future reference."}],null,2)+`
|
|
71
|
+
`}var a=class{getPlatform(o){let e=i[o];if(!e)throw new Error(`Unknown platform: ${o}`);return e}getAllPlatformIds(){return Object.keys(i)}generateMcpConfig(o,e){let n=this.getPlatform(o),r=e?.memoryBackend==="memory",s;switch(n.configFormat){case"toml":s=y(r);break;case"yaml":s=_(r);break;default:s=p(n,r);break}return{path:n.configPath,content:s,format:n.configFormat}}generateBehavioralRules(o){let e=this.getPlatform(o),n;switch(e.rulesFormat){case"json":n=A(e.name);break;case"yaml":n=`# AQE Quality Engineering Rules
|
|
72
|
+
${c}`;break;default:n=c;break}return{path:e.rulesPath,content:n,format:e.rulesFormat}}getAutoApproveTools(){return[...l]}};function h(){return new a}export{i as a,h as b};
|
|
@@ -0,0 +1,21 @@
|
|
|
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.17");process.exit(0)}
|
|
2
|
+
import{a as Z}from"./chunk-K7WAI662.js";import{a as C,e as x,f as X}from"./chunk-RKCN4B26.js";import{a as O}from"./chunk-74MDUIAZ.js";import{a as F,b as H,c as G,d as j,e as V,f as Y,h as K}from"./chunk-TDZ6N43D.js";import{c as $,d as J}from"./chunk-POPSZDI2.js";import{a as W,b as _,g as z,j as U}from"./chunk-XFTX3KLE.js";import{i as B}from"./chunk-YMUY3TES.js";import{i as N}from"./chunk-XPTCQKVE.js";import{b as R,d as re}from"./chunk-CMN7PU2H.js";import{d as q,f as M,h as L,i as v,o as A}from"./chunk-4EJLHNER.js";import{a as D}from"./chunk-CXCMATZ6.js";import{c as p,d as h}from"./chunk-REY52O7J.js";import{a as ie}from"./chunk-TIVKDIF7.js";import{c as T}from"./chunk-DS5IFRY6.js";import{a as b,b as y,e as ne}from"./chunk-J7Q5TXFZ.js";ie();ne();re();var o=T.create("RealQEReasoningBank"),ae={sqlite:{dbPath:".agentic-qe/memory.db",walMode:!0,useUnified:!0},embeddings:{modelName:"Xenova/all-MiniLM-L6-v2",quantized:!0,enableCache:!0},enableLearning:!0,enableRouting:!0,enableGuidance:!0,hnsw:{M:16,efConstruction:200,efSearch:100},routingWeights:{similarity:.3,performance:.4,capabilities:.3},coherenceThreshold:.4,embedderRetryIntervalMs:6e4},k=class{constructor(e={},t){this.coherenceService=t;this.qeConfig={...ae,...e},this.sqliteStore=B(this.qeConfig.sqlite),this.asymmetricEngine=new Z,this.embedderRecovery=new Y({retryIntervalMs:this.qeConfig.embedderRetryIntervalMs,probe:()=>this.probeEmbedderForRetry(),onRecovered:()=>o.info("Embedder available again: pattern search uses vectors"),onRetryFailed:n=>o.debug("Embedder still unavailable",{error:b(n)})})}coherenceService;qeConfig;sqliteStore;hnswIndex=null;patternIdMap=new Map;initialized=!1;embedderRecovery;stats={routingRequests:0,totalRoutingLatency:0,learningOutcomes:0,successfulOutcomes:0};routingLatencies=new O(1e3);asymmetricEngine;agentCapabilities={"qe-test-generator":{domains:["test-generation"],capabilities:["test-generation","tdd","bdd","unit-test","integration-test"],performanceScore:.85},"qe-coverage-analyzer":{domains:["coverage-analysis"],capabilities:["coverage-analysis","gap-detection","risk-scoring"],performanceScore:.92},"qe-coverage-specialist":{domains:["coverage-analysis"],capabilities:["sublinear-analysis","branch-coverage","mutation-testing"],performanceScore:.88},"qe-test-architect":{domains:["test-generation","coverage-analysis"],capabilities:["test-strategy","test-pyramid","architecture"],performanceScore:.9},"qe-api-contract-validator":{domains:["contract-testing"],capabilities:["contract-testing","openapi","graphql","pact"],performanceScore:.87},"qe-security-auditor":{domains:["security-compliance"],capabilities:["sast","dast","vulnerability","owasp"],performanceScore:.82},"qe-visual-tester":{domains:["visual-accessibility"],capabilities:["screenshot","visual-regression","percy","chromatic"],performanceScore:.8},"qe-a11y-ally":{domains:["visual-accessibility"],capabilities:["wcag","aria","screen-reader","contrast"],performanceScore:.85},"qe-performance-tester":{domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","k6","artillery"],performanceScore:.83},"qe-flaky-investigator":{domains:["test-execution"],capabilities:["flaky-detection","test-stability","retry"],performanceScore:.78},"qe-chaos-engineer":{domains:["chaos-resilience"],capabilities:["chaos-testing","resilience","fault-injection"],performanceScore:.75}};async initialize(){if(this.initialized)return;let e=performance.now();await this.sqliteStore.initialize(),o.info("SQLite persistence initialized");try{await q(D,this.qeConfig.embeddings)}catch(i){this.embedderRecovery.markUnavailable(b(i)),o.warn("No embedding runtime: patterns are stored without vectors (pending `aqe learning backfill-embeddings`) and searched by text matching only",{reason:this.embedderRecovery.unavailableReason})}this.embedderRecovery.unavailableReason===null&&(await this.initializeHNSW(),o.info("HNSW index initialized"),await this.loadPatternsIntoHNSW()),this.sqliteStore.getStats().totalPatterns===0&&(this.sqliteStore.hasAnyHistoricalData?.()??!1?o.error("qe_patterns table is EMPTY but historical data exists \u2014 possible data loss! Restore from backup instead of loading seed patterns. Skipping foundational pattern load to avoid masking data loss."):await this.loadFoundationalPatterns()),this.initialized=!0;let n=performance.now()-e;o.info("Fully initialized",{durationMs:Math.round(n)})}getPatternSearchStatus(){let e=this.embedderRecovery.unavailableReason;return e===null?{mode:"vector"}:{mode:"lexical-only",reason:e}}async embedOrUndefined(e){if(this.embedderRecovery.isAvailable())try{return await q(e,this.qeConfig.embeddings)}catch(t){let n=`Embedder failed at runtime: ${b(t)}`;this.embedderRecovery.markUnavailable(n)&&o.warn("Embedder failed: patterns are stored without vectors and searched by text matching only until it recovers",{reason:n});return}}async probeEmbedderForRetry(){await V(this.qeConfig.embeddings),this.hnswIndex||(await this.initializeHNSW(),await this.loadPatternsIntoHNSW())}async initializeHNSW(){try{let e=await import("./hnswlib-node-GX6WG2GB.js"),n=e.default?.HierarchicalNSW||e.HierarchicalNSW;if(typeof n!="function")throw new Error("HierarchicalNSW not found in hnswlib-node module");let i=n,r=v();this.hnswIndex=new i("cosine",r),this.hnswIndex.initIndex(1e5,this.qeConfig.hnsw.M,this.qeConfig.hnsw.efConstruction),this.hnswIndex.setEf(this.qeConfig.hnsw.efSearch),o.info("HNSW initialized",{dimension:r,M:this.qeConfig.hnsw.M})}catch(e){throw o.error("HNSW initialization failed",e instanceof Error?e:void 0),e}}async loadPatternsIntoHNSW(){if(!this.hnswIndex)return;let e=this.sqliteStore.getAllEmbeddings(),t=v(),n=0,i=0,r=A()?.spaceId;for(let{patternId:s,embedding:a,spaceId:l}of e){if(!r||l!==r||!a||!Array.isArray(a)||a.length!==t){i++;continue}let c=this.hnswIndex.getCurrentCount();this.hnswIndex.addPoint(a,c),this.patternIdMap.set(c,s),n++}i>0&&o.warn("Skipped invalid embeddings",{skipped:i,expectedDim:t}),o.info("Loaded patterns into HNSW index",{count:n})}async loadFoundationalPatterns(){let e=[{patternType:"test-template",name:"AAA Unit Test",description:"Arrange-Act-Assert pattern for clear, maintainable unit tests",template:{type:"code",content:`describe('{{className}}', () => {
|
|
3
|
+
describe('{{methodName}}', () => {
|
|
4
|
+
it('should {{expectedBehavior}}', {{async}} () => {
|
|
5
|
+
// Arrange
|
|
6
|
+
{{arrangeCode}}
|
|
7
|
+
|
|
8
|
+
// Act
|
|
9
|
+
{{actCode}}
|
|
10
|
+
|
|
11
|
+
// Assert
|
|
12
|
+
{{assertCode}}
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
});`,variables:[{name:"className",type:"string",required:!0},{name:"methodName",type:"string",required:!0},{name:"expectedBehavior",type:"string",required:!0}]},context:{testType:"unit",tags:["unit-test","aaa","best-practice"]}},{patternType:"coverage-strategy",name:"Risk-Based Coverage",description:"Prioritize coverage by code risk and complexity",template:{type:"prompt",content:"Analyze coverage gaps focusing on critical business logic, error handling, and high-complexity functions.",variables:[]},context:{tags:["coverage","risk-based"]}}];for(let t of e)try{await this.storeQEPattern(t)}catch(n){o.warn("Failed to load foundational pattern",{name:t.name,error:n})}o.info("Loaded foundational patterns",{count:e.length})}async storeQEPattern(e){try{let t=`${e.name} ${e.description||""} ${e.context?.tags?.join(" ")||""}`,n=await this.embedOrUndefined(t),i=W(t)||"test-generation";if(C())try{let a=X(e.name,{description:e.description,template:e.template,patternType:e.patternType},i,{tags:e.context?.tags}),l=await x.evaluateWrite(a);if(!l.allowed&&(o.warn("Pattern blocked by MemoryWriteGate",{name:e.name,reason:l.reason,conflicts:l.conflictingPatterns?.join(", ")||"none"}),l.reason?.includes("strict")))return h(new Error(`Pattern blocked by governance: ${l.reason}`))}catch(a){o.warn("MemoryWriteGate check error (continuing)",{error:a})}let r=N(),s={id:r,patternType:e.patternType,qeDomain:i,domain:i,name:e.name,description:e.description||"",confidence:.5,usageCount:0,successRate:0,qualityScore:0,tier:"short-term",template:e.template,context:{tags:[],...e.context},createdAt:new Date,lastUsedAt:new Date,successfulUses:0,embedding:n,reusable:!1,reuseCount:0,averageTokenSavings:0};if(await this.persist(()=>this.sqliteStore.storePattern(s,n)),this.hnswIndex&&n){let a=this.hnswIndex.getCurrentCount();this.hnswIndex.addPoint(n,a),this.patternIdMap.set(a,r)}if(C())try{x.registerPattern({key:r,value:{name:s.name,description:s.description,patternType:s.patternType},domain:s.domain})}catch(a){o.warn("Pattern registration with MemoryWriteGate failed",{error:a})}return p(s)}catch(t){return h(y(t))}}async searchQEPatterns(e,t={}){let n=performance.now();try{let i=t.limit||10,r=[],s=await this.embedOrUndefined(e);if(s){if(!this.hnswIndex)return h(new Error("HNSW index not available"));this.collectVectorMatches(s,i,t,r)}let a=new Map(r.map(c=>[c.pattern.id,c]));for(let c of this.sqliteStore.searchFTS(e,i*2)){let d=a.get(c.id);if(d){d.score=J(d.score,c.ftsScore*c.coverage);continue}if(t.minSimilarity!==void 0)continue;let u=this.sqliteStore.getPattern(c.id);!u||t.domain&&u.qeDomain!==t.domain||r.push({pattern:u,score:.5*c.ftsScore*c.coverage,similarity:0,matchType:"lexical",canReuse:!1})}r.sort((c,d)=>d.score-c.score);let l=performance.now()-n;return l>10&&o.warn("Slow search",{searchTimeMs:Number(l.toFixed(1))}),p(r.slice(0,i))}catch(i){return h(y(i))}}collectVectorMatches(e,t,n,i){let r=this.hnswIndex.searchKnn(e,t*2);for(let s=0;s<r.neighbors.length;s++){let a=r.neighbors[s],c=1-r.distances[s];if(n.minSimilarity!==void 0&&c<n.minSimilarity)continue;let d=this.patternIdMap.get(a);if(!d)continue;let u=this.sqliteStore.getPattern(d);if(!u||n.domain&&u.qeDomain!==n.domain)continue;let m=$.reuseOptimization,g=(Date.now()-new Date(u.lastUsedAt).getTime())/864e5;i.push({pattern:u,similarity:c,score:c,matchType:"vector",canReuse:!!(u.reusable&&c>=m.minSimilarityForReuse&&u.successRate>=m.minSuccessRateForReuse&&g<=m.maxAgeForReuse)})}}async routeTask(e){let t=performance.now();this.stats.routingRequests++;try{let n=e.domain?[e.domain]:_(e.task);n.length===0&&n.push("test-generation");let i=await this.searchQEPatterns(e.task,{limit:10,domain:n[0]}),r=i.success?i.value.map(m=>m.pattern):[],s=[];for(let[m,g]of Object.entries(this.agentCapabilities)){let f=0,P=[],I=n.filter(S=>g.domains.includes(S)).length,w=I>0?I/n.length*.4:0;if(f+=w*this.qeConfig.routingWeights.similarity,w>0&&P.push(`Domain: ${(w*100).toFixed(0)}%`),e.capabilities&&e.capabilities.length>0){let S=e.capabilities.filter(ee=>g.capabilities.some(te=>te.toLowerCase().includes(ee.toLowerCase()))).length,E=S>0?S/e.capabilities.length*.3:0;f+=E*this.qeConfig.routingWeights.capabilities,E>0&&P.push(`Caps: ${(E*100).toFixed(0)}%`)}else f+=.15*this.qeConfig.routingWeights.capabilities;f+=g.performanceScore*.3*this.qeConfig.routingWeights.performance,P.push(`Perf: ${(g.performanceScore*100).toFixed(0)}%`),s.push({agent:m,score:f,reasoning:P})}s.sort((m,g)=>g.score-m.score);let a=s[0],l=s.slice(1,4),c=[];if(this.qeConfig.enableGuidance&&n.length>0){let m=H(n[0],{framework:e.context?.framework,language:e.context?.language,includeAntiPatterns:!0});c.push(...m.slice(0,5))}let d=performance.now()-t;this.stats.totalRoutingLatency+=d,this.routingLatencies.push(d);let u={recommendedAgent:a.agent,confidence:a.score,alternatives:l.map(m=>({agent:m.agent,score:m.score})),domains:n,patterns:r,guidance:c,reasoning:a.reasoning.join("; "),latencyMs:d};return p(K(e.includePatternGuidance,u,i.success?i.value:[]))}catch(n){return h(y(n))}}async recordOutcome(e){if(!this.qeConfig.enableLearning)return p(void 0);try{await this.persist(()=>this.sqliteStore.recordUsage(e.patternId,e.success,e.metrics,e.feedback)),this.stats.learningOutcomes++,e.success&&this.stats.successfulOutcomes++;let t=await this.persist(()=>{let n=this.sqliteStore.getPattern(e.patternId);if(!n)return n;let i=n.qeDomain,r=this.asymmetricEngine.computeConfidenceUpdate(n.confidence,e.success?"success":"failure",i);return this.asymmetricEngine.shouldQuarantine(r,i).shouldQuarantine&&o.info("Pattern quarantined (asymmetric drop)",{name:n.name}),this.sqliteStore.updatePattern(e.patternId,{confidence:r}),n});return t&&await this.checkPatternPromotionWithCoherence(t)&&(await this.persist(()=>this.sqliteStore.promotePattern(e.patternId)),o.info("Pattern promoted to long-term",{name:t.name})),p(void 0)}catch(t){return h(y(t))}}async checkPatternPromotionWithCoherence(e){let t=z(e);if(!t.meetsUsageCriteria||!t.meetsQualityCriteria)return!1;if(this.coherenceService&&this.coherenceService.isInitialized()){let r=[...await this.getLongTermPatterns(),e].map(a=>({id:a.id,embedding:a.embedding||[],weight:a.confidence,metadata:{name:a.name,domain:a.qeDomain}})),s=await this.coherenceService.checkCoherence(r);if(s.energy>=(this.qeConfig.coherenceThreshold||.4))return o.info("Pattern promotion blocked due to coherence violation",{name:e.name,energy:s.energy}),s.contradictions&&s.contradictions.length>0&&o.info("Conflicts with existing patterns",{conflictingNodeIds:s.contradictions.map(a=>a.nodeIds).flat()}),!1}return!0}async getLongTermPatterns(){return this.sqliteStore.getPatterns({limit:1e3}).filter(t=>t.tier==="long-term")}shouldPromote(e){return e.tier==="short-term"&&e.successfulUses>=3&&e.successRate>=.7&&e.confidence>=.6}getQEGuidance(e){return F(e)}generateQEContext(e,t){return j(e,t||{})}checkQEAntiPatterns(e,t){return G(e,t)}async getQEStats(){let e=this.sqliteStore.getStats(),t=this.routingLatencies.percentile(95)||0,n={};for(let i of U)n[i]=e.byDomain[i]||0;return{totalPatterns:e.totalPatterns,byDomain:n,byTier:e.byTier,routingRequests:this.stats.routingRequests,avgRoutingLatencyMs:this.stats.routingRequests>0?this.stats.totalRoutingLatency/this.stats.routingRequests:0,p95RoutingLatencyMs:t,learningOutcomes:this.stats.learningOutcomes,patternSuccessRate:this.stats.learningOutcomes>0?this.stats.successfulOutcomes/this.stats.learningOutcomes:0,embeddingCacheSize:0,transformerAvailable:L(),patternSearch:this.getPatternSearchStatus(),embeddingDimension:v(),sqliteDbPath:this.qeConfig.sqlite.dbPath||".agentic-qe/memory.db",asymmetricLearning:{failurePenaltyRatio:"10:1",quarantinedPatterns:this.sqliteStore.getPatterns({limit:1e4}).filter(i=>i.quarantined===!0).length,rehabilitatedPatterns:this.sqliteStore.getPatterns({limit:1e4}).filter(i=>i.quarantined===!1&&i.quarantinedAt).length,avgConfidenceDelta:this.stats.learningOutcomes>0?this.stats.successfulOutcomes/this.stats.learningOutcomes-.5:0}}}async storeLoopPattern(e){try{let t=await this.storeQEPattern({patternType:"anti-pattern",name:`loop-detection:${e.toolCallSignature}`,description:`Tool call loop detected for agent ${e.agentId} during ${e.taskType}. Steering: ${e.steeringUsed}. Resolved: ${e.resolved}`,template:{type:"prompt",content:e.steeringUsed,variables:[]},context:{tags:["anti-pattern","loop-detection","learning-optimization",e.taskType]}});return t.success?{success:!0,patternId:t.value.id}:{success:!1,error:t.error?.message??"Unknown error"}}catch(t){return{success:!1,error:b(t)}}}async recordPatternOutcome(e,t,n){await this.persist(()=>{let i=this.sqliteStore.getPattern(e);if(!i)return;let r=i.usageCount+1,s=t?i.successfulUses+1:i.successfulUses,a=s/r,l=.3,c=(1-l)*i.qualityScore+l*n,d=Math.min(1,.5+r*.05+a*.3);this.sqliteStore.updatePattern(e,{usageCount:r,successfulUses:s,successRate:a,qualityScore:c,confidence:d})})}async checkPatternPromotion(e,t,n,i){let r=this.sqliteStore.getPattern(e);return r?r.tier==="short-term"?t>=3&&n>=.6&&i>=.5:r.tier==="long-term"?t>=10&&n>=.75&&i>=.7:!1:!1}async promotePattern(e){await this.persist(()=>this.sqliteStore.promotePattern(e))}async demotePattern(e){let t=["short-term","working","long-term"],n=await this.persist(()=>{let i=this.sqliteStore.getPattern(e);if(!i)return null;let r=t.indexOf(i.tier);if(r<=0)return null;let s=t[r-1];return this.sqliteStore.updatePattern(e,{tier:s}),{name:i.name,newTier:s}});n&&o.info("Pattern demoted",n)}cleanupPatternIdMap(){if(!this.initialized)return 0;let e=0,t=this.sqliteStore.getPatterns({limit:1e5}),n=new Set(t.map(i=>i.id));for(let[i,r]of Array.from(this.patternIdMap.entries()))n.has(r)||(this.patternIdMap.delete(i),e++);return e>0&&o.info("Cleaned stale patternIdMap entries",{count:e}),e}removePatternFromHNSW(e){for(let[t,n]of Array.from(this.patternIdMap.entries()))if(n===e)return this.patternIdMap.delete(t),o.info("Removed pattern from HNSW mapping",{patternId:e}),!0;return!1}getMemoryStats(){return{patternIdMapSize:this.patternIdMap.size,routingLatenciesSize:this.routingLatencies.length,hnswIndexCount:this.hnswIndex?.getCurrentCount()??0}}async storeTrajectory(e){let t=this.sqliteStore.getDb();return await this.persist(()=>t.prepare(`
|
|
16
|
+
INSERT OR REPLACE INTO qe_trajectories (
|
|
17
|
+
id, task, agent, domain, started_at, ended_at, success, steps_json, metadata_json
|
|
18
|
+
) VALUES (?, ?, ?, ?, datetime('now'), datetime('now'), ?, ?, ?)
|
|
19
|
+
`).run(e.id,e.task,e.agent??null,e.domain??null,e.success?1:0,JSON.stringify(e.steps),JSON.stringify(e.metrics??{}))),e.id}async getTrajectories(e,t=50){let n=this.sqliteStore.getDb(),i="SELECT * FROM qe_trajectories",r=[];return e&&(i+=" WHERE domain = ?",r.push(e)),i+=" ORDER BY ended_at DESC LIMIT ?",r.push(t),n.prepare(i).all(...r).map(a=>({id:a.id,task:a.task,agent:a.agent??void 0,domain:a.domain,success:a.success===1,steps:R(a.steps_json||"[]"),metrics:a.metadata_json?R(a.metadata_json):void 0}))}async linkPatternToTrajectory(e,t){let n=this.sqliteStore.getDb();await this.persist(()=>{let i=this.sqliteStore.getPattern(e);if(i){let r={...i.context,sourceTrajectoryId:t};n.prepare(`
|
|
20
|
+
UPDATE qe_patterns SET context_json = ?, updated_at = datetime('now') WHERE id = ?
|
|
21
|
+
`).run(JSON.stringify(r),e)}})}persist(e){return typeof this.sqliteStore.writeWhenUnlocked=="function"?this.sqliteStore.writeWhenUnlocked(e):new Promise(t=>t(e()))}async getEnhancedAdapter(){return{message:"Use EnhancedReasoningBankAdapter for full agentic-flow integration",importPath:"../integrations/agentic-flow/reasoning-bank/index.js"}}async dispose(){this.sqliteStore.close(),M(),this.hnswIndex=null,this.patternIdMap.clear(),this.routingLatencies.clear(),this.stats.routingRequests=0,this.stats.totalRoutingLatency=0,this.stats.learningOutcomes=0,this.stats.successfulOutcomes=0,this.initialized=!1,o.info("Disposed")}async destroy(){return this.dispose()}};function Ie(Q={},e){return new k(Q,e)}export{Ie as a};
|
|
@@ -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
|
|
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.17");process.exit(0)}
|
|
2
|
+
import{a as _,b as M,c as K,d as N,f as te,h as oe}from"./chunk-TDZ6N43D.js";import{a as Y,e as ee}from"./chunk-POPSZDI2.js";import{c as re,d as ne,e as ie,f as ae}from"./chunk-MVVVGQJ6.js";import{b as I,g as H,j as X}from"./chunk-XFTX3KLE.js";import{b as k}from"./chunk-J3QFJI2Y.js";import{c as J,i as Z}from"./chunk-YMUY3TES.js";import{C as Re,w as $}from"./chunk-NZJVDOUN.js";import{o as T}from"./chunk-4EJLHNER.js";import{c as D,d as Pe}from"./chunk-LRKLATSH.js";import{c as C,d as E}from"./chunk-REY52O7J.js";import{a as U}from"./chunk-TIVKDIF7.js";import{c as A}from"./chunk-DS5IFRY6.js";import{S as ve,b as G}from"./chunk-JHKKIJT2.js";import{a as f,b as z,e as j}from"./chunk-J7Q5TXFZ.js";U();j();function se(i,e,r,t){let n={missing:0,ingested:0,rejected:0,capped:!1};if(typeof i.has!="function")return n;let a=d=>d.filter(h=>!i.has(h)),o=a(e.getEmbeddingIdsInSpace(r));if(o.length===0)return n;let s=Number.isFinite(t)&&t>0?Math.floor(t):1e3;o.length>s&&(o=a(e.getEmbeddingIdsInSpace(r,{ordered:!0})));let l=o.slice(0,s),u=e.getEmbeddingsByIds(l).filter(({embedding:d})=>d&&d.length>0).map(({patternId:d,embedding:h})=>({id:d,vector:new Float32Array(h)})),{accepted:c,rejected:g}=u.length>0?i.ingest(u):{accepted:0,rejected:0};return{missing:o.length,ingested:c,rejected:g,capped:o.length>s}}var O={enableLearning:!0,enableGuidance:!0,enableRouting:!0,embeddingDimension:384,useONNXEmbeddings:!0,maxRoutingCandidates:10,routingWeights:{similarity:.3,performance:.4,capabilities:.3},coherenceThreshold:.4};var q=[{patternType:"test-template",name:"AAA Unit Test",description:"Arrange-Act-Assert pattern for clear, maintainable unit tests",template:{type:"code",content:`describe('{{className}}', () => {
|
|
3
3
|
describe('{{methodName}}', () => {
|
|
4
4
|
it('should {{expectedBehavior}}', {{async}} () => {
|
|
5
5
|
// Arrange
|
|
@@ -278,7 +278,7 @@ On promotion:
|
|
|
278
278
|
- Move from short-term to long-term tier
|
|
279
279
|
- Boost confidence by 10%
|
|
280
280
|
- Enable for cross-domain transfer to related domains
|
|
281
|
-
- Mark as reusable for token savings optimization`,variables:[{name:"patternName",type:"string",required:!0,description:"Pattern to evaluate for promotion"}]},context:{tags:["promotion","learning","quality","pipeline"]},confidence:.6}];import{randomInt as
|
|
281
|
+
- Mark as reusable for token savings optimization`,variables:[{name:"patternName",type:"string",required:!0,description:"Pattern to evaluate for promotion"}]},context:{tags:["promotion","learning","quality","pipeline"]},confidence:.6}];import{randomInt as ce}from"crypto";var x={"qe-test-generator":{domains:["test-generation"],capabilities:["test-generation","tdd","bdd","unit-test","integration-test"],performanceScore:.85,languages:["typescript","javascript","python","java","csharp","go","rust","swift","kotlin","dart"]},"qe-coverage-analyzer":{domains:["coverage-analysis"],capabilities:["coverage-analysis","gap-detection","risk-scoring"],performanceScore:.92,languages:["typescript","javascript","python","java","csharp","go","rust","swift","kotlin","dart"]},"qe-coverage-specialist":{domains:["coverage-analysis"],capabilities:["sublinear-analysis","branch-coverage","mutation-testing"],performanceScore:.88,languages:["typescript","javascript"]},"qe-test-architect":{domains:["test-generation","coverage-analysis"],capabilities:["test-strategy","test-pyramid","architecture"],performanceScore:.9,languages:["typescript","javascript","python","java","csharp","go","rust","swift","kotlin","dart"]},"qe-api-contract-validator":{domains:["contract-testing"],capabilities:["contract-testing","openapi","graphql","pact"],performanceScore:.87},"qe-security-auditor":{domains:["security-compliance"],capabilities:["sast","dast","vulnerability","owasp"],performanceScore:.82},"qe-visual-tester":{domains:["visual-accessibility"],capabilities:["screenshot","visual-regression","percy","chromatic"],performanceScore:.8},"qe-a11y-ally":{domains:["visual-accessibility"],capabilities:["wcag","aria","screen-reader","contrast"],performanceScore:.85},"qe-performance-tester":{domains:["chaos-resilience"],capabilities:["load-testing","stress-testing","k6","artillery"],performanceScore:.83},"qe-flaky-investigator":{domains:["test-execution"],capabilities:["flaky-detection","test-stability","retry"],performanceScore:.78},"qe-chaos-engineer":{domains:["chaos-resilience"],capabilities:["chaos-testing","resilience","fault-injection"],performanceScore:.75}},we=.4,Se=20,Ee=3;function ke(i){return 1/(1+Math.exp(-i))}function xe(i,e){if(!e||e.visits===0)return{score:i,qWeight:0,qValue:0,qVisits:0};let r=Math.min(e.visits/Se,1)*we,t=ke(e.qValue);return{score:i*(1-r)+t*r,qWeight:r,qValue:e.qValue,qVisits:e.visits}}function le(i){let e=i.envOverride,r=e!==void 0?Number.parseFloat(e):NaN,t=Number.isFinite(r)&&r>=0&&r<=1?r:.05,n=i.topologyCritical?.2:1;return{epsilon:Math.min(Math.max(t*n,0),1),baseEpsilon:t,safetyMultiplier:n}}function ue(i,e){if(e<=0||i.length<2)return;let r=Math.round(e*1e6);if(r<=0||ce(0,1e6)>=r)return;let t=Math.min(4,i.length),n=ce(1,t),a=i[n];i[n]=i[0],i[0]=a,i[0].exploration=!0,i[0].reasoning=[...i[0].reasoning,"(exploration)"]}function de(i){let e=i.toLowerCase();return/\bgenerate[- ]?test|\btest[- ]?gen|\bgenerate.+spec/.test(e)?"test-generation":/\bcoverage|\banalyze.+cover/.test(e)?"coverage-analysis":/\bquality|\bassess|\baudit/.test(e)?"quality-assessment":/\bsecurity|\bvulnerab|\bcompliance/.test(e)?"security-compliance":/\bdefect|\bbug|\bdiagnos/.test(e)?"defect-intelligence":/\brequirement|\bspec\b/.test(e)?"requirements-validation":/\brefactor|\brewrite|\boptim/.test(e)?"refactoring":/\btest|\brun.+test/.test(e)?"test-execution":"unknown"}function pe(i){return`${i.taskType}|${i.priority??"normal"}|${i.domain??"any"}`}function Q(i,e,r,t,n=x,a,o){let s=[];for(let[l,u]of Object.entries(n)){let c=0,g=[],d=i.filter(b=>u.domains.includes(b)).length,h=Math.min(i.length,Ee),y=d>0?Math.min(d/h,1)*.4:0;if(c+=y*t.similarity,y>0&&g.push(`Domain match: ${(y*100).toFixed(0)}%`),e&&e.length>0){let b=e.filter(v=>u.capabilities.some(P=>P.toLowerCase().includes(v.toLowerCase()))).length,p=b>0?b/e.length*.3:0;c+=p*t.capabilities,p>0&&g.push(`Capability match: ${(p*100).toFixed(0)}%`)}else c+=.15*t.capabilities;if(c+=u.performanceScore*.3*t.performance,g.push(`Performance score: ${(u.performanceScore*100).toFixed(0)}%`),a&&u.languages&&u.languages.length>0){let b=t.language??1,p=a.toLowerCase();if(u.languages.some(P=>P.toLowerCase()===p)){let P=.15*b;c+=P,g.push(`Language match: ${a}`)}}let w=r.get(l)||0;if(w>0){let b=Math.min(.1,w*.02);c+=b,g.push(`Pattern matches: ${w}`)}let S=c;if(o){let b=o(l),p=xe(S,b);c=p.score,p.qWeight>0&&g.push(`Q-bonus (w=${p.qWeight.toFixed(2)}, v=${p.qVisits})`),s.push({agent:l,score:c,reasoning:g,staticScore:S,qWeight:p.qWeight,qValue:p.qValue,qVisits:p.qVisits})}else s.push({agent:l,score:c,reasoning:g,staticScore:S})}return s.sort((l,u)=>u.score-l.score),s}var F={"test-generation":["test-execution","coverage-analysis","requirements-validation"],"test-execution":["test-generation","coverage-analysis","quality-assessment"],"coverage-analysis":["test-generation","test-execution","quality-assessment"],"quality-assessment":["test-execution","coverage-analysis","defect-intelligence"],"defect-intelligence":["quality-assessment","code-intelligence"],"requirements-validation":["test-generation","quality-assessment"],"code-intelligence":["defect-intelligence","security-compliance"],"security-compliance":["code-intelligence","quality-assessment"],"contract-testing":["test-generation","test-execution"],"visual-accessibility":["quality-assessment"],"chaos-resilience":["test-execution","quality-assessment"],"learning-optimization":["test-generation","test-execution","coverage-analysis","quality-assessment","defect-intelligence"]};function me(){try{return!ae()||!ie()||re().getVerticesByType("agent").length===0?!1:ne().isCritical()}catch{return!1}}Re();function ge(i,e){if(i.length===e)return i;if(i.length>e){let r=i.length/e,t=new Array(e).fill(0);for(let n=0;n<e;n++){let a=Math.floor(n*r),o=Math.floor((n+1)*r),s=0;for(let l=a;l<o;l++)s+=i[l];t[n]=s/(o-a)}return L(t)}else{let r=new Array(e).fill(0),t=(i.length-1)/(e-1);for(let n=0;n<e;n++){let a=n*t,o=Math.floor(a),s=Math.min(o+1,i.length-1),l=a-o;r[n]=i[o]*(1-l)+i[s]*l}return L(r)}}function fe(i,e){let r=new Array(e).fill(0),t=i.toLowerCase().trim();for(let n=0;n<3;n++)for(let a=0;a<t.length;a++){let o=t.charCodeAt(a),s=o*(a+1)*(n+1)%e;r[s]+=Math.sin(o*(n+1))/(a+1)}return L(r)}function L(i){let e=Math.sqrt(i.reduce((r,t)=>r+t*t,0));if(e>0)for(let r=0;r<i.length;r++)i[r]/=e;return i}U();j();Pe();ve();var R=A.create("PatternPromotion");async function he(i,e){let r=H(i);if(!r.meetsUsageCriteria||!r.meetsQualityCriteria)return!1;if(e.coherenceService&&e.coherenceService.isInitialized()){let t=await e.searchPatterns("",{tier:"long-term",limit:1e3}),o=[...t.success?t.value.map(l=>l.pattern):[],i].map(l=>({id:l.id,embedding:l.embedding||[],weight:l.confidence,metadata:{name:l.name,domain:l.qeDomain}})),s=await e.coherenceService.checkCoherence(o);if(s.energy>=e.coherenceThreshold){let l={patternId:i.id,patternName:i.name,reason:"coherence_violation",energy:s.energy,existingPatternConflicts:s.contradictions?.map(u=>u.nodeIds).flat()};return e.eventBus&&await e.eventBus.publish({id:`pattern-promotion-blocked-${i.id}`,type:"pattern:promotion_blocked",timestamp:new Date,source:"learning-optimization",payload:l}),R.info("Pattern promotion blocked due to coherence violation",{name:i.name,energy:s.energy}),!1}}return!0}async function W(i,e){let r=await e.patternStore.promote(i);if(r.success){try{let t=e.getSqliteStore();await D(t.getDatabase(),()=>t.promotePattern(i))}catch(t){R.warn("SQLite pattern promotion persist failed",{error:f(t)})}if(G().useSublinearSolver)try{let t=e.getSqliteStore().getDatabase?.();if(t){let n=new V(t),a=await e.getPattern(i);if(a){let o=await e.searchPatterns("",{domain:a.qeDomain,tier:"long-term",limit:20});if(o.success)for(let{pattern:s}of o.value)s.id!==i&&await D(t,()=>n.recordCoOccurrence(i,s.id))}}}catch(t){R.warn("Citation graph update failed (non-fatal)",{error:f(t)})}if(e.rvfDualWriter)try{let t=await e.getPattern(i);t?.embedding&&t.embedding.length>0&&e.rvfDualWriter.writePattern(i,t.embedding)}catch(t){R.warn("RVF dual-write on promote failed (non-fatal)",{patternId:i,error:f(t)})}return k().then(t=>t.appendWhenUnlocked("PATTERN_PROMOTE",{patternId:i},"reasoning-bank")).catch(t=>{R.warn("Witness chain PATTERN_PROMOTE failed",{error:f(t)})}),R.info("Promoted pattern to long-term",{patternId:i}),e.eventBus&&await e.eventBus.publish({id:`pattern-promoted-${i}`,type:"pattern:promoted",timestamp:new Date,source:"learning-optimization",payload:{patternId:i,newTier:"long-term"}}),r}else return R.error("Failed to promote pattern",r.error,{patternId:i}),r}async function be(i){let{signal:e}=i;e?.throwIfAborted();let r=await i.patternStore.getStats(),t=0,n=0;for(let[a,o]of Object.entries(F)){e?.throwIfAborted();let s=a,l=r.byDomain[s]||0;if(l===0)continue;let u=await i.searchPatterns("",{domain:s,limit:50});if(u.success)for(let c of o){if(e?.throwIfAborted(),(r.byDomain[c]||0)>=l){n++;continue}for(let{pattern:d}of u.value){e?.throwIfAborted();let h=await i.searchPatterns(d.name,{domain:c,limit:1});if(h.success&&h.value.length>0&&h.value[0].score>.8){n++;continue}let y=Math.max(.3,(d.confidence||.5)*.8);(await i.storePattern({patternType:d.patternType,qeDomain:c,name:`${d.name} (from ${s})`,description:`${d.description} [Transferred from ${s} domain]`,template:d.template,context:{...d.context,relatedDomains:[s,c],tags:[...d.context.tags,"cross-domain-transfer",`source:${s}`]},confidence:y})).success?t++:n++}}}return R.info("Cross-domain transfer complete",{transferred:t,skipped:n}),{transferred:t,skipped:n}}var Ae=`
|
|
282
282
|
CREATE TABLE IF NOT EXISTS pattern_citations (
|
|
283
283
|
source_pattern_id TEXT NOT NULL,
|
|
284
284
|
target_pattern_id TEXT NOT NULL,
|
|
@@ -289,7 +289,7 @@ On promotion:
|
|
|
289
289
|
);
|
|
290
290
|
CREATE INDEX IF NOT EXISTS idx_citations_source ON pattern_citations(source_pattern_id);
|
|
291
291
|
CREATE INDEX IF NOT EXISTS idx_citations_target ON pattern_citations(target_pattern_id);
|
|
292
|
-
`,
|
|
292
|
+
`,V=class{constructor(e){this.db=e}db;initialized=!1;ensureSchema(){this.initialized||(this.db.exec(Ae),this.initialized=!0)}recordCoOccurrence(e,r){this.ensureSchema();let[t,n]=e<r?[e,r]:[r,e];this.db.prepare(`
|
|
293
293
|
INSERT INTO pattern_citations (source_pattern_id, target_pattern_id, weight, relationship)
|
|
294
294
|
VALUES (?, ?, 1.0, 'co-occurrence')
|
|
295
295
|
ON CONFLICT(source_pattern_id, target_pattern_id)
|
|
@@ -311,10 +311,10 @@ On promotion:
|
|
|
311
311
|
`).all(),l=this.db.prepare(`
|
|
312
312
|
INSERT OR IGNORE INTO pattern_citations (source_pattern_id, target_pattern_id, weight, relationship)
|
|
313
313
|
VALUES (?, ?, 2.0, 'derivation')
|
|
314
|
-
`);for(let u of s)l.run(u.source_pattern_id,u.target_pattern_id).changes>0&&e++;return e}getEdgeCount(){return this.ensureSchema(),this.db.prepare("SELECT COUNT(*) as cnt FROM pattern_citations").get().cnt}};var m=A.create("QEReasoningBank"),
|
|
314
|
+
`);for(let u of s)l.run(u.source_pattern_id,u.target_pattern_id).changes>0&&e++;return e}getEdgeCount(){return this.ensureSchema(),this.db.prepare("SELECT COUNT(*) as cnt FROM pattern_citations").get().cnt}};var m=A.create("QEReasoningBank"),B=class{constructor(e,r,t={},n){this.memory=e;this.eventBus=r;this.coherenceService=n;this.config={...O,...t},this.embedderRecovery=new te({retryIntervalMs:this.config.embedderRetryIntervalMs,onRecovered:()=>m.info("Embedder available again: patterns are stored and searched with vectors"),onRetryFailed:a=>m.debug("Embedder still unavailable",{error:f(a)})}),t.rvfDualWriter&&(this.rvfDualWriter=t.rvfDualWriter),this.patternStore=ee(e,{embeddingDimension:this.config.embeddingDimension,...t.patternStore})}memory;eventBus;coherenceService;config;embeddingProvenance=new WeakMap;embedderRecovery;patternStore;initialized=!1;sqliteStore=null;rvfDualWriter=null;getSqliteStore(){return this.sqliteStore||(this.sqliteStore=Z(),this.sqliteStore.initialize().catch(e=>{m.warn("SQLitePatternStore init failed",{error:f(e)})})),this.sqliteStore}setRvfDualWriter(e){this.rvfDualWriter=e}stats={routingRequests:0,totalRoutingConfidence:0,learningOutcomes:0,measuredOutcomes:0,successfulOutcomes:0};async initialize(e){if(this.initialized)return;let r=e?.signal;r?.throwIfAborted(),await this.patternStore.initialize(),r?.throwIfAborted();try{let t=this.getSqliteStore();await t.initialize(),this.patternStore.setSqliteStore?.(t)}catch(t){m.warn("Failed to wire SQLitePatternStore into PatternStore",{error:f(t)})}r?.throwIfAborted(),this.initialized=!0,await this.loadPretrainedPatterns(r),r?.throwIfAborted();try{let t="reasoning-bank:cross-domain-seeded";if(!await this.memory.get(t))await this.memory.set(t,!0),await this.seedCrossDomainPatterns(r);else{let a=await this.patternStore.getStats();m.info("Cross-domain transfer already complete",{totalPatterns:a.totalPatterns})}}catch(t){if(r?.aborted)throw t;m.warn("Cross-domain seeding failed (non-fatal)",{error:t})}m.info("Initialized")}lastVectorReconcile=null;getLastVectorReconcile(){return this.lastVectorReconcile}reconcileVectorIndex(){let e=this.patternStore.getAdapter?.(),r=T()?.spaceId;if(!e||!r)return null;try{let t=Number(process.env.AQE_RVF_BACKFILL_LIMIT),n=Number.isFinite(t)&&t>0?Math.floor(t):1e3,a=se(e,this.getSqliteStore(),r,n);return a.missing>0&&m.info("Reconciled RVF index with SQLite vectors",{...a}),this.lastVectorReconcile=a,a}catch(t){return m.warn("RVF reconcile failed (non-fatal)",{error:f(t)}),null}}async loadPretrainedPatterns(e){e?.throwIfAborted();let r=await this.patternStore.getStats();if(r.totalPatterns>0){m.info("Found existing patterns",{totalPatterns:r.totalPatterns});let t=this.patternStore.getAdapter?.();if(t&&(t.status()?.totalVectors??0)===0)try{let n=(()=>{let s=process.env.AQE_RVF_BACKFILL_LIMIT,l=s?Number(s):NaN;return Number.isFinite(l)&&l>0?Math.floor(l):1e3})(),o=this.getSqliteStore().getRecentEmbeddings(n).filter(({embedding:s})=>s&&s.length>0).map(({patternId:s,embedding:l})=>({id:s,vector:l instanceof Float32Array?l:new Float32Array(l)}));if(o.length>0){let{accepted:s,rejected:l}=t.ingest(o);m.info("Backfilled RVF from SQLite",{requested:o.length,accepted:s,cap:n,truncated:o.length>=n}),l>0&&m.warn("RVF backfill partially rejected",{accepted:s,rejected:l})}}catch(n){m.warn("RVF backfill failed (non-fatal)",{error:f(n)})}else t&&this.reconcileVectorIndex();return}for(let t of q){e?.throwIfAborted();try{await this.storePattern(t)}catch(n){if(e?.aborted)throw n;m.warn("Failed to load pattern",{name:t.name,error:n})}}m.info("Loaded foundational patterns",{count:q.length})}async seedCrossDomainPatterns(e){return this.initialized||await this.initialize({signal:e}),be({searchPatterns:this.searchPatterns.bind(this),storePattern:this.storePattern.bind(this),patternStore:this.patternStore,signal:e})}async storePattern(e){if(this.initialized||await this.initialize(),!this.config.enableLearning)return E(new Error("Pattern learning is disabled"));if(!e.embedding){let n=await this.embedForPatterns(`${e.name} ${e.description} ${e.context?.tags?.join(" ")||""}`);n!==null&&(this.embeddingProvenance.has(n)||!!T()?.spaceId)?e={...e,embedding:n}:m.debug("No embedding runtime provenance; storing pattern without a vector",{name:e.name})}let r=await this.patternStore.create(e),t=r.success?r.value:null;if(!r.success&&r.error instanceof Y&&r.error.disposition==="COMMITTED_PENDING_INDEX")try{t=await this.patternStore.get(r.error.patternId)}catch(n){m.warn("Committed pattern lookup failed",{patternId:r.error.patternId,error:f(n)})}if(t){let n=t;if(k().then(a=>a.appendWhenUnlocked("PATTERN_CREATE",{patternId:n.id,domain:n.qeDomain,confidence:n.confidence,name:n.name},"reasoning-bank")).catch(a=>{m.warn("Witness chain PATTERN_CREATE failed",{error:f(a)})}),this.rvfDualWriter&&n.embedding&&n.embedding.length>0)try{this.rvfDualWriter.writePattern(n.id,n.embedding)}catch(a){m.warn("RVF dual-write failed (non-fatal)",{patternId:n.id,error:f(a)})}}return r}async searchPatterns(e,r){this.initialized||await this.initialize();let t=e,n=!0;if(typeof e=="string")if(e.trim()==="")n=!1,t="";else{let a=await this.embedForPatterns(e);t=a&&this.embeddingProvenance.has(a)?a:e,n=Array.isArray(t)}return this.patternStore.search(t,{...r,textQuery:typeof e=="string"&&e.trim()?e:r?.textQuery,useVectorSearch:n,embeddingSpaceId:typeof e=="string"?Array.isArray(t)?this.embeddingProvenance.get(t):void 0:r?.embeddingSpaceId})}async getPattern(e){return this.initialized||await this.initialize(),this.patternStore.get(e)}async recordOutcome(e){if(this.initialized||await this.initialize(),!this.config.enableLearning)return C(void 0);let r=await this.patternStore.recordUsage(e.patternId,e.success,e.metrics,e.feedback);if(r.success){this.stats.learningOutcomes++,J(e.metrics)==="measured"&&(this.stats.measuredOutcomes++,e.success&&this.stats.successfulOutcomes++),k().then(o=>o.appendWhenUnlocked("PATTERN_UPDATE",{patternId:e.patternId,success:e.success},"reasoning-bank")).catch(o=>{m.warn("Witness chain PATTERN_UPDATE failed",{error:f(o)})});let n=await this.getPattern(e.patternId),a=this.getPromotionDeps();n&&await he(n,a)&&(await W(e.patternId,a),m.info("Pattern promoted to long-term",{name:n.name}))}return r}async promotePattern(e){return this.initialized||await this.initialize(),await this.getPattern(e)?W(e,this.getPromotionDeps()):E(new Error(`Pattern not found: ${e}`))}getPromotionDeps(){return{patternStore:this.patternStore,coherenceService:this.coherenceService,eventBus:this.eventBus,coherenceThreshold:this.config.coherenceThreshold||.4,getSqliteStore:this.getSqliteStore.bind(this),rvfDualWriter:this.rvfDualWriter,searchPatterns:this.searchPatterns.bind(this),getPattern:this.getPattern.bind(this)}}async routeTask(e){if(this.initialized||await this.initialize(),!this.config.enableRouting)return E(new Error("Task routing is disabled"));this.stats.routingRequests++;try{let r=e.domain?[e.domain]:I(e.task);r.length===0&&r.push("test-generation");let t=await this.embedForPatterns(e.task),n=t?this.embeddingProvenance.get(t):void 0,a=await this.patternStore.search(t&&n?t:e.task,{limit:this.config.maxRoutingCandidates,domain:r[0],useVectorSearch:!!n,textQuery:e.task,embeddingSpaceId:n}),o=a.success?a.value.map(p=>p.pattern):[],s=new Map;for(let[p,v]of Object.entries(x)){let P=o.filter(ye=>v.domains.includes(ye.qeDomain)).length;P>0&&s.set(p,P)}let l=pe({taskType:de(e.task),priority:"normal",domain:r[0]}),u=this.buildQValueLookup(l),c=Q(r,e.capabilities,s,this.config.routingWeights,x,e.context?.language,u),g=1;try{let p=me(),v=le({envOverride:process.env.AQE_ROUTER_EXPLORATION_RATE,topologyCritical:p});g=v.safetyMultiplier,ue(c,v.epsilon)}catch{}let d=c[0],h=c.slice(1,4),y=[];if(this.config.enableGuidance&&r.length>0){let p=M(r[0],{framework:e.context?.framework,language:e.context?.language,includeAntiPatterns:!0});y.push(...p.slice(0,5))}this.stats.totalRoutingConfidence+=d.score;let w=c.reduce((p,v)=>p+(v.qWeight??0),0),S=c.length>0?w/c.length:0,b={recommendedAgent:d.agent,confidence:d.score,alternatives:h.map(p=>({agent:p.agent,score:p.score})),domains:r,patterns:o,guidance:y,reasoning:d.reasoning.join("; "),exploration:d.exploration===!0,criticality:g,qWeight:S};return C(oe(e.includePatternGuidance,b,a.success?a.value:[]))}catch(r){return E(z(r))}}buildQValueLookup(e){try{let r=$();if(!r.isInitialized())return()=>{};let t=r.getDatabase();if(!t.prepare("SELECT 1 FROM sqlite_master WHERE type='table' AND name='rl_q_values'").get())return()=>{};let a=t.prepare(`
|
|
315
315
|
SELECT q_value, visits FROM rl_q_values
|
|
316
316
|
WHERE algorithm = 'q-learning'
|
|
317
317
|
AND agent_id = 'aqe-hook-router'
|
|
318
318
|
AND state_key = ?
|
|
319
319
|
AND action_key = ?
|
|
320
|
-
`);return o=>{try{let s=a.get(e,o);return s?{qValue:s.q_value,visits:s.visits}:void 0}catch{return}}}catch{return()=>{}}}getGuidance(e,r){return
|
|
320
|
+
`);return o=>{try{let s=a.get(e,o);return s?{qValue:s.q_value,visits:s.visits}:void 0}catch{return}}}catch{return()=>{}}}getGuidance(e,r){return _(e)}generateContext(e,r){return N(e,r||{})}checkAntiPatterns(e,r){return K(e,r)}async embed(e){if(this.config.useONNXEmbeddings)try{let{computeRealEmbedding:r}=await import("./real-embeddings-II6CXTCI.js"),t=await r(e);if(t.length!==this.config.embeddingDimension)return ge(t,this.config.embeddingDimension);let n=T()?.spaceId;return n&&this.embeddingProvenance.set(t,n),t}catch(r){let{isUsingEndpoint:t}=await import("./real-embeddings-II6CXTCI.js");if(t())throw r;process.env.DEBUG&&m.warn("ONNX embeddings unavailable, using hash fallback",{error:f(r)})}return fe(e,this.config.embeddingDimension)}async embedForPatterns(e){if(!this.embedderRecovery.isAvailable())return null;try{return await this.embed(e)}catch(r){let t=f(r),n="Embedder failed: storing and searching patterns by text only";return this.embedderRecovery.markUnavailable(t)?m.warn(n,{error:t}):m.debug(n,{error:t}),null}}getEmbedderFailure(){return this.embedderRecovery.unavailableReason}async getStats(){this.initialized||await this.initialize();let e=await this.patternStore.getStats(),r={};for(let c of X)r[c]=e.byDomain[c]||0;let t=this.stats.routingRequests,n=this.stats.routingRequests>0?this.stats.totalRoutingConfidence/this.stats.routingRequests:0,a=this.stats.learningOutcomes,o=this.stats.measuredOutcomes,s=this.stats.learningOutcomes-this.stats.measuredOutcomes,l=this.stats.successfulOutcomes;try{let c=this.getSqliteStore().getAggregateOutcomeStats();c.routingRequests>t&&(t=c.routingRequests,n=c.avgRoutingConfidence),c.learningOutcomes>a&&(a=c.learningOutcomes,o=c.measuredOutcomes,s=c.unmeasuredOutcomes,l=c.successfulOutcomes)}catch{}let u=o>0?l/o:null;return{totalPatterns:e.totalPatterns,byDomain:r,routingRequests:t,avgRoutingConfidence:n,learningOutcomes:a,measuredOutcomes:o,unmeasuredOutcomes:s,patternSuccessRate:u,...u===null?{evidenceStatus:"insufficient-evidence"}:{},patternStoreStats:e}}async dispose(){if(await this.patternStore.dispose(),this.sqliteStore&&(this.sqliteStore.close(),this.sqliteStore=null),this.rvfDualWriter){try{this.rvfDualWriter.close()}catch{}this.rvfDualWriter=null}this.initialized=!1}};function Mt(i,e,r,t){return new B(i,e,r,t)}export{O as a,q as b,x as c,de as d,Q as e,F as f,B as g,Mt as h};
|
|
@@ -0,0 +1,12 @@
|
|
|
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.17");process.exit(0)}
|
|
2
|
+
import{c as ne,d as Se}from"./chunk-LRKLATSH.js";import{a as H,b as F,d as re,e as G}from"./chunk-CXCMATZ6.js";import{a as O,b as ie,d as W}from"./chunk-ZP5AWQRO.js";import{c as L,d as Ie}from"./chunk-GPPTRKEM.js";import{a as x,e as te}from"./chunk-J7Q5TXFZ.js";W();te();W();import*as _ from"node:http";import*as q from"node:https";import{createHash as Te}from"node:crypto";import{URL as oe}from"node:url";var D={model:"Xenova/all-MiniLM-L6-v2",expectedDim:384,connectTimeoutMs:5e3,requestTimeoutMs:3e4,failureThreshold:3,failureWindowMs:6e4},X="AQE embedder endpoint identity canary v1",Re=X,xe="/v1/embeddings";function se(n){if(n.startsWith("unix:"))return n;try{let e=new oe(n);return e.username||e.password?(e.username="",e.password="",e.toString().replace(/\/$/,"")):n}catch{return n}}function Ae(n){if(n.startsWith("unix:")){let i=n.slice(5);if(!i.startsWith("/"))throw new Error(`unix endpoint must be an absolute path: ${n}`);return{transport:"unix",socketPath:i,safeUrl:n}}let e=new oe(n);if(e.protocol!=="http:"&&e.protocol!=="https:")throw new Error(`unsupported embedder endpoint protocol: ${e.protocol}`);return(e.username||e.password)&&(console.warn("[EmbedderEndpointClient] endpoint URL contained userinfo; stripping. Use AQE_EMBEDDER_TOKEN env var for credentials."),e.username="",e.password=""),{transport:e.protocol==="https:"?"https":"http",host:e.hostname,port:e.port?Number(e.port):e.protocol==="https:"?443:80,protocol:e.protocol,safeUrl:e.toString().replace(/\/$/,"")}}var M=class extends Error{constructor(t,i){super(`[EmbedderEndpointClient] ${t} timeout after ${i}ms`);this.phase=t;this.limitMs=i;this.name="EmbedderEndpointTimeoutError"}phase;limitMs},j=class extends Error{constructor(t,i){super(`[EmbedderEndpointClient] endpoint identity changed since this process bound to it (fingerprint ${t.fingerprint} -> ${i.fingerprint}, dim ${t.dim} -> ${i.dim}) at ${i.endpoint}; restart to use the new embedding space`);this.bound=t;this.current=i;this.name="EmbedderEndpointIdentityChangedError"}bound;current},K=class{constructor(e,t,i=()=>{},o=()=>{}){this.threshold=e;this.windowMs=t;this.onRecover=i;this.onTrip=o}threshold;windowMs;onRecover;onTrip;failures=[];trippedAt=null;recordSuccess(){this.failures=[],this.trippedAt=null}recordFailure(e=!1){if(this.trippedAt!==null)return;let t=Date.now();this.failures=this.failures.filter(i=>t-i<this.windowMs),this.failures.push(t),(e||this.failures.length>=this.threshold)&&this.trip()}isOpen(){return this.trippedAt===null?!1:Date.now()-this.trippedAt>=this.windowMs?(this.failures=[],this.trippedAt=null,this.onRecover(),!1):!0}trip(){this.trippedAt=Date.now(),this.onTrip()}getState(){return{open:this.isOpen(),failures:this.failures.length,trippedAt:this.trippedAt}}};function Ce(n,e){return n.fingerprint===e.fingerprint&&n.dim===e.dim}var z=class{parsed;agent;breaker;opts;cachedIdentity=null;boundIdentity=null;boundCanary=null;identityChange=null;probeInFlight=null;trialPending=!1;inFlight=new Set;constructor(e){if(this.opts={endpoint:e.endpoint,token:e.token,model:e.model??D.model,expectedDim:e.expectedDim??D.expectedDim,connectTimeoutMs:e.connectTimeoutMs??D.connectTimeoutMs,requestTimeoutMs:e.requestTimeoutMs??D.requestTimeoutMs,failureThreshold:e.failureThreshold??D.failureThreshold,failureWindowMs:e.failureWindowMs??D.failureWindowMs,tlsOptions:e.tlsOptions},this.parsed=Ae(e.endpoint),this.parsed.transport==="https"){let t=e.tlsOptions??{};this.agent=new q.Agent({keepAlive:!0,ca:t.ca,cert:t.cert,key:t.key,rejectUnauthorized:t.rejectUnauthorized!==!1,servername:t.servername})}else this.agent=new _.Agent({keepAlive:!0});this.breaker=new K(this.opts.failureThreshold,this.opts.failureWindowMs,()=>{this.cachedIdentity=null,this.trialPending=!0},()=>this.abandonInFlight())}abandonInFlight(){if(this.inFlight.size===0)return;let e=new Error(`[EmbedderEndpointClient] circuit breaker opened for ${this.parsed.safeUrl} \u2014 request abandoned`);for(let t of[...this.inFlight])t(e)}needsTrial(){return this.breaker.isOpen()||this.trialPending}startTrialProbe(){this.probeInFlight||this.probe().catch(()=>{this.breaker.trip()})}getSafeEndpoint(){return this.parsed.safeUrl}async embed(e){if(e.length===0)return[];if(this.breaker.isOpen())throw this.identityChange?this.identityChange:new Error(`[EmbedderEndpointClient] circuit breaker open for ${this.parsed.safeUrl} \u2014 fast-failing`);if(this.cachedIdentity===null){if(this.trialPending)throw this.startTrialProbe(),new Error(`[EmbedderEndpointClient] circuit breaker half-open for ${this.parsed.safeUrl} \u2014 trial probe running, fast-failing`);await this.ensureProbed()}try{let t=await this.postEmbeddings(e),i=this.decodeAndNormalize(t,e.length);return this.breaker.recordSuccess(),i}catch(t){throw this.breaker.recordFailure(t instanceof M),t}}async probe(){return this.probeInFlight?this.probeInFlight:(this.probeInFlight=this.doProbe().finally(()=>{this.probeInFlight=null}),this.probeInFlight)}async ensureProbed(){return this.cachedIdentity?this.cachedIdentity:this.probe()}async doProbe(){let e;try{let r=await this.postEmbeddings([Re]);e=this.decodeAndNormalize(r,1)[0],this.breaker.recordSuccess()}catch(r){throw this.breaker.recordFailure(r instanceof M),r}if(!e||e.length!==this.opts.expectedDim)throw new Error(`[EmbedderEndpointClient] dim mismatch: expected ${this.opts.expectedDim}, got ${e?.length??0} from ${this.parsed.safeUrl}`);let t=Buffer.alloc(e.length*2);for(let r=0;r<e.length;r++){let s=Math.max(-32768,Math.min(32767,Math.round(e[r]*32767)));t.writeInt16LE(s,r*2)}let i=Te("sha256").update(t).digest("hex").slice(0,16),o={dim:e.length,fingerprint:i,endpoint:this.parsed.safeUrl};return this.boundIdentity&&this.boundCanary?this.isBoundModel(o,e)||this.refuseIdentityChange(o):(this.boundIdentity=o,this.boundCanary=e),this.identityChange=null,this.cachedIdentity=this.boundIdentity,this.trialPending=!1,this.cachedIdentity}isBoundModel(e,t){let i=this.boundIdentity;return e.dim!==i.dim?!1:e.fingerprint===i.fingerprint?!0:O(this.boundCanary,t)>=F}refuseIdentityChange(e){let t=this.boundIdentity,i=this.identityChange,o=new j(t,e);throw this.identityChange=o,this.cachedIdentity=null,this.trialPending=!0,this.breaker.trip(),(!i||!Ce(i.current,e))&&console.warn(`${o.message}. Embedding requests are refused.`),o}getCachedIdentity(){return this.cachedIdentity}getBoundIdentity(){return this.boundIdentity}getBoundCanary(){return this.boundCanary}getBreakerState(){return this.breaker.getState()}async probeThroughOpenBreaker(){try{return await this.probe()}catch(e){throw this.breaker.trip(),e}}close(){this.agent.destroy()}decodeAndNormalize(e,t){if(!e||typeof e!="object"||!Array.isArray(e.data))throw new Error("[EmbedderEndpointClient] response missing data array");let i=e.data;if(i.length!==t)throw new Error(`[EmbedderEndpointClient] response count mismatch: expected ${t}, got ${i.length}`);let o=i.map((r,s)=>({idx:typeof r.index=="number"?r.index:s,embedding:r.embedding}));return o.sort((r,s)=>r.idx-s.idx),o.map(({embedding:r},s)=>{if(typeof r=="string")throw new Error(`[EmbedderEndpointClient] received base64 embedding at position ${s} \u2014 server ignored encoding_format=float. Configure the server to return float arrays.`);if(!Array.isArray(r))throw new Error(`[EmbedderEndpointClient] missing embedding at position ${s}`);if(r.length!==this.opts.expectedDim)throw new Error(`[EmbedderEndpointClient] dim mismatch at position ${s}: expected ${this.opts.expectedDim}, got ${r.length}`);return ie(r)})}postEmbeddings(e){let t=JSON.stringify({model:this.opts.model,input:e,encoding_format:"float"});return this.request(xe,t)}request(e,t){let i={"content-type":"application/json","content-length":Buffer.byteLength(t),accept:"application/json"};this.opts.token&&(i.authorization=`Bearer ${this.opts.token}`);let o={method:"POST",path:e,headers:i,agent:this.agent},r,s;this.parsed.transport==="unix"?(r={...o,socketPath:this.parsed.socketPath},s=_.request):(r={...o,host:this.parsed.host,port:this.parsed.port,protocol:this.parsed.protocol},s=this.parsed.transport==="https"?q.request:_.request);let a=this.parsed.safeUrl,l=this.opts.connectTimeoutMs,u=this.opts.requestTimeoutMs;return new Promise((v,N)=>{let f=!1,g=()=>{},b=d=>{f||(f=!0,g(),this.inFlight.delete(T),v(d))},w=d=>{f||(f=!0,g(),this.inFlight.delete(T),N(d))},T=d=>{w(d),E.destroy(d)},E=s(r,d=>{let I=[];d.on("data",h=>I.push(Buffer.from(h))),d.on("end",()=>{let h=Buffer.concat(I).toString("utf-8");if(!d.statusCode||d.statusCode<200||d.statusCode>=300){w(new Error(`[EmbedderEndpointClient] HTTP ${d.statusCode} from ${a}: ${h.slice(0,200)}`));return}try{let R=JSON.parse(h);b(R)}catch(R){w(new Error(`[EmbedderEndpointClient] invalid JSON from ${a}: ${R.message}`))}}),d.on("error",h=>w(h))});E.on("socket",d=>{d.setTimeout(l);let I=()=>{d.setTimeout(u)};d.connecting?d.once("connect",I):I();let h=()=>{let R=d.connecting?"connect":"request",$=d.connecting?l:u,ee=new M(R,$);w(ee),E.destroy(ee)};d.on("timeout",h),g=()=>{d.removeListener("timeout",h),d.removeListener("connect",I)},f&&g()}),E.on("error",d=>w(d)),this.inFlight.add(T),E.write(t),E.end()})}};Ie();import{join as ae,resolve as Pe}from"node:path";import{existsSync as Ne,mkdirSync as De}from"node:fs";import{createRequire as ke}from"node:module";var Oe=ke(import.meta.url);function Me(){let n=process.env.AQE_MEMORY_PATH;return n&&n.length>0?n===":memory:"?n:Pe(L(),n):ae(L(),".agentic-qe","memory.db")}var de="_system",le="embedder_identity:",k=null,Y=!1;function ce(){if(k)return k;if(Y)return null;try{let n=Oe("better-sqlite3"),e=Me(),t=ae(e,"..");Ne(t)||De(t,{recursive:!0});let i=new n(e);return i.pragma("journal_mode = WAL"),i.pragma("busy_timeout = 5000"),i.exec(`
|
|
3
|
+
CREATE TABLE IF NOT EXISTS kv_store (
|
|
4
|
+
key TEXT NOT NULL,
|
|
5
|
+
namespace TEXT NOT NULL,
|
|
6
|
+
value TEXT NOT NULL,
|
|
7
|
+
expires_at INTEGER,
|
|
8
|
+
created_at INTEGER DEFAULT (strftime('%s', 'now') * 1000),
|
|
9
|
+
PRIMARY KEY (namespace, key)
|
|
10
|
+
);
|
|
11
|
+
CREATE INDEX IF NOT EXISTS idx_kv_namespace ON kv_store(namespace);
|
|
12
|
+
`),k=i,i}catch{return Y=!0,null}}function pe(n){let e=ce();if(!e)return null;try{let t=e.prepare("SELECT value FROM kv_store WHERE namespace = ? AND key = ?").get(de,le+n);if(!t)return null;let i=JSON.parse(t.value);return!i.fingerprint||typeof i.dim!="number"?null:{fingerprint:i.fingerprint,dim:i.dim,endpoint:i.endpoint}}catch{return null}}function ue(n){let e=ce();if(!e)return;let t={fingerprint:n.fingerprint,dim:n.dim,endpoint:n.endpoint,updatedAt:Date.now()};e.prepare("INSERT OR REPLACE INTO kv_store (key, namespace, value) VALUES (?, ?, ?)").run(le+n.endpoint,de,JSON.stringify(t))}function me(){if(k)try{k.close()}catch{}k=null,Y=!1}W();Se();te();var ge="_system",he="embedding_space:";function fe(n,e){return n.provider===e.provider&&n.model===e.model&&n.dimensions===e.dimensions&&(n.pooling??null)===(e.pooling??null)&&n.normalized===e.normalized&&(n.preprocessingVersion??null)===(e.preprocessingVersion??null)&&(n.implementation??null)===(e.implementation??null)}function _e(n,e,t,i){let o=i.filter(a=>a.canaryText===e&&a.canary.length===t.length&&fe(a.identity,n)),r=o.find(a=>a.identity.runtimeFingerprint===n.runtimeFingerprint);if(r)return{entry:r,exact:!0};let s=null;for(let a of o){let l=O(a.canary,t);l>=F&&(!s||l>s.cosine)&&(s={entry:a,cosine:l})}return s?{entry:s.entry,exact:!1}:null}function $e(n){let e=n.prepare("SELECT value FROM kv_store WHERE namespace = ? AND key LIKE ?").all(ge,`${he}%`),t=[];for(let i of e){let o=Fe(i.value);o&&t.push(o)}return t}function Fe(n){let e;try{e=JSON.parse(n)}catch{return null}let{identity:t,canaryText:i,canary:o}=e;return e.version!==1||!t||typeof t.spaceId!="string"||typeof t.runtimeFingerprint!="string"||typeof t.dimensions!="number"||typeof i!="string"||!Array.isArray(o)||o.length!==t.dimensions||!o.every(r=>typeof r=="number"&&Number.isFinite(r))?null:{identity:t,canaryText:i,canary:o}}function ze(n,e){let t={version:1,createdAt:Date.now(),...e};return ne(n,()=>{n.prepare("INSERT OR IGNORE INTO kv_store (key, namespace, value) VALUES (?, ?, ?)").run(he+e.identity.spaceId,ge,JSON.stringify(t))})}function be(n,e,t,i){let o=()=>({identity:e,resolution:"unavailable",otherSpaces:0,registration:Promise.resolve()});if(!n)return o();let r;try{r=$e(n)}catch(u){return console.warn(`[EmbeddingSpaceRegistry] could not read registered embedding spaces (${x(u)}); using the derived space id`),o()}let s=_e(e,t,i,r);if(s)return{identity:s.entry.identity,resolution:s.exact?"matched-exact":"matched-cosine",otherSpaces:0,registration:Promise.resolve()};let a=r.filter(u=>u.canaryText===t&&fe(u.identity,e)).length,l=Promise.resolve().then(()=>ze(n,{identity:e,canaryText:t,canary:[...i]})).catch(u=>{console.warn(`[EmbeddingSpaceRegistry] could not register embedding space ${e.spaceId.slice(0,12)} (${x(u)}); it is registered at a later start`)});return{identity:e,resolution:"registered",otherSpaces:a,registration:l}}var V=null,y=null,C=null,S=!1,A="",Q=null,p=null,c=null,P=null,Z={modelName:"Xenova/all-MiniLM-L6-v2",quantized:!0,enableCache:!0,maxCacheSize:1e4,endpoint:process.env.AQE_EMBEDDER_ENDPOINT,endpointToken:process.env.AQE_EMBEDDER_TOKEN},m=new Map,ye=36e5;function J(n){return c?`endpoint:${c.fingerprint}:${n}`:`inproc:${n}`}function we(n){let e=n.trim();return!!(e.startsWith("{")&&/["']metrics["']/.test(e)||e.startsWith("[")&&e.endsWith("]")&&e.length>50||(e.match(/[a-zA-Z]/g)||[]).length/Math.max(e.length,1)<.3&&e.length>20)}async function B(n={},e=!1){if(S&&!e)throw new Error(`Transformer initialization previously failed: ${A}`);if(C)return C;let t={...Z,...n};return C=(async()=>{try{if(t.endpoint){let v=se(t.endpoint);console.log(`[RealEmbeddings] Using external embedder endpoint: ${v}`),p=new z({endpoint:t.endpoint,token:t.endpointToken,model:t.modelName,expectedDim:U()}),c=await p.probe();let N=G({provider:"openai-compatible-endpoint",model:t.modelName,dimensions:c.dim,pooling:"mean",normalized:!0,preprocessingVersion:"aqe-text-v1",implementation:c.endpoint,runtimeFingerprint:c.fingerprint}),f=p.getBoundCanary(),g=f?await Ee(N,X,[...f]):null;P=g?.identity??N,console.log(`[RealEmbeddings] Endpoint identity: dim=${c.dim} fingerprint=${c.fingerprint}`);try{let b=pe(c.endpoint),w=g?.resolution==="matched-exact"||g?.resolution==="matched-cosine",T=b!==null&&b.fingerprint!==c.fingerprint||(g?.otherSpaces??0)>0;!w&&T&&console.warn(`[RealEmbeddings] WARNING: endpoint identity changed since last run. Previous fingerprint=${b?.fingerprint??"unknown"} dim=${b?.dim??"unknown"}, current fingerprint=${c.fingerprint} dim=${c.dim}. Vectors written before this change may no longer be comparable.`),ue(c)}catch(b){console.warn(`[RealEmbeddings] Could not persist endpoint identity: ${x(b)}`)}y=qe(p),S=!1,A="";return}let i;try{i=await import("./transformers-4MRPXCPU.js")}catch{throw new Error('In-process embeddings require the optional package "@huggingface/transformers", which is not installed. Configure an embedding endpoint (EmbeddingConfig.endpoint / AQE_EMBEDDER_ENDPOINT) so no local model is loaded. Installing @huggingface/transformers@4.2.0 is an explicit security opt-in: its compatible dependency chain currently has unresolved HIGH advisories GHSA-xcpc-8h2w-3j85 and GHSA-f88m-g3jw-g9cj.')}V=i.pipeline,console.log(`[RealEmbeddings] Loading model: ${t.modelName}`);let o=performance.now();y=await V("feature-extraction",t.modelName,{quantized:t.quantized});let r=y;if(!r)throw new Error("Transformer pipeline returned no embedding model");let s=await r(H,{pooling:"mean",normalize:!0}),a=Array.from(s.data),l=G({provider:"huggingface-transformers",model:t.modelName,dimensions:a.length,pooling:"mean",normalized:!0,preprocessingVersion:"aqe-text-v1",implementation:`transformers:${t.quantized?"quantized":"full"}`,runtimeFingerprint:re(a)});P=(await Ee(l,H,a)).identity,S=!1,A="";let u=performance.now()-o;console.log(`[RealEmbeddings] Model loaded in ${u.toFixed(0)}ms`)}catch(i){throw S=!0,A=x(i),new Error(`Failed to initialize transformer model: ${A}`)}})(),C}var ve=Promise.resolve();function at(){return ve}async function Ee(n,e,t){let i=null;try{let{getOpenUnifiedMemoryDatabase:r}=await import("./unified-memory-2VMGSGQL.js");i=r()}catch(r){console.warn(`[RealEmbeddings] embedding-space registry unavailable: ${x(r)}`)}let o=be(i,n,e,t);return ve=o.registration,o.resolution==="matched-cosine"&&console.log(`[RealEmbeddings] Embedding space ${o.identity.spaceId.slice(0,12)} kept: runtime fingerprint ${n.runtimeFingerprint} is within the round-trip cosine of its reference`),o}function qe(n){return async e=>{let t=Array.isArray(e)?e:[e],i=await n.embed(t),o=i[0]?.length??U(),r=new Float32Array(t.length*o);for(let s=0;s<i.length;s++)r.set(i[s],s*o);return{data:r,dims:[t.length,o]}}}async function dt(n,e={}){let t={...Z,...e};if(we(n))return new Array(U()).fill(0);if(y||await B(e),!y)throw new Error("Embedding model failed to initialize");let i=J(n);if(t.enableCache){let l=m.get(i);if(l&&Date.now()-l.timestamp<ye)return l.embedding}let o=performance.now(),r=await y(n,{pooling:"mean",normalize:!0}),s=Array.from(r.data),a=performance.now()-o;if(a>500&&console.warn(`[RealEmbeddings] Slow embedding computation: ${a.toFixed(1)}ms for "${n.slice(0,50)}..."`),t.enableCache){if(m.size>=t.maxCacheSize){let l=m.keys().next().value;l&&m.delete(l)}m.set(i,{embedding:s,timestamp:Date.now()})}return s}async function lt(n,e={}){let t={...Z,...e},i=[],o=[],r=new Array(n.length).fill(null),s=[];for(let a=0;a<n.length;a++)we(n[a])?r[a]=new Array(U()).fill(0):s.push(a);if(s.length===0)return r;if(y||await B(e),!y)throw new Error("Embedding model failed to initialize");if(t.enableCache)for(let a of s){let l=m.get(J(n[a]));l&&Date.now()-l.timestamp<ye?r[a]=l.embedding:(i.push(n[a]),o.push(a))}else for(let a of s)i.push(n[a]),o.push(a);if(i.length>0){let a=performance.now(),l=32;for(let v=0;v<i.length;v+=l){let N=Math.min(v+l,i.length),f=i.slice(v,N),g=await y(f,{pooling:"mean",normalize:!0}),b=g.dims||[f.length,384],w=b[0],T=b[1];for(let E=0;E<w;E++){let d=E*T,I=Array.from(g.data.slice(d,d+T)),h=v+E,R=o[h];if(r[R]=I,t.enableCache){if(m.size>=t.maxCacheSize){let $=m.keys().next().value;$&&m.delete($)}m.set(J(i[h]),{embedding:I,timestamp:Date.now()})}}}let u=performance.now()-a;console.log(`[RealEmbeddings] Batch computed ${i.length} embeddings in ${u.toFixed(0)}ms`)}return r.filter(a=>a!==null)}function ct(){m.clear(),console.log("[RealEmbeddings] Cache cleared")}function pt(){return{size:m.size,hitRate:0}}function ut(){return!S&&y!==null}function U(){return 384}function mt(){V=null,y=null,C=null,S=!1,A="",m.clear(),p&&p.close(),p=null,c=null,P=null,me()}function gt(){S&&(S=!1,A="",C=null,p&&p.close(),p=null,c=null)}async function ht(n={}){if(S)return Q??=Be(n).finally(()=>{Q=null}),Q;let e=p;!e||!e.needsTrial()||await e.probeThroughOpenBreaker()}async function Be(n){p&&p.close(),p=null,c=null,C=null,await B(n,!0)}function ft(){return p!==null}function bt(){return c}function Et(){return P}async function yt(){if(P)return P;let n=process.env.AQE_EMBEDDER_ENDPOINT;return n?(await B({endpoint:n,endpointToken:process.env.AQE_EMBEDDER_TOKEN}),P):null}export{se as a,Z as b,at as c,dt as d,lt as e,ct as f,pt as g,ut as h,U as i,mt as j,gt as k,ht as l,ft as m,bt as n,Et as o,yt as p};
|
|
@@ -1,3 +1,3 @@
|
|
|
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.
|
|
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.17");process.exit(0)}
|
|
2
2
|
import*as h from"fs";import*as s from"path";import{isCollection as v,isScalar as q,parseDocument as _,visit as A}from"yaml";var m={version:"1",name:"aqe-ci",phases:[{name:"Test Generation",type:"test",enabled:!0,config:{target:".",framework:"vitest",type:"unit"},continueOnFailure:!1,timeout:300},{name:"Coverage Analysis",type:"coverage",enabled:!0,config:{target:".",threshold:80},continueOnFailure:!0,timeout:300},{name:"Security Scan",type:"security",enabled:!0,config:{sast:!0},continueOnFailure:!0,timeout:300},{name:"Quality Gate",type:"quality-gate",enabled:!0,config:{},continueOnFailure:!1,timeout:60}],output:{format:"json",directory:".aqe-ci-output",combinedReport:!0},qualityGate:{enforced:!0,thresholds:{coverage:80,security:"medium",quality:70}}},x=[".aqe-ci.yml",".aqe-ci.yaml","aqe-ci.yml","aqe-ci.yaml"];function R(u=process.cwd()){let f=s.resolve(u);for(let n=0;n<10;n++){for(let r of x){let a=s.join(f,r);if(h.existsSync(a))return a}let i=s.dirname(f);if(i===f)break;f=i}return null}function G(u){if(!h.existsSync(u))return{success:!1,errors:[`Config file not found: ${u}`]};let f;try{f=h.readFileSync(u,"utf-8")}catch(n){return{success:!1,errors:[`Failed to read config: ${n}`]}}return k(f,u)}var w=1e4,I=1e4,b=20,$=new Set(["__proto__","constructor","prototype"]);function g(u){return u!==null&&typeof u=="object"&&!Array.isArray(u)&&(Object.getPrototypeOf(u)===Object.prototype||Object.getPrototypeOf(u)===null)}function P(u){let f=u.split(`
|
|
3
3
|
`);if(f.length>w)throw new Error(`YAML exceeds maximum allowed lines (${w})`);if(f.some(a=>a.length>I))throw new Error(`YAML exceeds maximum line length (${I})`);let n=_(u,{prettyErrors:!1,merge:!0});if(n.errors.length)throw new Error(n.errors.map(a=>a.message).join("; "));A(n,{Collection:(a,l,d)=>{if(d.filter(v).length>=b)throw new Error(`YAML exceeds maximum depth (${b})`)},Pair:(a,l)=>{if(q(l.key)&&$.has(String(l.key.value)))throw new Error(`Unsafe YAML key: ${l.key.value}`)}});let i=n.contents===null?{}:n.toJS({maxAliasCount:100});function r(a,l,d){if(!(a===null||typeof a!="object")){if(l>b)throw new Error(`YAML exceeds maximum depth (${b})`);if(d.has(a))throw new Error("Cyclic YAML aliases are not supported");d.add(a);for(let y of Object.values(a))r(y,l+1,d);d.delete(a)}}if(r(i,0,new Set),!g(i))throw new Error("CI config must be a YAML mapping");return i}function k(u,f){let n;try{n=P(u)}catch(t){return{success:!1,errors:[`Invalid YAML: ${t}`]}}let i=[],r=E();function a(t,e,o,p){let c=t[e];return c===void 0?o:typeof c!="string"||!c.trim()?(i.push(`${p} must be a non-empty string`),o):c}function l(t,e,o,p){let c=t[e];return c===void 0?o:typeof c!="boolean"?(i.push(`${p} must be a boolean`),o):c}if(n.version!==void 0&&(typeof n.version=="number"&&Number.isFinite(n.version)?r.version=String(n.version):r.version=a(n,"version",r.version,"version")),r.name=a(n,"name",r.name,"name"),n.output!==void 0&&(g(n.output)?(r.output.format=a(n.output,"format",r.output.format,"output.format"),r.output.directory=a(n.output,"directory",r.output.directory,"output.directory"),r.output.combinedReport=l(n.output,"combined_report",r.output.combinedReport,"output.combined_report")):i.push("output must be a mapping")),n.quality_gate!==void 0)if(!g(n.quality_gate))i.push("quality_gate must be a mapping");else{let t=n.quality_gate;if(r.qualityGate.enforced=l(t,"enforced",r.qualityGate.enforced,"quality_gate.enforced"),t.thresholds!==void 0)if(!g(t.thresholds))i.push("quality_gate.thresholds must be a mapping");else{for(let e of["coverage","quality"]){let o=t.thresholds[e];o!==void 0&&(typeof o!="number"||!Number.isFinite(o)||o<0||o>100?i.push(`quality_gate.thresholds.${e} must be a finite number between 0 and 100`):r.qualityGate.thresholds[e]=o)}if(t.thresholds.security!==void 0){let e=t.thresholds.security;typeof e!="string"||!["none","low","medium","high"].includes(e)?i.push("quality_gate.thresholds.security must be none, low, medium or high"):r.qualityGate.thresholds.security=e}}}if(n.phases!==void 0)if(r.phases=[],!Array.isArray(n.phases))i.push("phases must be a sequence");else for(let[t,e]of n.phases.entries()){if(!g(e)){i.push(`Phase ${t+1} must be a mapping`);continue}e.name===void 0&&i.push(`Phase ${t+1} must have a name`);let o=a(e,"name","",`Phase ${t+1} name`),p=["test","coverage","security","quality-gate","code-intelligence","custom"];if(!p.includes(e.type)){i.push(`Phase "${o}" has invalid type "${e.type}". Valid: ${p.join(", ")}`);continue}let c=300;e.timeout!==void 0&&(typeof e.timeout!="number"||!Number.isFinite(e.timeout)||e.timeout<=0?i.push(`Phase "${o}" timeout must be a positive finite number`):c=e.timeout),e.config!==void 0&&!g(e.config)&&i.push(`Phase "${o}" config must be a mapping`),r.phases.push({name:o,type:e.type,timeout:c,enabled:l(e,"enabled",!0,`Phase "${o}" enabled`),continueOnFailure:l(e,"continue_on_failure",!1,`Phase "${o}" continue_on_failure`),config:g(e.config)?{...e.config}:{}})}r.phases.length===0&&i.push("Config must have at least one phase");let d=s.resolve(f?s.dirname(f):process.cwd());function y(t){let e=t,o=[];for(;!h.existsSync(e);){let p=s.dirname(e);if(p===e)break;o.unshift(s.basename(e)),e=p}return s.resolve(h.realpathSync(e),...o)}function C(t,e){if(typeof t!="string"||!t.trim()||t.includes("\0")){i.push(`${e} must be a non-empty relative path`);return}let o=s.resolve(d,t),p=s.relative(d,o);if(s.isAbsolute(t)||s.win32.isAbsolute(t)||p===".."||p.startsWith(`..${s.sep}`)||s.isAbsolute(p)){i.push(`${e} must stay inside the project and use a relative path`);return}try{let c=s.relative(y(d),y(o));if(c===".."||c.startsWith(`..${s.sep}`)||s.isAbsolute(c)){i.push(`${e} must stay inside the project (symlink escapes are not allowed)`);return}}catch(c){i.push(`${e} cannot be resolved safely: ${c}`);return}return f?o:t}r.output.directory=C(r.output.directory,"output.directory")??r.output.directory;for(let t of r.phases)if(t.config.target!==void 0){let e=C(t.config.target,`Phase "${t.name}" config.target`);e!==void 0&&(t.config.target=e)}return i.length>0?{success:!1,config:r,errors:i}:{success:!0,config:r,errors:[],configPath:f}}function E(){return{...m,phases:m.phases.map(u=>({...u,config:{...u.config}})),output:{...m.output},qualityGate:{...m.qualityGate,thresholds:{...m.qualityGate.thresholds}}}}export{R as a,G as b,k as c,E as d};
|
|
@@ -1,3 +1,3 @@
|
|
|
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 c,d as 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.17");process.exit(0)}
|
|
2
|
+
import{b as c,d as p}from"./chunk-CMN7PU2H.js";import{a as f}from"./chunk-Z7SKUC6P.js";p();import{existsSync as l,readFileSync as i}from"node:fs";import{join as a}from"node:path";import{execSync as m}from"node:child_process";var s=null,d=0,g=6e4;function S(){s=null,d=0}function b(e){if(s&&Date.now()-d<g)return s;let n=w(e);return s=n,d=Date.now(),n}function w(e){let n=h(e);if(n)return n;let r=v(e);if(r)return r;let t=k(e);return t||{available:!1}}function h(e){let n=a(e,".mcp.json");if(l(n))try{let o=c(i(n,"utf-8"));if(o.mcpServers?.ruflo||o.mcpServers?.["claude-flow"])return{available:!0,method:"mcp-config"}}catch{}let r=a(e,".claude","mcp.json");if(l(r))try{let o=c(i(r,"utf-8"));if(o.mcpServers?.ruflo||o.mcpServers?.["claude-flow"])return{available:!0,method:"mcp-config"}}catch{}let t=a(e,".claude","settings.json");if(l(t))try{let o=c(i(t,"utf-8")),u=o.mcpServers||o.mcp?.servers||{};if(u.ruflo||u["claude-flow"]||u["@anthropic/claude-flow"])return{available:!0,method:"mcp-config"}}catch{}return null}function v(e){let n=a(e,"package.json");if(!l(n))return null;try{let r=c(i(n,"utf-8")),t={...r.dependencies,...r.devDependencies};if(t.ruflo||t["@claude-flow/cli"]||t["claude-flow"])return{available:!0,method:"npm-dependency"}}catch{}return null}function k(e){for(let n of["ruflo","@claude-flow/cli"])try{return{available:!0,method:"npx-cached",version:m(`npx --no-install ${n} --version`,{encoding:"utf-8",timeout:5e3,cwd:e,stdio:["pipe","pipe","pipe"]}).trim().match(/\d+\.\d+\.\d+[\w.-]*/)?.[0]}}catch{}return null}function x(){for(let e of["ruflo","@claude-flow/cli"])try{return f.resolve(`${e}/package.json`),e}catch{}return"ruflo"}function P(){return[" Claude Flow not found \u2014 running in standalone mode.",""," Claude Flow adds optional features:"," - SONA trajectory tracking (reinforcement learning)"," - 3-tier model routing (haiku / sonnet / opus)"," - Codebase pretrain analysis",""," To install later:"," npm install -g ruflo"," claude mcp add ruflo -- npx -y ruflo@3.5.18"," aqe init --auto --with-claude-flow"].join(`
|
|
3
3
|
`)}export{S as a,b,x as c,P as d};
|
|
@@ -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{d as a,e as m}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.17");process.exit(0)}
|
|
2
|
+
import{d as a,e as m}from"./chunk-Q6F3DYZN.js";var o=n=>typeof n=="number"&&Number.isFinite(n)&&n>=0&&n<=100,l=n=>n===null||o(n);function f(n){if(!n||typeof n!="object")return null;let e=n;if(e.measured!==!0||!o(e.line)||!l(e.statement)||!l(e.branch)||!l(e.function))return null;let r=typeof e.files=="number"&&Number.isInteger(e.files)&&e.files>=0?e.files:null;return r===null?null:{line:e.line,branch:e.branch,function:e.function,statement:e.statement,files:r,measured:!0,...e.runStatus==="passed"||e.runStatus==="failed"?{runStatus:e.runStatus}:{}}}function b(n){if(!n||typeof n!="object")return null;let e=n;if(e.measured!==!0||!o(e.line))return null;let r=t=>o(t)?t:null,u=c(e.lines,e.line);return{line:e.line,branch:r(e.branch),function:r(e.function),statement:r(e.statement),measured:!0,...u?{lines:u}:{}}}function c(n,e){if(!n||typeof n!="object")return;let{covered:r,total:u}=n;if(!Number.isSafeInteger(r)||!Number.isSafeInteger(u))return;let t=r,i=u;if(!(i<=0||t<0||t>i||Math.abs(t/i*100-e)>.01))return{covered:t,total:i}}m();var s=class extends Error{constructor(e,r){super(`git ${e.join(" ")} timed out after ${Math.max(0,r)}ms`),this.name="GitTimeoutError"}};async function g(n,e){if(e.timeout<=0)throw new s(n,e.timeout);try{return await a("git",n,{cwd:e.cwd,timeout:e.timeout,maxBuffer:e.maxBuffer,env:{...process.env,GIT_TERMINAL_PROMPT:"0"}})}catch(r){throw r.code==="ETIMEDOUT"?new s(n,e.timeout):r}}export{f as a,b,s as c,g as d};
|
|
@@ -1,3 +1,3 @@
|
|
|
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.
|
|
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.17");process.exit(0)}
|
|
2
2
|
import a from"chalk";import{existsSync as m,statSync as S}from"fs";import{join as p,relative as P}from"path";var l=class{static prompt(t,e){return new Promise(r=>{t.question(e,s=>{r(s)})})}static printStepHeader(t,e,r){console.log(""),console.log(a.cyan(`Step ${t}: ${e}`)),r&&console.log(a.gray(r)),console.log("")}static printWizardHeader(t,e){console.log(""),console.log(a.blue("========================================")),console.log(a.blue.bold(` ${t}`)),console.log(a.blue("========================================")),e&&console.log(a.gray(e)),console.log(a.gray("Press Ctrl+C to cancel at any time")),console.log("")}static printSummaryHeader(){console.log(""),console.log(a.blue("========================================")),console.log(a.blue.bold(" Configuration Summary")),console.log(a.blue("========================================")),console.log("")}static printSummaryField(t,e,r){let s=r?.indent??" ",i=r?.maxItems??5,c=r?.formatValue??(o=>a.cyan(o));if(Array.isArray(e))e.length===0?console.log(a.white(`${s}${t}: ${a.gray("(none)")}`)):e.length<=i?console.log(a.white(`${s}${t}: ${c(e.join(", "))}`)):(console.log(a.white(`${s}${t}:`)),e.slice(0,i).forEach(o=>{console.log(a.gray(`${s} - ${o}`))}),console.log(a.gray(`${s} ... and ${e.length-i} more`)));else{let o=t.padEnd(16);console.log(a.white(`${s}${o}${c(e)}`))}}static printDerivedSettings(t,e=" "){console.log(""),console.log(a.gray(`${e}Derived settings:`));for(let[r,s]of Object.entries(t))console.log(a.gray(`${e} ${r}: ${s}`));console.log("")}};var h=class u{static getSourceDirectories(t){let e=[],r=["src","lib","app","packages","api"];for(let s of r){let i=p(t,s);m(i)&&S(i).isDirectory()&&e.push(s)}return e}static getCoverageTargets(t){let e=u.getSourceDirectories(t),r=["coverage","coverage/lcov.info","coverage/coverage-final.json",".nyc_output"];for(let s of r){let i=p(t,s);m(i)&&e.push(s)}return e}static getSecurityTargets(t){let e=u.getSourceDirectories(t),r=["package.json","package-lock.json","yarn.lock","pnpm-lock.yaml",".env",".env.example","docker-compose.yml","Dockerfile"];for(let s of r){let i=p(t,s);m(i)&&e.push(s)}return e}static getTestSourceFiles(t){let e=[],r=["src","lib","app","packages"];for(let s of r){let i=p(t,s);m(i)&&S(i).isDirectory()&&(e.push(`${s}/**/*.ts`),e.push(s))}return m(p(t,"src"))&&(e.push("src/services/**/*.ts"),e.push("src/utils/**/*.ts"),e.push("src/components/**/*.tsx")),e}static checkPatternsExist(t){return[p(t,".agentic-qe","patterns"),p(t,".agentic-qe","memory.db"),p(t,".aqe","patterns"),p(t,"data","patterns")].some(r=>m(r))}},f=class{static relativePath(t,e){return P(e,t)||"."}static yesNo(t){return t?"Yes":"No"}static enabledDisabled(t){return t?"Enabled":"Disabled"}static percentage(t){return`${t}%`}static truncatedList(t,e=5){return t.length===0?"(none)":t.length<=e?t.join(", "):`${t.slice(0,e).join(", ")}... and ${t.length-e} more`}};import n from"chalk";import{existsSync as w}from"fs";import{resolve as I}from"path";var d=class{constructor(t){this.defaultValue=t}defaultValue;description;getDefaultValue(){return this.defaultValue}success(t){return{value:t,continue:!0}}cancelled(){return{value:this.defaultValue,continue:!1}}error(t){return{value:this.defaultValue,continue:!1,error:t}}};var y=class extends d{id;stepNumber;title;description;options;validValues;constructor(t){super(t.defaultValue),this.id=t.id,this.stepNumber=t.stepNumber,this.title=t.title,this.description=t.description,this.options=t.options,this.validValues=t.validValues}async execute(t){if(t.nonInteractive)return this.success(this.defaultValue);l.printStepHeader(this.stepNumber,this.title,this.description),this.options.forEach(i=>{let c=[];i.isRecommended?c.push(n.green(" (recommended)")):(i.isDefault||i.value===this.defaultValue)&&c.push(n.green(" (default)")),console.log(n.white(` ${i.key}. ${i.label||i.value}${c.join("")}`)),i.description&&console.log(n.gray(` ${i.description}`))}),console.log("");let r=(await l.prompt(t.rl,`Select ${this.title.toLowerCase()} [${n.gray(String(this.defaultValue))}]: `)).trim();if(!r)return this.success(this.defaultValue);let s=parseInt(r,10);return s>=1&&s<=this.options.length?this.success(this.options[s-1].value):this.validValues.includes(r)?this.success(r):(console.log(n.yellow(` Invalid input, using default: ${this.defaultValue}`)),this.success(this.defaultValue))}},b=class extends d{id;stepNumber;title;description;options;validValues;instructions;allowEmpty;constructor(t){super(t.defaultValue),this.id=t.id,this.stepNumber=t.stepNumber,this.title=t.title,this.description=t.description,this.options=t.options,this.validValues=t.validValues,this.instructions=t.instructions,this.allowEmpty=t.allowEmpty??!1}async execute(t){if(t.nonInteractive)return this.success(this.defaultValue);l.printStepHeader(this.stepNumber,this.title,this.description),this.instructions&&(console.log(n.gray(this.instructions)),console.log("")),this.options.forEach(o=>{let N=o.isDefaultSelected||this.defaultValue.includes(o.value)?n.green(" *"):"";console.log(n.white(` ${o.key}. ${o.label||o.value}${N}`)),o.description&&console.log(n.gray(` ${o.description}`))}),console.log(""),console.log(n.gray(" * = included in default selection")),console.log("");let e=this.defaultValue.join(","),s=(await l.prompt(t.rl,`Select options [${n.gray(e)}]: `)).trim();if(!s)return this.success(this.defaultValue);let i=s.split(",").map(o=>o.trim().toLowerCase()).filter(o=>o.length>0),c=[];for(let o of i){let g=parseInt(o,10);g>=1&&g<=this.options.length?c.push(this.options[g-1].value):this.validValues.includes(o)&&c.push(o)}return c.length===0?this.allowEmpty?this.success([]):(console.log(n.yellow(` Invalid input, using default: ${e}`)),this.success(this.defaultValue)):this.success([...new Set(c)])}},v=class extends d{id;stepNumber;title;description;additionalInfo;constructor(t){super(t.defaultValue),this.id=t.id,this.stepNumber=t.stepNumber,this.title=t.title,this.description=t.description,this.additionalInfo=t.additionalInfo}async execute(t){if(t.nonInteractive)return this.success(this.defaultValue);l.printStepHeader(this.stepNumber,this.title,this.description),this.additionalInfo&&(console.log(n.gray(this.additionalInfo)),console.log(""));let e=this.defaultValue?"Y/n":"y/N",s=(await l.prompt(t.rl,`${this.title}? [${n.gray(e)}]: `)).trim().toLowerCase();return s===""?this.success(this.defaultValue):s==="n"||s==="no"?this.success(!1):s==="y"||s==="yes"?this.success(!0):this.success(this.defaultValue)}},x=class extends d{id;stepNumber;title;description;presets;min;max;constructor(t){super(t.defaultValue),this.id=t.id,this.stepNumber=t.stepNumber,this.title=t.title,this.description=t.description,this.presets=t.presets,this.min=t.min,this.max=t.max}async execute(t){if(t.nonInteractive)return this.success(this.defaultValue);l.printStepHeader(this.stepNumber,this.title,this.description),this.presets&&this.presets.length>0&&(this.presets.forEach(i=>{let c=i.value===this.defaultValue?n.green(" (default)"):"";console.log(n.gray(` ${i.key}. ${i.label}${c}`))}),this.min!==void 0&&this.max!==void 0&&console.log(n.gray(` Or enter a custom number (${this.min}-${this.max})`)),console.log(""));let r=(await l.prompt(t.rl,`${this.title} [${n.gray(String(this.defaultValue))}]: `)).trim();if(!r)return this.success(this.defaultValue);let s=parseInt(r,10);if(this.presets){let i=s;if(i>=1&&i<=this.presets.length)return this.success(this.presets[i-1].value)}return isNaN(s)?(console.log(n.yellow(` Invalid input, using default: ${this.defaultValue}`)),this.success(this.defaultValue)):this.min!==void 0&&s<this.min?(console.log(n.yellow(` Value too low, using minimum: ${this.min}`)),this.success(this.min)):this.max!==void 0&&s>this.max?(console.log(n.yellow(` Value too high, using maximum: ${this.max}`)),this.success(this.max)):this.success(s)}},C=class extends d{id;stepNumber;title;description;examples;suggestionsProvider;validatePath;constructor(t){super(t.defaultValue),this.id=t.id,this.stepNumber=t.stepNumber,this.title=t.title,this.description=t.description,this.examples=t.examples,this.suggestionsProvider=t.suggestionsProvider,this.validatePath=t.validatePath??!0}async execute(t){if(t.nonInteractive){let i=I(t.cwd,this.defaultValue);return this.success(w(i)?i:t.cwd)}if(l.printStepHeader(this.stepNumber,this.title,this.description),this.examples&&(console.log(n.gray(`Examples: ${this.examples}`)),console.log("")),this.suggestionsProvider){let i=this.suggestionsProvider(t.cwd);i.length>0&&(console.log(n.yellow("Detected directories:")),i.slice(0,5).forEach((c,o)=>{console.log(n.gray(` ${o+1}. ${c}`))}),console.log(""))}let r=(await l.prompt(t.rl,`${this.title} [${n.gray(this.defaultValue)}]: `)).trim()||this.defaultValue,s=I(t.cwd,r);return this.validatePath&&!w(s)?(console.log(n.yellow(` Warning: '${r}' does not exist, using current directory.`)),this.success(t.cwd)):this.success(s)}};var T=class extends d{id;stepNumber;title;description;constructor(t){super({}),this.id=t.id,this.stepNumber=t.stepNumber,this.title=t.title,this.description=t.description}async execute(t){if(t.nonInteractive)return this.success({});l.printStepHeader(this.stepNumber,this.title,this.description);let e=await l.prompt(t.rl,`Include patterns [${n.gray("e.g., src/**/*.ts")}]: `),r=await l.prompt(t.rl,`Exclude patterns [${n.gray("e.g., **/*.test.ts,dist/**")}]: `),s={};return e.trim()&&(s.include=e.split(",").map(i=>i.trim()).filter(i=>i.length>0)),r.trim()&&(s.exclude=r.split(",").map(i=>i.trim()).filter(i=>i.length>0)),this.success(s)}};import{createInterface as R}from"readline";import $ from"chalk";var V=class{options;cwd;constructor(t){this.options=t,this.cwd=process.cwd()}async run(){if(this.isNonInteractive())return this.getDefaults();let t=R({input:process.stdin,output:process.stdout});try{this.printHeader();let e={},r=this.getCommands();for(let c of r){let o={rl:t,cwd:this.cwd,results:e,nonInteractive:!1},g=await c.execute(o);if(!g.continue)return this.getCancelled();e[c.id]=g.value}let s=this.buildResult(e);return this.printSummary(s),await this.promptConfirmation(t)?s:this.getCancelled()}finally{t.close()}}printHeader(){l.printWizardHeader(this.getTitle(),this.getSubtitle())}async promptConfirmation(t){console.log("");let r=(await l.prompt(t,`${$.green(this.getConfirmationPrompt())} [${$.gray("Y/n")}]: `)).trim().toLowerCase();return r==="n"||r==="no"?(console.log($.yellow(`
|
|
3
3
|
Wizard cancelled.`)),!1):!0}};export{l as a,h as b,f as c,y as d,b as e,v as f,x as g,C as h,T as i,V as j};
|
|
@@ -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{b as m,d as $}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.17");process.exit(0)}
|
|
2
|
+
import{b as m,d as $}from"./chunk-TWBZONKT.js";import{b as A}from"./chunk-Z7SKUC6P.js";function T(n){let i=Buffer.from(n,"base64").toString("latin1");return i.includes(":")&&/^[\x20-\x7e]+$/.test(i)}function _(n){return/^[A-Z]?[a-z]+\.?$/.test(n)&&n.replace(/\.$/,"").length<=16}function x(n){let i=new RegExp(b.source,b.flags),t="",r=0;for(let e=i.exec(n);e!==null;e=i.exec(n)){let[s,o="",a,u,S,f]=e,l=a??u,d=e.index+s.length-f.length;if(!D(l)){i.lastIndex=d+1;continue}let E=f==="{"||f==="["?C(n,d,o.length===2):f.length===2&&f[0]==="\\"?k(n,d+2,f):e.index+s.length;t+=`${n.slice(r,e.index)}${o}${l}${o}${S}${o}<REDACTED:sensitive-key>${o}`,r=E,i.lastIndex=E}return r===0?n:t+n.slice(r)}function k(n,i,t){let r=!1;for(let e=i;e<n.length;e++){let s=n[e]==="\\";s&&e++;let o=n[e];if(o===`
|
|
3
3
|
`||o===void 0)return e;if(r)r=!1;else if(s&&o==="\\")r=!0;else if(s&&o===t[1])return e+1}return n.length}function C(n,i,t){let r=0;for(let e=i;e<n.length;e++){let s=n[e];if(t&&s==="\\"&&(n[e+1]==='"'||n[e+1]==="'"))e=k(n,e+2,n.slice(e,e+2))-1;else if(!t&&(s==='"'||s==="'"))for(e++;e<n.length&&n[e]!==s&&n[e]!==`
|
|
4
4
|
`;e++)n[e]==="\\"&&e++;else if(s==="{"||s==="[")r++;else if((s==="}"||s==="]")&&--r===0)return e+1}return n.length}function D(n){let i=n.toLowerCase().replace(/[^a-z0-9]/g,"");return w.has(i)||z.some(t=>i.endsWith(t))}function c(n,i=y.maxStringLength){if(typeof n!="string")return I(n);if(n.length>L)return`[REDACTED:size-limit ${n.length} chars]`;let t=n;for(let[r,e]of O)t=t.replace(r,e);return t=x(t),t=m(t,"balanced").text,t.length>i?`${t.slice(0,i)}\u2026[truncated ${t.length-i} chars]`:t}function p(n,i={}){return g(n,{...y,...i},0,[])}function I(n){try{if(n instanceof Error){let i=h(n),t=n.cause;for(let r=0;t!==void 0&&r<3;r++)i+=`
|
|
5
5
|
Caused by: ${t instanceof Error?h(t):JSON.stringify(p(t,{maxDepth:3}))}`,t=t instanceof Error?t.cause:void 0;return i}return typeof n=="string"?c(n):JSON.stringify(p(n,{maxDepth:3}))??String(n)}catch{return"[REDACTED:sanitization-failed]"}}function R(n){let i={};for(let t of N){let r=Object.getOwnPropertyDescriptor(n,t)??(t==="name"?{value:n.name}:void 0),e=r&&"value"in r?r.value:void 0;typeof e=="string"?i[t]=c(e,j):typeof e=="number"&&Number.isFinite(e)&&(i[t]=e)}return i}function h(n){let i=c(n.stack||`${n.name}: ${n.message}`),t=R(n),r=Object.keys(t);return r.length===0||r.length===1&&i.startsWith(`${t.name}`)?i:`${i} ${JSON.stringify(t)}`}function g(n,i,t,r){try{if(n==null||typeof n=="number"||typeof n=="boolean")return n;if(typeof n=="string")return c(n,i.maxStringLength);if(typeof n=="bigint"||typeof n=="symbol")return n.toString();if(typeof n=="function")return"[function]";let e=n;if(r.includes(e))return"[circular]";if(t>=i.maxDepth)return"[object]";if(ArrayBuffer.isView(e))return`[binary ${e.byteLength} bytes]`;if(e instanceof ArrayBuffer)return`[binary ${e.byteLength} bytes]`;if(e instanceof Date)return Number.isNaN(e.getTime())?"[invalid date]":e.toISOString();if(e instanceof Map||e instanceof Set)return`[${e.constructor.name}(${e.size})]`;let s=[...r,e];if(Array.isArray(e)){let o=e.slice(0,i.maxEntries).map(a=>g(a,i,t+1,s));return e.length>i.maxEntries&&o.push(`[+${e.length-i.maxEntries} more]`),o}return e instanceof Error?F(e,i,t,s):Z(e,Object.keys(e),i,t,s)}catch{return"[REDACTED:sanitization-failed]"}}function F(n,i,t,r){let e={name:c(String(n.name),i.maxStringLength),message:c(String(n.message),i.maxStringLength)};typeof n.stack=="string"&&(e.stack=c(n.stack,i.maxStringLength));let{code:s,status:o}=R(n);s!==void 0&&(e.code=s),o!==void 0&&(e.status=o);let a=n.cause;return a!==void 0&&(e.cause=g(a,i,t+1,r)),e}function Z(n,i,t,r,e){let s={};for(let o of i.slice(0,t.maxEntries)){let a=Object.getOwnPropertyDescriptor(n,o);if(!a)continue;if(!("value"in a)){s[o]="[getter]";continue}let u=a.value;if(D(o)&&u!==null&&u!==void 0&&typeof u!="boolean"){s[o]="[REDACTED:sensitive-key]";continue}s[o]=g(u,t,r+1,e)}return i.length>t.maxEntries&&(s["[truncated]"]=`${i.length-t.maxEntries} more keys`),s}var y,L,w,z,O,b,N,j,B=A(()=>{"use strict";$();y={maxDepth:6,maxEntries:100,maxStringLength:8192},L=1e6,w=new Set(["auth","dsn","pwd","proxyauthorization","setcookie","sessionid"]),z=["token","secret","password","passwd","passphrase","apikey","privatekey","accesskey","secretkey","credential","credentials","cookie","authorization","sessionid","connectionstring"];O=[[/(:\/\/)[^\s/@:"']*:[^\s/@"']+@/g,"$1<REDACTED:credentials>@"],[/\b(authorization:\s*Basic)\s+[^\s"']+/gi,"$1 <REDACTED:credential>"],[/\b(Basic)\s+([A-Za-z0-9+/]{8,}={0,2})(?![A-Za-z0-9._~+/=-])/gi,(n,i,t)=>T(t)?`${i} <REDACTED:credential>`:n],[/\b(authorization:\s*Bearer)\s+[^\s"']+/gi,"$1 <REDACTED:credential>"],[/\b(Bearer)\s+([A-Za-z0-9._~+/=-]{8,})/gi,(n,i,t)=>_(t)?n:`${i} <REDACTED:credential>`],[/\bsk-(?:ant-|proj-)?[A-Za-z0-9_-]{16,}/g,"<REDACTED:api_key>"],[/\b(set-cookie|cookie):\s*[^\n]+/gi,"$1: <REDACTED:cookie>"],[/\b([A-Za-z0-9_-]{0,64}?[_-](?:token|secret|password|passwd))=([^\s&"'#]+)/gi,"$1=<REDACTED:credential>"]],b=/(?:(\\?["'])([A-Za-z0-9_.-]{1,64})\1|(?<![A-Za-z0-9_.$-])([A-Za-z_$][A-Za-z0-9_.$-]{0,63}))(\s*:\s*)("(?:[^"\\\n]|\\.)*"?|'(?:[^'\\\n]|\\.)*'?|\\["']|-?\d[\d.eE+-]*|[{[])/g;N=["name","code","status"],j=200});export{c as a,p as b,I as c,B as d};
|
|
@@ -1,4 +1,4 @@
|
|
|
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 L,d as B}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.17");process.exit(0)}
|
|
2
|
+
import{b as L,d as B}from"./chunk-GPPTRKEM.js";import*as a from"fs";import*as v from"path";import{createRequire as K}from"node:module";var Z=K(import.meta.url),b=Z("semver"),F="3.15.17",y=t=>typeof t=="string"&&b.valid(t)===t.split("+")[0],E=t=>b.validRange(t)!==null,x=(t,e)=>b.satisfies(t,e),C=(t,e)=>b.compare(t,e),N=(t,e)=>C(e,t)||t.localeCompare(e);B();var R=class{cacheDir;keepVersions;constructor(e={}){this.cacheDir=e.cacheDir??L("plugins"),this.keepVersions=e.keepVersions??2}has(e,n){let s=this.versionDir(e,n);return a.existsSync(s)&&a.existsSync(v.join(s,"qe-plugin.json"))}get(e,n){if(!this.has(e,n))return;let s=this.versionDir(e,n),i=a.readFileSync(v.join(s,"qe-plugin.json"),"utf-8"),r=JSON.parse(i),l=a.statSync(s);return{manifest:r,path:s,cachedAt:l.birthtime.toISOString()}}store(e,n){let s=this.versionDir(e.name,e.version);if(a.existsSync(s))return s;a.mkdirSync(s,{recursive:!0});try{this.copyDir(n,s),a.writeFileSync(v.join(s,"qe-plugin.json"),JSON.stringify(e,null,2))}catch(i){throw a.rmSync(s,{recursive:!0,force:!0}),i}return this.pruneOldVersions(e.name),s}remove(e,n){let s=this.versionDir(e,n);return a.existsSync(s)?(a.rmSync(s,{recursive:!0,force:!0}),!0):!1}listVersions(e){let n=v.join(this.cacheDir,e);if(!a.existsSync(n))return[];let s=[],i=a.readdirSync(n);for(let r of i){let l=v.join(n,r),d=v.join(l,"qe-plugin.json");if(a.existsSync(d))try{let p=a.readFileSync(d,"utf-8"),m=JSON.parse(p);if(!y(m.version)){console.warn(`[PluginCache] Skipping cached plugin ${e}@${r}: invalid version ${JSON.stringify(m.version)}`);continue}let c=a.statSync(l);s.push({manifest:m,path:l,cachedAt:c.birthtime.toISOString()})}catch{}}return s}listAll(){if(!a.existsSync(this.cacheDir))return[];let e=[],n=a.readdirSync(this.cacheDir);for(let s of n){let i=this.listVersions(s);i.length>0&&(i.sort((r,l)=>N(r.manifest.version,l.manifest.version)),e.push(i[0]))}return e}listCandidates(){return a.existsSync(this.cacheDir)?a.readdirSync(this.cacheDir).flatMap(e=>this.listVersions(e)):[]}versionDir(e,n){return v.join(this.cacheDir,e,n)}pruneOldVersions(e){let n=this.listVersions(e);if(n.length<=this.keepVersions)return;n.sort((i,r)=>i.cachedAt.localeCompare(r.cachedAt));let s=n.slice(0,n.length-this.keepVersions);for(let i of s)a.rmSync(i.path,{recursive:!0,force:!0})}copyDir(e,n){if(!a.existsSync(e))return;let s=a.readdirSync(e,{withFileTypes:!0});for(let i of s){let r=v.join(e,i.name),l=v.join(n,i.name);if(i.isDirectory()){if(i.name===".git"||i.name==="node_modules")continue;a.mkdirSync(l,{recursive:!0}),this.copyDir(r,l)}else a.copyFileSync(r,l)}}};var ee=/^[a-z][a-z0-9-]*$/,se=["aqe-core-","agentic-qe-core-"],G=64,T=500;function k(t){let e=[],n=[];if(!t||typeof t!="object")return{valid:!1,errors:["Manifest must be a non-null object"],warnings:[]};let s=t;if(!s.name||typeof s.name!="string"?e.push("name is required and must be a string"):ne(s.name,e,n),!s.version||typeof s.version!="string"?e.push("version is required and must be a string"):y(s.version)||e.push(`version "${s.version}" is not valid semver (expected: major.minor.patch)`),!s.description||typeof s.description!="string"?e.push("description is required and must be a string"):s.description.length>T&&n.push(`description exceeds ${T} characters`),(!s.author||typeof s.author!="string")&&e.push("author is required and must be a string"),!Array.isArray(s.domains)||s.domains.length===0)e.push("domains is required and must be a non-empty array");else for(let i of s.domains)if(typeof i!="string"){e.push("Each domain must be a string");break}if(!s.entryPoint||typeof s.entryPoint!="string"?e.push("entryPoint is required and must be a string"):te(s.entryPoint,e),s.dependencies!==void 0)if(typeof s.dependencies!="object"||s.dependencies===null||Array.isArray(s.dependencies))e.push("dependencies must be an object mapping plugin names to semver ranges");else for(let[i,r]of Object.entries(s.dependencies))typeof r!="string"?e.push(`Dependency "${i}" must have a string version range`):E(r)||e.push(`Dependency "${i}" has an invalid semver range`);if(s.hooks!==void 0)if(typeof s.hooks!="object"||s.hooks===null||Array.isArray(s.hooks))e.push("hooks must be an object mapping event names to handler paths");else for(let[,i]of Object.entries(s.hooks)){if(typeof i!="string"){e.push("Hook handler paths must be strings");break}i.includes("..")&&e.push(`Hook handler path "${i}" must not contain ".." (path traversal)`)}if(s.minAqeVersion!==void 0&&(typeof s.minAqeVersion!="string"||!y(s.minAqeVersion))&&e.push("minAqeVersion must be valid semver"),s.permissions!==void 0){if(!Array.isArray(s.permissions))e.push("permissions must be an array of strings");else for(let i of s.permissions)if(typeof i!="string"){e.push("Each permission must be a string");break}}return{valid:e.length===0,errors:e,warnings:n}}function U(t){let e=typeof t=="string"?JSON.parse(t):t,n=k(e);if(!n.valid)throw new Error(`Invalid plugin manifest:
|
|
3
3
|
- ${n.errors.join(`
|
|
4
4
|
- `)}`);return e}function ne(t,e,n){t.length>G&&e.push(`name must be ${G} characters or fewer`),ee.test(t)||e.push("name must be lowercase alphanumeric with hyphens, starting with a letter"),/[^\x00-\x7F]/.test(t)&&e.push("name must contain only ASCII characters");for(let s of se)t.startsWith(s)&&e.push(`name cannot start with reserved prefix "${s}"`);["plugin","test","tool"].includes(t)&&n.push(`name "${t}" is very generic \u2014 consider a more descriptive name`)}function te(t,e){t.includes("..")&&e.push('entryPoint must not contain ".." (path traversal)'),(t.startsWith("/")||t.startsWith("\\"))&&e.push("entryPoint must be a relative path"),!t.endsWith(".js")&&!t.endsWith(".ts")&&!t.endsWith(".mjs")&&e.push("entryPoint must end in .js, .ts, or .mjs")}var I=class{constructor(e=F){this.aqeVersion=e}aqeVersion;resolve(e,n){let s=new Map,i=new Map;for(let o of e){let u=s.get(o.name)??[];s.set(o.name,u);let f=this.validateVersions(o);f?i.set(o.name,[...i.get(o.name)??[],f]):u.push(o)}for(let o of s.values())o.sort((u,f)=>N(u.version,f.version));let r=new Map,l=[],d=o=>({ordered:o.map((u,f)=>({manifest:u,order:f})),missing:r,errors:l,selectedVersions:Object.fromEntries(o.map(u=>[u.name,u.version])),aqeVersion:this.aqeVersion}),p=[...n??s.keys()].sort(),m=new Set(p),c=new Map,_=0,h=!1,X=()=>{for(let o of c.values())for(let[u,f]of Object.entries(o.dependencies??{})){let g=c.get(u);if(!(g?[g]:s.get(u)??[]).some(M=>x(M.version,f)))return!1}return!0},A,z=()=>{let o=new Set,u=new Set,f=(g,P)=>{if(u.has(g))return[...P.slice(P.indexOf(g)),g];if(!o.has(g)){u.add(g);for(let M of Object.keys(c.get(g)?.dependencies??{})){let Q=f(M,[...P,g]);if(Q)return Q}u.delete(g),o.add(g)}};for(let g of c.keys()){let P=f(g,[]);if(P)return P}},j=()=>{let o=new Set(p);for(let f of c.values())for(let g of Object.keys(f.dependencies??{}))o.add(g);let u=[...o].sort().find(f=>!c.has(f));if(!u){let f=z();return f?(A=f,!1):!0}m.add(u);for(let f of s.get(u)??[]){if(++_>1e4)return h=!0,!1;if(c.set(u,f),X()&&j())return!0;if(c.delete(u),h)return!1}return!1};if(!j()){if(A&&!h)throw new Error(`Dependency cycle detected: ${A.join(" -> ")}`);for(let o of m)s.get(o)?.length||l.push(...i.get(o)??[]);for(let[o,u]of s){let f=[...new Set(u.flatMap(g=>Object.keys(g.dependencies??{})))].filter(g=>!s.has(g));f.length&&r.set(o,f)}return l.push({code:h?"RESOLUTION_LIMIT":r.size?"MISSING_DEPENDENCY":"UNSATISFIED_DEPENDENCY_RANGE",plugin:p.join(", "),message:h?"Plugin dependency search exceeded 10000 candidates":"No cached plugin selection satisfies all dependency ranges"}),d([])}let O=[],q=new Set,w=new Set,$=(o,u)=>{if(q.has(o))return;if(w.has(o))throw new Error(`Dependency cycle detected: ${[...u.slice(u.indexOf(o)),o].join(" -> ")}`);w.add(o);let f=c.get(o);for(let g of Object.keys(f.dependencies??{}))$(g,[...u,o]);w.delete(o),q.add(o),O.push(f)};for(let o of[...c.keys()].sort())$(o,[]);return d(O)}resolveAvailable(e){let n=[],s=this.resolve(e,[]),i=[],r=new Map;for(let l of[...new Set(e.map(d=>d.name))].sort())try{let d=this.resolve(e,[...n,l]);if(d.errors.length){i.push(...d.errors.map(p=>({...p,plugin:l})));for(let[p,m]of d.missing)r.set(p,m);continue}n.push(l),s=d}catch(d){i.push({code:"DEPENDENCY_CYCLE",plugin:l,message:d instanceof Error?d.message:String(d)})}return{...s,errors:i,missing:r}}canLoad(e,n){let s=Object.entries(e.dependencies??{}).filter(([i,r])=>{let l=n instanceof Set?void 0:n.get(i);return!l||!E(r)||!x(l,r)}).map(([i])=>i);return{canLoad:!this.validateVersions(e)&&s.length===0,missingDeps:s}}validateVersions(e){if(!y(e.version))return{code:"INVALID_PLUGIN_VERSION",plugin:e.name,message:"Invalid plugin version"};for(let n of Object.values(e.dependencies??{}))if(!E(n))return{code:"INVALID_DEPENDENCY_RANGE",plugin:e.name,message:"Invalid dependency range"};if(e.minAqeVersion&&(!y(e.minAqeVersion)||!y(this.aqeVersion)||C(this.aqeVersion,e.minAqeVersion)<0))return{code:"AQE_VERSION_INCOMPATIBLE",plugin:e.name,message:`Requires AQE ${e.minAqeVersion}; running ${this.aqeVersion}`}}};var ie=["aqe-core-","agentic-qe-core-","agentic-qe-internal-"],Y=new Set(["aqe","agentic-qe","ruflo","claude-flow"]),re=["..","~","/etc/","/proc/","/dev/","node_modules/"];function W(t){let e=[];return oe(t.name,e),ae(t.entryPoint,e),ce(t.hooks,e),ue(t.permissions,e),{safe:e.length===0,violations:e}}function oe(t,e){/[^\x20-\x7E]/.test(t)&&e.push(`Plugin name "${t}" contains non-ASCII characters`),Y.has(t.toLowerCase())&&e.push(`Plugin name "${t}" is a reserved name`);for(let s of ie)t.toLowerCase().startsWith(s)&&e.push(`Plugin name "${t}" uses reserved prefix "${s}"`);let n=t.toLowerCase().replace(/[0o]/g,"o").replace(/[1il]/g,"l").replace(/[-_]/g,"");Y.has(n)&&e.push(`Plugin name "${t}" is visually similar to a reserved name`)}function ae(t,e){H(t,"entryPoint",e),(t.startsWith("/")||t.startsWith("\\"))&&e.push("entryPoint must be a relative path, not absolute")}function ce(t,e){if(t)for(let[n,s]of Object.entries(t))H(s,`hook[${n}]`,e)}function H(t,e,n){for(let s of re)t.includes(s)&&n.push(`${e} contains dangerous path pattern "${s}"`);t.includes("\0")&&n.push(`${e} contains null byte (path injection attempt)`)}function ue(t,e){if(!t)return;let n=["fs:write-root","net:arbitrary","exec:shell"];for(let s of t)n.includes(s)&&e.push(`Plugin requests dangerous permission: ${s}`)}import*as S from"fs";import*as V from"path";var D=class{type="local";async resolve(e){let n=V.resolve(e),s=V.join(n,"qe-plugin.json");if(!S.existsSync(s))throw new Error(`No qe-plugin.json found at ${s}`);let i=S.readFileSync(s,"utf-8");return U(i)}async getPluginPath(e){let n=V.resolve(e);if(!S.existsSync(n))throw new Error(`Plugin directory does not exist: ${n}`);return n}};var J=class{cache;resolver;sources=new Map;constructor(e={}){this.cache=e.cache??new R,this.resolver=new I;let n=new D;if(this.sources.set("local",n),e.sources)for(let s of e.sources)this.sources.set(s.type,s)}async install(e,n="local"){if(process.env.AQE_PLUGINS_DISABLED==="true")return{success:!1,errors:["Plugin loading is disabled (AQE_PLUGINS_DISABLED=true)"],securityViolations:[]};let s=[],i=this.sources.get(n);if(!i)return{success:!1,errors:[`Unknown source type: ${n}. Available: ${[...this.sources.keys()].join(", ")}`],securityViolations:[]};let r;try{r=await i.resolve(e)}catch(c){return{success:!1,errors:[`Failed to resolve plugin: ${c instanceof Error?c.message:String(c)}`],securityViolations:[]}}let l=k(r);if(!l.valid)return{success:!1,manifest:r,errors:l.errors,securityViolations:[]};let d=W(r);if(!d.safe)return{success:!1,manifest:r,errors:["Plugin failed security checks"],securityViolations:d.violations};try{let c=this.cache.listCandidates().map(h=>h.manifest).filter(h=>h.name!==r.name),_=this.resolver.resolve([...c,r],[r.name]);if(_.errors.length)return{success:!1,manifest:r,errors:_.errors.map(h=>`${h.code}: ${h.message}`),securityViolations:[]}}catch(c){return{success:!1,manifest:r,errors:[c instanceof Error?c.message:String(c)],securityViolations:[]}}if(this.cache.has(r.name,r.version)){let c=this.cache.get(r.name,r.version);return{success:!0,manifest:r,cachePath:c.path,errors:[],securityViolations:[]}}let p;try{p=await i.getPluginPath(e)}catch(c){return{success:!1,manifest:r,errors:[`Failed to get plugin path: ${c instanceof Error?c.message:String(c)}`],securityViolations:[]}}let m=this.cache.store(r,p);return{success:!0,manifest:r,cachePath:m,errors:s,securityViolations:[]}}remove(e,n){if(n)return this.cache.remove(e,n);let s=this.cache.listVersions(e),i=!1;for(let r of s)this.cache.remove(e,r.manifest.version)&&(i=!0);return i}list(){return this.cache.listAll().map(n=>({name:n.manifest.name,version:n.manifest.version,description:n.manifest.description,domains:n.manifest.domains,source:"cached",cachePath:n.path}))}resolveLoadOrder(){let e=this.cache.listCandidates();return this.resolver.resolveAvailable(e.map(n=>n.manifest))}registerSource(e){this.sources.set(e.type,e)}};export{U as a,R as b,J as c};
|
|
@@ -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.
|
|
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.17");process.exit(0)}
|
|
2
2
|
import{existsSync as c,readFileSync as f}from"fs";import{join as p,dirname as i}from"path";import{fileURLToPath as s}from"url";function u(o,a=10){let t=i(s(o));for(let r=0;r<a;r++){let n=p(t,"package.json");if(c(n))try{if(JSON.parse(f(n,"utf-8")).name==="agentic-qe")return t}catch{}let e=i(t);if(e===t)break;t=e}return null}export{u as a};
|
|
@@ -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.
|
|
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.17");process.exit(0)}
|
|
2
2
|
var i=class{s0;s1;s2;s3;constructor(s){this.s0=this.splitmix32(s),this.s1=this.splitmix32(this.s0),this.s2=this.splitmix32(this.s1),this.s3=this.splitmix32(this.s2)}splitmix32(s){return s=s+2654435769|0,s=Math.imul(s^s>>>16,2246822507),s=Math.imul(s^s>>>13,3266489909),(s^s>>>16)>>>0}next(){let s=this.s3,t=this.s0;return this.s3=this.s2,this.s2=this.s1,this.s1=t,t^=t<<11,t^=t>>>8,this.s0=t^s^s>>>19,this.s0>>>0}nextFloat(){return this.next()/4294967296}nextGaussian(){let s=this.nextFloat()||1e-10,t=this.nextFloat();return Math.sqrt(-2*Math.log(s))*Math.cos(2*Math.PI*t)}};export{i as a};
|
|
@@ -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.
|
|
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.17");process.exit(0)}
|
|
2
2
|
function r(e,f){if(e==null)return e;let n={...e};for(let t of f){let o=n[t];typeof o=="string"&&(n[t]=new Date(o))}return n}export{r as a};
|
|
@@ -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.
|
|
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.17");process.exit(0)}
|
|
2
2
|
var n=class{constructor(t){this.capacity=t;this.buffer=new Array(t)}capacity;buffer;head=0;tail=0;count=0;push(t){this.buffer[this.tail]=t,this.tail=(this.tail+1)%this.capacity,this.count<this.capacity?this.count++:this.head=(this.head+1)%this.capacity}toArray(){let t=[];for(let e=0;e<this.count;e++){let i=(this.head+e)%this.capacity;t.push(this.buffer[i])}return t}get length(){return this.count}get size(){return this.count}clear(){this.buffer=new Array(this.capacity),this.head=0,this.tail=0,this.count=0}last(t){let e=[],i=Math.max(0,this.count-t);for(let s=i;s<this.count;s++){let r=(this.head+s)%this.capacity;e.push(this.buffer[r])}return e}percentile(t){if(this.count===0)return;let e=this.toArray().sort((s,r)=>Number(s)-Number(r)),i=Math.floor(t/100*(e.length-1));return e[i]}reduce(t,e){let i=e;for(let s=0;s<this.count;s++){let r=(this.head+s)%this.capacity;i=t(i,this.buffer[r])}return i}average(){return this.count===0?0:this.reduce((e,i)=>e+i,0)/this.count}};export{n as a};
|
|
@@ -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{S as f,b as 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.17");process.exit(0)}
|
|
2
|
+
import{S as f,b as p}from"./chunk-JHKKIJT2.js";f();var y={predictionWindowSize:10,compressionThreshold:.3,maxConcurrentStreams:8,oscillationFrequencyMs:100};function d(s){try{return JSON.stringify(s).length}catch{return 0}}function w(s,t){let e={},n=!1;for(let r of Object.keys(t))JSON.stringify(s[r])!==JSON.stringify(t[r])&&(e[r]=t[r],n=!0);for(let r of Object.keys(s))r in t||(e[r]=void 0,n=!0);return n?e:null}function v(s,t){let e={...s};for(let[n,r]of Object.entries(t))r===void 0?delete e[n]:e[n]=r;return e}var l=class{windowSize;windows=new Map;constructor(t){this.windowSize=Math.max(1,t)}predict(t){let e=this.windows.get(t);if(!e||e.length===0)return null;let n=e[e.length-1];return typeof n!="object"||n===null||Array.isArray(n)?null:{...n}}record(t,e){let n=this.windows.get(t);n||(n=[],this.windows.set(t,n)),n.push(e),n.length>this.windowSize&&n.shift()}removeStream(t){this.windows.delete(t)}},h=class{maxStreams;cycleMs;streamIds=[];currentIndex=0;constructor(t,e){this.maxStreams=Math.max(1,t),this.cycleMs=Math.max(1,e)}addStream(t){return this.streamIds.includes(t)||this.streamIds.length>=this.maxStreams?!1:(this.streamIds.push(t),!0)}removeStream(t){let e=this.streamIds.indexOf(t);return e===-1?!1:(this.streamIds.splice(e,1),this.currentIndex>=this.streamIds.length&&(this.currentIndex=0),!0)}nextStream(){if(this.streamIds.length===0)return null;let t=this.streamIds[this.currentIndex];return this.currentIndex=(this.currentIndex+1)%this.streamIds.length,t}getActiveStreams(){return[...this.streamIds]}get activeCount(){return this.streamIds.length}},g=class{config;predictor;router;lastPayloads=new Map;totalMessages=0;compressedMessages=0;totalOriginalBytes=0;totalCompressedBytes=0;constructor(t){this.config={...y,...t},this.predictor=new l(this.config.predictionWindowSize),this.router=new h(this.config.maxConcurrentStreams,this.config.oscillationFrequencyMs)}send(t,e,n,r){this.totalMessages++;let i=d(r);this.totalOriginalBytes+=i;let c=!1,o=r,a=i;if(typeof r=="object"&&r!==null&&!Array.isArray(r)){let m=this.predictor.predict(t);if(m){let u=w(m,r);u?1-d(u)/Math.max(i,1)>=this.config.compressionThreshold&&(o={__delta:!0,__changes:u},a=d(o),c=!0,this.compressedMessages++):(o={__delta:!0,__changes:{}},a=d(o),c=!0,this.compressedMessages++)}}return this.totalCompressedBytes+=a,this.predictor.record(t,r),this.lastPayloads.set(t,r),{streamId:t,senderId:e,receiverId:n,payload:o,compressed:c,originalSize:i,compressedSize:a,timestamp:Date.now()}}receive(t){if(!t.compressed||typeof t.payload!="object"||t.payload===null)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let e=t.payload;if(!e.__delta)return this.lastPayloads.set(t.streamId,t.payload),this.predictor.record(t.streamId,t.payload),t.payload;let n=this.predictor.predict(t.streamId),r=e.__changes??{};if(!n)return r;let i=v(n,r);return this.predictor.record(t.streamId,i),this.lastPayloads.set(t.streamId,i),i}getStats(){let t=this.totalOriginalBytes-this.totalCompressedBytes;return{totalMessages:this.totalMessages,compressedMessages:this.compressedMessages,bandwidthSavedBytes:Math.max(0,t),bandwidthReductionPercent:this.totalOriginalBytes>0?Math.max(0,t)/this.totalOriginalBytes*100:0,activeStreams:this.router.activeCount}}addStream(t){this.router.addStream(t)}removeStream(t){this.router.removeStream(t),this.predictor.removeStream(t),this.lastPayloads.delete(t)}};function M(s){return S()?new g(s):null}function S(){return p().useCognitiveRouting}export{M as a,S as b};
|
|
@@ -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{b as u}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.17");process.exit(0)}
|
|
2
|
+
import{b as u}from"./chunk-Z7SKUC6P.js";function t(){return{...e}}function o(r){e={...e,...r}}function i(){e={...s}}function a(){return e.useBrowserMode}function E(){return e.useScreenshotCapture}function l(){return e.useVisualRegression}function c(){return e.useE2EExecution}function f(){return e.defaultHeadless}function d(){return e.useAutoRetry}function _(){return e.logPerformanceMetrics}function I(){return e.useAxeCore}function p(){let r={};process.env.VIBIUM_USE_BROWSER_MODE!==void 0&&(r.useBrowserMode=process.env.VIBIUM_USE_BROWSER_MODE==="true"),process.env.VIBIUM_USE_SCREENSHOT_CAPTURE!==void 0&&(r.useScreenshotCapture=process.env.VIBIUM_USE_SCREENSHOT_CAPTURE==="true"),process.env.VIBIUM_USE_VISUAL_REGRESSION!==void 0&&(r.useVisualRegression=process.env.VIBIUM_USE_VISUAL_REGRESSION==="true"),process.env.VIBIUM_USE_E2E_EXECUTION!==void 0&&(r.useE2EExecution=process.env.VIBIUM_USE_E2E_EXECUTION==="true"),process.env.VIBIUM_DEFAULT_HEADLESS!==void 0&&(r.defaultHeadless=process.env.VIBIUM_DEFAULT_HEADLESS==="true"),process.env.VIBIUM_USE_AUTO_RETRY!==void 0&&(r.useAutoRetry=process.env.VIBIUM_USE_AUTO_RETRY==="true"),process.env.VIBIUM_LOG_PERFORMANCE_METRICS!==void 0&&(r.logPerformanceMetrics=process.env.VIBIUM_LOG_PERFORMANCE_METRICS==="true"),process.env.VIBIUM_USE_AXE_CORE!==void 0&&(r.useAxeCore=process.env.VIBIUM_USE_AXE_CORE==="true"),o(r)}function U(){o({defaultHeadless:!0,useAutoRetry:!0,logPerformanceMetrics:!0})}function R(){o({defaultHeadless:!1,logPerformanceMetrics:!0})}function S(){o({useBrowserMode:!1,useScreenshotCapture:!1,useVisualRegression:!1,useE2EExecution:!1,useAxeCore:!1})}var s,e,n=u(()=>{s={useBrowserMode:!0,useScreenshotCapture:!0,useVisualRegression:!0,useE2EExecution:!0,defaultHeadless:!1,useAutoRetry:!0,logPerformanceMetrics:!0,useAxeCore:!0},e={...s}});export{s as a,t as b,o as c,i as d,a as e,E as f,l as g,c as h,f as i,d as j,_ as k,I as l,p as m,U as n,R as o,S as p,n as q};
|