agentic-qe 3.15.9 → 3.15.10
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 +251 -0
- package/assets/skills/skills-manifest.json +1 -1
- package/dist/adapters/a2ui/catalog/component-schemas.js +2 -1
- package/dist/adapters/a2ui/data/json-pointer-resolver.js +10 -5
- package/dist/adapters/a2ui/integration/agui-sync.js +10 -6
- package/dist/adapters/a2ui/integration/surface-state-bridge.js +9 -5
- package/dist/adapters/ag-ui/json-patch.js +10 -6
- package/dist/audit/witness-chain.d.ts +1 -1
- package/dist/cli/bundle.js +6 -6
- package/dist/cli/chunks/adapter-TR5SLAZC.js +2 -0
- package/dist/cli/chunks/agent-booster-wasm-H7ANGXW4.js +2 -0
- package/dist/cli/chunks/{agent-handler-RIYHTHVZ.js → agent-handler-SVXSHEET.js} +2 -2
- package/dist/cli/chunks/{agent-memory-branch-WSUCUHOO.js → agent-memory-branch-WKQH36XL.js} +2 -2
- package/dist/cli/chunks/aqe-learning-engine-DXWKCHY2.js +2 -0
- package/dist/cli/chunks/{arena-KRIBMIXX.js → arena-EKOOFVST.js} +2 -2
- package/dist/cli/chunks/{arena-YAJZX6MC.js → arena-OPS36NFZ.js} +4 -4
- package/dist/cli/chunks/{audit-7ZNOXWP3.js → audit-AO5NDZRI.js} +3 -3
- package/dist/cli/chunks/base-GTB6POYE.js +2 -0
- package/dist/cli/chunks/{better-sqlite3-ZQAT4I6H.js → better-sqlite3-TFLVEMMY.js} +2 -2
- package/dist/cli/chunks/{brain-handler-452WCPZC.js → brain-handler-ADBBJPYW.js} +3 -3
- package/dist/cli/chunks/{branch-enumerator-IJFXJRPN.js → branch-enumerator-HGHUYYL5.js} +2 -2
- package/dist/cli/chunks/browser-5LU6P4SZ.js +4 -0
- package/dist/cli/chunks/browser-workflow-MSBOLYUY.js +2 -0
- package/dist/cli/chunks/{chunk-UOJBR4J3.js → chunk-2SXBBUM6.js} +2 -2
- package/dist/cli/chunks/{chunk-7JKB3Q7O.js → chunk-2T7RRL6G.js} +1 -1
- package/dist/cli/chunks/{chunk-HCYQHWI2.js → chunk-2XGVTYVX.js} +2 -2
- package/dist/cli/chunks/{chunk-3LYU7BLY.js → chunk-2ZI5FKSF.js} +2 -2
- package/dist/cli/chunks/chunk-2ZMF4NCF.js +4 -0
- package/dist/cli/chunks/{chunk-F3PQZX44.js → chunk-37OWRCUN.js} +1 -1
- package/dist/cli/chunks/{chunk-YRBBBUJX.js → chunk-3P34JFQH.js} +4 -4
- package/dist/cli/chunks/{chunk-ICP2ORGI.js → chunk-3Y7SPD72.js} +2 -2
- package/dist/cli/chunks/{chunk-WGDR2KIR.js → chunk-4G63WT4F.js} +2 -2
- package/dist/cli/chunks/chunk-4SJYIX54.js +3 -0
- package/dist/cli/chunks/chunk-5E6GHSTY.js +3 -0
- package/dist/cli/chunks/{chunk-OXTFSIGN.js → chunk-5LPYV3TK.js} +1 -1
- package/dist/cli/chunks/{chunk-XWIUFYM3.js → chunk-62OAY5KJ.js} +1 -1
- package/dist/cli/chunks/{chunk-VCMINU7K.js → chunk-6C3II5OM.js} +2 -2
- package/dist/cli/chunks/{chunk-EFBLP43U.js → chunk-6GP6W46M.js} +2 -2
- package/dist/cli/chunks/{chunk-4JCY45KV.js → chunk-6KIL6CMD.js} +2 -2
- package/dist/cli/chunks/{chunk-CTZJUV5I.js → chunk-6MVVSSID.js} +1 -1
- package/dist/cli/chunks/{chunk-JEP4ULR6.js → chunk-6P7424AO.js} +2 -2
- package/dist/cli/chunks/{chunk-SVHUYVUR.js → chunk-6PX4OXQO.js} +2 -2
- package/dist/cli/chunks/{chunk-LEAKYZ37.js → chunk-6S3WJGUV.js} +2 -2
- package/dist/cli/chunks/{chunk-7X2Y727E.js → chunk-6TB6YOCZ.js} +1 -1
- package/dist/cli/chunks/{chunk-VU2EL424.js → chunk-6X5DHU6Q.js} +1 -1
- package/dist/cli/chunks/{chunk-DDPPSSHW.js → chunk-6XCMKIZN.js} +1 -1
- package/dist/cli/chunks/{chunk-ZANDSVCK.js → chunk-7LFZ4CHM.js} +2 -2
- package/dist/cli/chunks/{chunk-UYLYMWV5.js → chunk-7OZVZIBE.js} +2 -2
- package/dist/cli/chunks/{chunk-32UTLDNY.js → chunk-7PJIR4ST.js} +2 -2
- package/dist/cli/chunks/{chunk-DINZR5CF.js → chunk-7TB6FK4B.js} +1 -1
- package/dist/cli/chunks/{chunk-KVBEGOJE.js → chunk-7ZCDZHDB.js} +2 -2
- package/dist/cli/chunks/{chunk-55HRSNGN.js → chunk-A55QKKT2.js} +2 -2
- package/dist/cli/chunks/{chunk-LCJTEUDC.js → chunk-ABFFWZPC.js} +428 -433
- package/dist/cli/chunks/{chunk-PVIA2FPD.js → chunk-ACWFKES2.js} +2 -2
- package/dist/cli/chunks/{chunk-2BA45H64.js → chunk-AH3ZD3NJ.js} +2 -2
- package/dist/cli/chunks/{chunk-OG2UI6A3.js → chunk-AI4VYSFS.js} +2 -2
- package/dist/cli/chunks/chunk-APSRPR4W.js +2 -0
- package/dist/cli/chunks/chunk-ATHWDAXB.js +3 -0
- package/dist/cli/chunks/{chunk-TSYQDRNK.js → chunk-B6LTH6YV.js} +2 -2
- package/dist/cli/chunks/chunk-BQUAE3CP.js +3 -0
- package/dist/cli/chunks/{chunk-OCESWNAZ.js → chunk-C522H7XR.js} +54 -33
- package/dist/cli/chunks/{chunk-TUYJ53V4.js → chunk-CESIR27V.js} +2 -2
- package/dist/cli/chunks/{chunk-PBZI2ZPV.js → chunk-CFBEBXLO.js} +3 -3
- package/dist/cli/chunks/{chunk-FJ4VTLLK.js → chunk-CMBLM26R.js} +2 -2
- package/dist/cli/chunks/{chunk-YZYDTABJ.js → chunk-CZ2IF6MC.js} +1 -1
- package/dist/cli/chunks/{chunk-GKPQ2GRR.js → chunk-CZGOSJQ4.js} +2 -2
- package/dist/cli/chunks/{chunk-FL3OYGCS.js → chunk-D6DA2KFD.js} +2 -2
- package/dist/cli/chunks/{chunk-37BIGMJI.js → chunk-DBMNJSBV.js} +1 -1
- package/dist/cli/chunks/{chunk-BHKXMIWX.js → chunk-DE4YJQJF.js} +2 -2
- package/dist/cli/chunks/{chunk-3CJCROMW.js → chunk-DEF34AFL.js} +2 -2
- package/dist/cli/chunks/chunk-DKAC3E3B.js +3 -0
- package/dist/cli/chunks/{chunk-AOFO4N32.js → chunk-DMFTELBS.js} +2 -2
- package/dist/cli/chunks/{chunk-KLGYIEJK.js → chunk-DNRWGATA.js} +10 -10
- package/dist/cli/chunks/{chunk-JWGRWMZP.js → chunk-DT7SIJOA.js} +2 -2
- package/dist/cli/chunks/{chunk-6PXA2BQJ.js → chunk-DURHK377.js} +67 -67
- package/dist/cli/chunks/{chunk-HAROIAJE.js → chunk-EAU5KDFO.js} +1 -1
- package/dist/cli/chunks/{chunk-L42JPFCC.js → chunk-EDLFX4ZB.js} +2 -2
- package/dist/cli/chunks/{chunk-6OOYIO3W.js → chunk-EN2QSKFF.js} +2 -2
- package/dist/cli/chunks/{chunk-UNUTC6TX.js → chunk-ERQKYIP7.js} +2 -2
- package/dist/cli/chunks/{chunk-KFUUIAR4.js → chunk-ESUO3GTJ.js} +2 -2
- package/dist/cli/chunks/{chunk-4V27J6YN.js → chunk-EWFECZ2U.js} +2 -2
- package/dist/cli/chunks/{chunk-4W4DYVSH.js → chunk-FAUCT5KR.js} +3 -3
- package/dist/cli/chunks/{chunk-IFEIY3NQ.js → chunk-FB6TI3BH.js} +2 -2
- package/dist/cli/chunks/{chunk-2TDIS6YK.js → chunk-FBXTQNRH.js} +2 -2
- package/dist/cli/chunks/{chunk-XOLDMK23.js → chunk-FESZBPUB.js} +2 -2
- package/dist/cli/chunks/chunk-FFTPAWM6.js +141 -0
- package/dist/cli/chunks/{chunk-A6YIH4C4.js → chunk-FKL3R5JQ.js} +2 -2
- package/dist/cli/chunks/{chunk-N5PDFGCQ.js → chunk-FPUDRSFJ.js} +2 -2
- package/dist/cli/chunks/{chunk-7QGYJ5OY.js → chunk-FZOWULMH.js} +1 -1
- package/dist/cli/chunks/{chunk-AVB5QY2Q.js → chunk-G3CZCUPM.js} +2 -2
- package/dist/cli/chunks/{chunk-FV3NHVC7.js → chunk-G5I6KGMW.js} +3 -3
- package/dist/cli/chunks/{chunk-N3KEY4XJ.js → chunk-GHBNRMSJ.js} +2 -2
- package/dist/cli/chunks/{chunk-2YH62JCN.js → chunk-GJHWY3ZX.js} +2 -2
- package/dist/cli/chunks/{chunk-ZXBCCO2H.js → chunk-GJMLK5UT.js} +2 -2
- package/dist/cli/chunks/{chunk-NHZIWIQZ.js → chunk-GRCIBCJ2.js} +2 -2
- package/dist/cli/chunks/{chunk-J3DTDJDT.js → chunk-GWZZ7DAO.js} +2 -2
- package/dist/cli/chunks/{chunk-4SUOVLJ6.js → chunk-GZLZCZ42.js} +2 -2
- package/dist/cli/chunks/{chunk-MZS32SYS.js → chunk-H2PYU7MN.js} +1 -1
- package/dist/cli/chunks/{chunk-ABFDB4X3.js → chunk-H32EPIR2.js} +1 -1
- package/dist/cli/chunks/{chunk-KIXYKUCI.js → chunk-H74Q7TJN.js} +1 -1
- package/dist/cli/chunks/chunk-HOZUDE4C.js +2 -0
- package/dist/cli/chunks/{chunk-PMCRCEW5.js → chunk-I33O4BRQ.js} +2 -2
- package/dist/cli/chunks/{chunk-N3NP6PTT.js → chunk-IKISCIGH.js} +2 -2
- package/dist/cli/chunks/{chunk-Q3JVJRVJ.js → chunk-IPJ7Q3AJ.js} +1 -1
- package/dist/cli/chunks/{chunk-WRRCQ2UE.js → chunk-IU2IV4NE.js} +1 -1
- package/dist/cli/chunks/{chunk-QQ5SZH4D.js → chunk-JHIY4VCC.js} +2 -2
- package/dist/cli/chunks/{chunk-W32YU3VI.js → chunk-KG336OV3.js} +2 -2
- package/dist/cli/chunks/{chunk-W5VJRDDG.js → chunk-KI73QCR5.js} +2 -2
- package/dist/cli/chunks/{chunk-HGTWAZWU.js → chunk-KNQ2ERFX.js} +2 -2
- package/dist/cli/chunks/{chunk-SNBYYO6F.js → chunk-KOBVYY6H.js} +2 -2
- package/dist/cli/chunks/{chunk-VQHVHVSF.js → chunk-KSIWGGJI.js} +8 -8
- package/dist/cli/chunks/{chunk-REUFWGMA.js → chunk-LMS3Y7JD.js} +2 -2
- package/dist/cli/chunks/{chunk-LMU5DUDK.js → chunk-LQEURY7C.js} +1 -1
- package/dist/cli/chunks/{chunk-AJ4YDSOI.js → chunk-LRZY4KS2.js} +2 -2
- package/dist/cli/chunks/{chunk-KIKWJM6J.js → chunk-M2QV7PT7.js} +2 -2
- package/dist/cli/chunks/{chunk-TNMQVG4A.js → chunk-MA7JIQ6U.js} +2 -2
- package/dist/cli/chunks/{chunk-I6S35FRO.js → chunk-MG27QY4D.js} +2 -2
- package/dist/cli/chunks/chunk-MNN5J4GU.js +12 -0
- package/dist/cli/chunks/chunk-N6PIIK6G.js +3 -0
- package/dist/cli/chunks/chunk-NAXGWDVM.js +12 -0
- package/dist/cli/chunks/{chunk-XOVNZT7F.js → chunk-NGKNYIQZ.js} +1 -1
- package/dist/cli/chunks/chunk-NNFZUTDH.js +2 -0
- package/dist/cli/chunks/{chunk-ZVSLCEVC.js → chunk-NPPHWFA2.js} +3 -3
- package/dist/cli/chunks/{chunk-JNNZK7KH.js → chunk-NSHU347M.js} +1 -1
- package/dist/cli/chunks/{chunk-PX2B5TS2.js → chunk-NVYIZCSR.js} +2 -2
- package/dist/cli/chunks/{chunk-5NS3USRW.js → chunk-NW5JUCCG.js} +1 -1
- package/dist/cli/chunks/{chunk-KR3M44CF.js → chunk-NZYLNXT6.js} +3 -3
- package/dist/cli/chunks/{chunk-5D2I7JUP.js → chunk-OBAREPDC.js} +2 -2
- package/dist/cli/chunks/{chunk-F4JYIRW2.js → chunk-ODJNUMV3.js} +2 -2
- package/dist/cli/chunks/{chunk-K5DJXMAA.js → chunk-OEKP73MC.js} +2 -2
- package/dist/cli/chunks/{chunk-2URBI52G.js → chunk-OPFGRS5S.js} +2 -2
- package/dist/cli/chunks/{chunk-HZ5NC6U5.js → chunk-OY2AHLSF.js} +1 -1
- package/dist/cli/chunks/{chunk-GII5WVAK.js → chunk-OY3NJNP2.js} +1 -1
- package/dist/cli/chunks/{chunk-P73W2K7T.js → chunk-PCEW6Q2C.js} +1 -1
- package/dist/cli/chunks/{chunk-7QTB5VJZ.js → chunk-PFG6VQ5Z.js} +2 -2
- package/dist/cli/chunks/{chunk-7KII4CQG.js → chunk-PGYMKGOE.js} +2 -2
- package/dist/cli/chunks/{chunk-BXO536GT.js → chunk-PPSAMXYN.js} +3 -3
- package/dist/cli/chunks/chunk-RK73HB2F.js +2 -0
- package/dist/cli/chunks/{chunk-ZBDRLF43.js → chunk-RPHY2DU6.js} +2 -2
- package/dist/cli/chunks/{chunk-XDBD4GXO.js → chunk-RWWOHCMG.js} +25 -20
- package/dist/cli/chunks/{chunk-J5KNRVXR.js → chunk-S75EYIJG.js} +1 -1
- package/dist/cli/chunks/{chunk-ETG7O5E5.js → chunk-SKQUUE4F.js} +5 -5
- package/dist/cli/chunks/chunk-SO45NA4D.js +180 -0
- package/dist/cli/chunks/{chunk-47V7FQGX.js → chunk-SU5H66SD.js} +2 -2
- package/dist/cli/chunks/{chunk-NTAD5UX4.js → chunk-SY2IB442.js} +2 -2
- package/dist/cli/chunks/{chunk-D6XVGFTI.js → chunk-TBLI254A.js} +2 -2
- package/dist/cli/chunks/{chunk-47TYABPD.js → chunk-TNMBRDCA.js} +3 -3
- package/dist/cli/chunks/{chunk-P2CXVNKK.js → chunk-TYFZXDGZ.js} +2 -2
- package/dist/cli/chunks/{chunk-2XITOPYV.js → chunk-U4OICXV2.js} +2 -2
- package/dist/cli/chunks/{chunk-JAV5WPSY.js → chunk-U53ZB4IX.js} +2 -2
- package/dist/cli/chunks/chunk-UARKIZAS.js +2 -0
- package/dist/cli/chunks/{chunk-2HL3UM5P.js → chunk-UCJMVXO4.js} +2 -2
- package/dist/cli/chunks/{chunk-HWK5L7IJ.js → chunk-UHTTW3IT.js} +2 -2
- package/dist/cli/chunks/{chunk-OXZLKP6C.js → chunk-V2M2XCR5.js} +1 -1
- package/dist/cli/chunks/{chunk-YZGSJG34.js → chunk-V2RSNVMW.js} +1 -1
- package/dist/cli/chunks/{chunk-5JWGCIQW.js → chunk-V6JBOIMX.js} +1 -1
- package/dist/cli/chunks/{chunk-JUVHZG7I.js → chunk-VFKF2XO7.js} +1 -1
- package/dist/cli/chunks/{chunk-XQ3DDY7X.js → chunk-VFSYMOAL.js} +2 -2
- package/dist/cli/chunks/{chunk-V5PXQSFS.js → chunk-VJQYDYAJ.js} +2 -2
- package/dist/cli/chunks/{chunk-A4RU67VX.js → chunk-VKRTTFB6.js} +2 -2
- package/dist/cli/chunks/{chunk-H3KBIWTO.js → chunk-VWNFAW2M.js} +2 -2
- package/dist/cli/chunks/{chunk-72AMFDC7.js → chunk-WBM6N6IM.js} +1 -1
- package/dist/cli/chunks/{chunk-XUIA5KMS.js → chunk-WDQ7IEZY.js} +2 -2
- package/dist/cli/chunks/{chunk-FLASM2XB.js → chunk-WDVRE6GN.js} +2 -2
- package/dist/cli/chunks/{chunk-FV7VAG74.js → chunk-WQ4PYWSW.js} +1 -1
- package/dist/cli/chunks/{chunk-DGTLJNJH.js → chunk-WSF24I3D.js} +2 -2
- package/dist/cli/chunks/{chunk-6YL6JOQB.js → chunk-XBVUVFJK.js} +2 -2
- package/dist/cli/chunks/{chunk-VRGCKBF7.js → chunk-XEB3NLJR.js} +2 -2
- package/dist/cli/chunks/{chunk-XYCKHYBM.js → chunk-XFVTGAAJ.js} +2 -2
- package/dist/cli/chunks/{chunk-2I2UPJS7.js → chunk-XLZYRTNO.js} +2 -2
- package/dist/cli/chunks/{chunk-AR2E4B7K.js → chunk-XUZDBQ5X.js} +5 -5
- package/dist/cli/chunks/{chunk-AQTVVLNP.js → chunk-Y76IAYQD.js} +1 -1
- package/dist/cli/chunks/{chunk-UOWHE77F.js → chunk-YAKGBHO4.js} +2 -2
- package/dist/cli/chunks/{chunk-JK2ME6IT.js → chunk-YBSBABOS.js} +2 -2
- package/dist/cli/chunks/{chunk-NDKLQW6N.js → chunk-YCGP5VFP.js} +2 -2
- package/dist/cli/chunks/{chunk-GBUIG3FS.js → chunk-YDAQK5UF.js} +1 -1
- package/dist/cli/chunks/{chunk-HTZJSQ3C.js → chunk-YK3BVZY6.js} +2 -2
- package/dist/cli/chunks/{chunk-GCWSX2NY.js → chunk-YK7JN5N7.js} +4 -4
- package/dist/cli/chunks/{chunk-C6RTMTEH.js → chunk-YKMU4LBV.js} +1 -1
- package/dist/cli/chunks/{chunk-JP4P3P3D.js → chunk-YYTGXD3R.js} +2 -2
- package/dist/cli/chunks/{chunk-763SUL4B.js → chunk-Z2O2YJAF.js} +2 -2
- package/dist/cli/chunks/{chunk-QTVWUQTB.js → chunk-Z7IYW5U7.js} +1 -1
- package/dist/cli/chunks/{chunk-XZJ2O3VC.js → chunk-ZG5666GJ.js} +1 -1
- package/dist/cli/chunks/{chunk-6EPHNJTL.js → chunk-ZXPY654C.js} +1 -1
- package/dist/cli/chunks/{ci-7SGRCFPS.js → ci-MSKMVH5X.js} +2 -2
- package/dist/cli/chunks/{ci-config-MX3URPZA.js → ci-config-7ODMNAUM.js} +2 -2
- package/dist/cli/chunks/{ci-output-M47NJY6D.js → ci-output-FXZ7ZZW3.js} +2 -2
- package/dist/cli/chunks/{circuit-breaker-5GAK45SW.js → circuit-breaker-4VOUEPOX.js} +2 -2
- package/dist/cli/chunks/{claude-flow-setup-YXYSRH4Y.js → claude-flow-setup-7D4SGLM4.js} +2 -2
- package/dist/cli/chunks/client-POSVREVS.js +2 -0
- package/dist/cli/chunks/{cline-installer-DLJ5QD5N.js → cline-installer-WRRT7BGQ.js} +2 -2
- package/dist/cli/chunks/{code-ONKLMVQ2.js → code-ZDJRIL3S.js} +3 -3
- package/dist/cli/chunks/{code-index-extractor-2232LGZN.js → code-index-extractor-4S4SHM56.js} +2 -2
- package/dist/cli/chunks/{codex-installer-UOWLYCMH.js → codex-installer-YTRHNDWR.js} +2 -2
- package/dist/cli/chunks/{completions-MHX7GCC7.js → completions-6N64JUXJ.js} +2 -2
- package/dist/cli/chunks/{complexity-analyzer-43ZUJKZU.js → complexity-analyzer-I4A26VCJ.js} +2 -2
- package/dist/cli/chunks/{continuedev-installer-6Q5JR4FF.js → continuedev-installer-IIDR66LB.js} +2 -2
- package/dist/cli/chunks/{copilot-installer-CZUMVHSI.js → copilot-installer-SVVFY3S2.js} +2 -2
- package/dist/cli/chunks/core-handlers-V243GY7X.js +2 -0
- package/dist/cli/chunks/{cost-tracker-VS5ZW3XN.js → cost-tracker-VGFS6IBX.js} +2 -2
- package/dist/cli/chunks/{coverage-VWKTWZ6D.js → coverage-B7MCGNTE.js} +3 -3
- package/dist/cli/chunks/cross-domain-router-N3AIEM3B.js +2 -0
- package/dist/cli/chunks/{cursor-installer-YIFEMORH.js → cursor-installer-UPETT57E.js} +2 -2
- package/dist/cli/chunks/daemon-7BDJHEIJ.js +18 -0
- package/dist/cli/chunks/{daemon-SHWJSJW5.js → daemon-CQFNZLXU.js} +3 -3
- package/dist/cli/chunks/{dag-attention-scheduler-TCC2WM46.js → dag-attention-scheduler-PJVABHON.js} +2 -2
- package/dist/cli/chunks/{detect-IGTWSQMA.js → detect-56SKAGWX.js} +2 -2
- package/dist/cli/chunks/{dist-node-TCOTJVQX.js → dist-node-UYTYUMLN.js} +2 -2
- package/dist/cli/chunks/{domain-handler-55ZVYODR.js → domain-handler-YOYLBYJE.js} +2 -2
- package/dist/cli/chunks/{domain-plugins-GJRWOHQP.js → domain-plugins-7TARX2XF.js} +2 -2
- package/dist/cli/chunks/domain-transfer-AKVSBD6E.js +2 -0
- package/dist/cli/chunks/dream-UA7MKOPQ.js +2 -0
- package/dist/cli/chunks/{embed-and-insert-pattern-XAMNIKQL.js → embed-and-insert-pattern-IS6HSR66.js} +2 -2
- package/dist/cli/chunks/{eval-GO22R4OZ.js → eval-GNB574IM.js} +2 -2
- package/dist/cli/chunks/{experience-capture-middleware-F2BRMJ3Y.js → experience-capture-middleware-RCAOCKM7.js} +3 -3
- package/dist/cli/chunks/{fast-paths-6RGPYALD.js → fast-paths-KTZ5SF54.js} +2 -2
- package/dist/cli/chunks/{feature-flags-ZGS3KLPH.js → feature-flags-ITX5LQ57.js} +2 -2
- package/dist/cli/chunks/{feature-flags-MIWQIOHU.js → feature-flags-KFHSR5YF.js} +2 -2
- package/dist/cli/chunks/file-discovery-YCMNKZAK.js +2 -0
- package/dist/cli/chunks/fleet-2Y3ZE6CE.js +46 -0
- package/dist/cli/chunks/{gnn-wrapper-ALBJVW6T.js → gnn-wrapper-RLFW3GSX.js} +2 -2
- package/dist/cli/chunks/{heartbeat-handler-ZMM53NDY.js → heartbeat-handler-EM2URCYZ.js} +4 -4
- package/dist/cli/chunks/heartbeat-scheduler-QH5V6G2P.js +2 -0
- package/dist/cli/chunks/hnsw-adapter-OJNFAGJS.js +2 -0
- package/dist/cli/chunks/hnsw-index-DFUNARVD.js +2 -0
- package/dist/cli/chunks/{hnsw-legacy-bridge-RYUJPA7B.js → hnsw-legacy-bridge-JMHEOIBH.js} +2 -2
- package/dist/cli/chunks/{hnswlib-node-XM6XF3YV.js → hnswlib-node-CBP73QHY.js} +2 -2
- package/dist/cli/chunks/{hooks-X62O7TJO.js → hooks-IP7XE34Z.js} +34 -34
- package/dist/cli/chunks/hybrid-backend-SSGQQEQ2.js +2 -0
- package/dist/cli/chunks/{hypergraph-engine-ZBWUPTVD.js → hypergraph-engine-ONAYHU25.js} +2 -2
- package/dist/cli/chunks/{hypergraph-handler-DUMF6SJV.js → hypergraph-handler-VINJRAID.js} +3 -3
- package/dist/cli/chunks/impact-analyzer-CRGCA7ZD.js +2 -0
- package/dist/cli/chunks/{init-guard-S4I2R46S.js → init-guard-RYVV5R3Z.js} +2 -2
- package/dist/cli/chunks/{init-handler-L4KJHVWS.js → init-handler-MPRGWMOE.js} +6 -6
- package/dist/cli/chunks/init-wizard-NIMZ4J55.js +2 -0
- package/dist/cli/chunks/kernel-JQK7PRAI.js +2 -0
- package/dist/cli/chunks/{kilocode-installer-GNNB5FCZ.js → kilocode-installer-OPD7JBRL.js} +2 -2
- package/dist/cli/chunks/{kiro-installer-HR6ZAH7T.js → kiro-installer-M4OPUNK2.js} +2 -2
- package/dist/cli/chunks/knowledge-graph-YPVVIKEU.js +2 -0
- package/dist/cli/chunks/{learning-4IEEOHJS.js → learning-4UWTQLMF.js} +24 -24
- package/dist/cli/chunks/{llm-router-ZFMORP36.js → llm-router-SQ56FF6Z.js} +4 -4
- package/dist/cli/chunks/llm-router-service-5OGAUOXF.js +2 -0
- package/dist/cli/chunks/{load-ZM43WGDO.js → load-HPHKDGGL.js} +2 -2
- package/dist/cli/chunks/load-test-UKNV5MWW.js +2 -0
- package/dist/cli/chunks/mcp-TELMAC7Z.js +2 -0
- package/dist/cli/chunks/{memory-W5FZGVAD.js → memory-PFQ3KPVJ.js} +5 -5
- package/dist/cli/chunks/memory-backend-ZW4BTRNK.js +2 -0
- package/dist/cli/chunks/memory-handlers-FCXN437E.js +2 -0
- package/dist/cli/chunks/{multi-model-executor-SXXGAQ2G.js → multi-model-executor-3VDRX6TZ.js} +2 -2
- package/dist/cli/chunks/{opencode-installer-PIRBUAB5.js → opencode-installer-PJ576R63.js} +2 -2
- package/dist/cli/chunks/{orchestrator-H5SQCQTB.js → orchestrator-72QP4UU7.js} +63 -19
- package/dist/cli/chunks/pattern-null-store-4DUV6MQC.js +2 -0
- package/dist/cli/chunks/{pattern-usage-recorder-XZTWDI2T.js → pattern-usage-recorder-754YQW7C.js} +2 -2
- package/dist/cli/chunks/pipeline-AVXY4MVB.js +19 -0
- package/dist/cli/chunks/{platform-KJDABL5C.js → platform-3E3DXLYB.js} +2 -2
- package/dist/cli/chunks/{plugin-V4KSBVVM.js → plugin-7FUQAKRE.js} +2 -2
- package/dist/cli/chunks/{prime-radiant-advanced-wasm-JDHTKQAT.js → prime-radiant-advanced-wasm-NIB4F5NV.js} +2 -2
- package/dist/cli/chunks/project-root-JCAUNL6O.js +2 -0
- package/dist/cli/chunks/protocol-executor-RNZNZP3A.js +2 -0
- package/dist/cli/chunks/{protocol-handler-BNRONTQV.js → protocol-handler-BQRYMUTG.js} +2 -2
- package/dist/cli/chunks/{prove-ELLL6XMX.js → prove-H52QGC6B.js} +2 -2
- package/dist/cli/chunks/qe-reasoning-bank-WK6TQOG2.js +2 -0
- package/dist/cli/chunks/{quality-NH2QA4D4.js → quality-QO4XPAUM.js} +2 -2
- package/dist/cli/chunks/{quality-gate-JTKLF7GW.js → quality-gate-FBKE5E6F.js} +3 -3
- package/dist/cli/chunks/queen-coordinator-4452SXZQ.js +2 -0
- package/dist/cli/chunks/{real-embeddings-J3KCKLPB.js → real-embeddings-RWGOVOXO.js} +2 -2
- package/dist/cli/chunks/{ref-validation-HNXQRP4F.js → ref-validation-LF76ZOBD.js} +2 -2
- package/dist/cli/chunks/{roocode-installer-COJ6CX6S.js → roocode-installer-3BYEBTQ7.js} +2 -2
- package/dist/cli/chunks/router-3DIS5X4R.js +2 -0
- package/dist/cli/chunks/routing-feedback-OPXRCXM7.js +2 -0
- package/dist/cli/chunks/{routing-handler-WM33ZILE.js → routing-handler-DST7BVCU.js} +2 -2
- package/dist/cli/chunks/{ruvector-commands-BBLXEA7A.js → ruvector-commands-XE32PGKC.js} +2 -2
- package/dist/cli/chunks/rvf-dual-writer-JL6T727I.js +2 -0
- package/dist/cli/chunks/rvf-migration-adapter-V7IBDUCS.js +2 -0
- package/dist/cli/chunks/{rvf-migration-coordinator-P7H6HCAG.js → rvf-migration-coordinator-VP32XC75.js} +2 -2
- package/dist/cli/chunks/rvf-native-adapter-O3UQTEBK.js +2 -0
- package/dist/cli/chunks/{rvf-store-integrity-R5SPVRFP.js → rvf-store-integrity-SH2AMVI7.js} +2 -2
- package/dist/cli/chunks/safe-db-EVB4ZC7T.js +2 -0
- package/dist/cli/chunks/schedule-ORDDXXY4.js +2 -0
- package/dist/cli/chunks/scheduler-XFLJSFIU.js +2 -0
- package/dist/cli/chunks/{security-AUDTRX3I.js → security-VSPNKCDS.js} +3 -3
- package/dist/cli/chunks/{shared-rvf-adapter-PVDGBGI2.js → shared-rvf-adapter-HX6AHL3P.js} +2 -2
- package/dist/cli/chunks/{shared-rvf-dual-writer-LZ2GMSS2.js → shared-rvf-dual-writer-MX4FC2JE.js} +2 -2
- package/dist/cli/chunks/sqlite-persistence-Y7B42CJ3.js +2 -0
- package/dist/cli/chunks/{standalone-memory-XNOAI4G4.js → standalone-memory-O4QUTK6L.js} +2 -2
- package/dist/cli/chunks/{status-handler-K72XZE4T.js → status-handler-Z2BP6EOG.js} +2 -2
- package/dist/cli/chunks/{structural-health-NF3YY7U5.js → structural-health-R36WNLQG.js} +2 -2
- package/dist/cli/chunks/sync-2ELWUFQU.js +2 -0
- package/dist/cli/chunks/{sync-VBD5Y3E2.js → sync-QF5Y3EMZ.js} +2 -2
- package/dist/cli/chunks/{task-handler-24S3WFVJ.js → task-handler-43PYE75J.js} +2 -2
- package/dist/cli/chunks/task-handlers-KPWAEMKH.js +9 -0
- package/dist/cli/chunks/{test-XFSGQELD.js → test-UWA377D4.js} +16 -16
- package/dist/cli/chunks/test-runner-process-3XZUYST2.js +2 -0
- package/dist/cli/chunks/{test-scheduling-VYUQ4CDE.js → test-scheduling-YQZPJRRN.js} +3 -3
- package/dist/cli/chunks/token-bootstrap-F7C6UKTC.js +2 -0
- package/dist/cli/chunks/{token-usage-VLQ6WO2L.js → token-usage-DO6WLMXP.js} +2 -2
- package/dist/cli/chunks/{transformers-TOFMWWNM.js → transformers-H5RGFKVO.js} +2 -2
- package/dist/cli/chunks/tree-sitter-wasm-parser-YTBCBHUO.js +2 -0
- package/dist/cli/chunks/{types-JTWLBAZJ.js → types-PJS2FGPF.js} +2 -2
- package/dist/cli/chunks/unified-memory-EHD4VNFW.js +2 -0
- package/dist/cli/chunks/unified-memory-hnsw-ZODGM4UK.js +2 -0
- package/dist/cli/chunks/unified-persistence-MHSI7ABK.js +2 -0
- package/dist/cli/chunks/{upgrade-4ABM72T4.js → upgrade-4IC4F6AB.js} +2 -2
- package/dist/cli/chunks/{validate-UDJCWKXI.js → validate-DHUWW7PF.js} +2 -2
- package/dist/cli/chunks/{validate-swarm-TODOUWNN.js → validate-swarm-OERQNOX5.js} +2 -2
- package/dist/cli/chunks/visual-security-54MLFKWY.js +2 -0
- package/dist/cli/chunks/{web-tree-sitter-WBMAJPM5.js → web-tree-sitter-TV7DMKES.js} +2 -2
- package/dist/cli/chunks/{windsurf-installer-BTT53TUL.js → windsurf-installer-QZPWSH37.js} +2 -2
- package/dist/cli/chunks/witness-chain-LC6Q2W27.js +2 -0
- package/dist/cli/chunks/witness-chain-QUIBAF3W.js +2 -0
- package/dist/cli/chunks/witness-chain-repair-RUXIOE7F.js +2 -0
- package/dist/cli/chunks/{witness-chain-verifier-FRY3LMGH.js → witness-chain-verifier-YXENHB42.js} +2 -2
- package/dist/cli/chunks/{witness-key-manager-X7QHQQWL.js → witness-key-manager-HL26AGFO.js} +2 -2
- package/dist/cli/chunks/{workflow-QMZPAWQW.js → workflow-EOVVCN2E.js} +4 -4
- package/dist/cli/chunks/workflow-orchestrator-UKHEJVSK.js +2 -0
- package/dist/cli/chunks/wrappers-AGODHBOO.js +2 -0
- package/dist/cli/commands/fleet.js +19 -12
- package/dist/cli/commands/hooks-handlers/hooks-dream-learning.js +9 -2
- package/dist/cli/commands/hooks-handlers/session-hooks.js +2 -2
- package/dist/cli/commands/hooks-handlers/stats-hooks.js +3 -2
- package/dist/cli/commands/learning.js +5 -3
- package/dist/cli/commands/ruvector-commands.js +2 -1
- package/dist/cli/commands/test.js +6 -0
- package/dist/cli/utils/ci-output.d.ts +9 -0
- package/dist/cli/utils/fleet-operation.d.ts +32 -0
- package/dist/cli/utils/fleet-operation.js +71 -0
- package/dist/cli/utils/fleet-result.d.ts +31 -0
- package/dist/cli/utils/fleet-result.js +124 -0
- package/dist/context/sources/git-source.js +6 -2
- package/dist/coordination/handlers/code-intelligence-handlers.js +60 -5
- package/dist/coordination/handlers/coverage-handlers.js +10 -1
- package/dist/coordination/handlers/requirements-handlers.js +16 -2
- package/dist/coordination/handlers/security-handlers.js +11 -1
- package/dist/coordination/handlers/test-execution-handlers.js +25 -7
- package/dist/coordination/mincut/queen-integration.d.ts +39 -1
- package/dist/coordination/mincut/queen-integration.js +83 -6
- package/dist/coordination/protocols/learning-consolidation-archive.d.ts +2 -6
- package/dist/coordination/protocols/learning-consolidation-archive.js +4 -27
- package/dist/coordination/protocols/learning-consolidation.d.ts +24 -0
- package/dist/coordination/protocols/learning-consolidation.js +71 -22
- package/dist/coordination/queen-coordinator.d.ts +1 -1
- package/dist/coordination/queen-coordinator.js +19 -7
- package/dist/coordination/queen-event-handlers.js +13 -0
- package/dist/coordination/queen-task-management.d.ts +18 -24
- package/dist/coordination/queen-task-management.js +62 -168
- package/dist/coordination/queen-task-queue.d.ts +41 -0
- package/dist/coordination/queen-task-queue.js +194 -0
- package/dist/coordination/queen-types.d.ts +1 -1
- package/dist/coordination/queen-work-stealing.d.ts +6 -1
- package/dist/coordination/queen-work-stealing.js +7 -4
- package/dist/coordination/result-saver-adapters.d.ts +15 -0
- package/dist/coordination/result-saver-adapters.js +57 -0
- package/dist/coordination/result-saver.d.ts +1 -1
- package/dist/coordination/result-saver.js +8 -5
- package/dist/coordination/yaml-pipeline-loader.js +5 -2
- package/dist/domains/code-intelligence/index-path-guard.d.ts +5 -2
- package/dist/domains/code-intelligence/index-path-guard.js +20 -50
- package/dist/domains/code-intelligence/plugin.js +5 -1
- package/dist/domains/code-intelligence/services/metric-collector/index.d.ts +2 -2
- package/dist/domains/code-intelligence/services/metric-collector/index.js +2 -3
- package/dist/domains/code-intelligence/services/metric-collector/loc-counter.d.ts +1 -1
- package/dist/domains/code-intelligence/services/metric-collector/loc-counter.js +11 -36
- package/dist/domains/code-intelligence/services/metric-collector/test-counter.d.ts +1 -1
- package/dist/domains/code-intelligence/services/metric-collector/test-counter.js +45 -103
- package/dist/domains/contract-testing/services/api-compatibility.js +7 -6
- package/dist/domains/contract-testing/services/contract-validator.js +6 -4
- package/dist/domains/contract-testing/services/schema-validator.js +8 -5
- package/dist/domains/defect-intelligence/interfaces.d.ts +2 -0
- package/dist/domains/defect-intelligence/plugin.js +11 -2
- package/dist/domains/defect-intelligence/prediction-history.d.ts +27 -0
- package/dist/domains/defect-intelligence/prediction-history.js +68 -0
- package/dist/domains/defect-intelligence/services/defect-predictor.js +25 -10
- package/dist/domains/enterprise-integration/services/message-broker-service.js +3 -2
- package/dist/domains/enterprise-integration/services/odata-service.js +2 -1
- package/dist/domains/enterprise-integration/services/sap-integration-service.js +3 -2
- package/dist/domains/learning-optimization/active-patterns.d.ts +2 -2
- package/dist/domains/learning-optimization/active-patterns.js +2 -2
- package/dist/domains/learning-optimization/coordinator.js +9 -5
- package/dist/domains/learning-optimization/interfaces.d.ts +6 -2
- package/dist/domains/learning-optimization/pattern-archive.d.ts +31 -0
- package/dist/domains/learning-optimization/pattern-archive.js +56 -0
- package/dist/domains/learning-optimization/pattern-consolidation.d.ts +12 -0
- package/dist/domains/learning-optimization/pattern-consolidation.js +41 -0
- package/dist/domains/learning-optimization/reward-source.d.ts +13 -0
- package/dist/domains/learning-optimization/reward-source.js +8 -1
- package/dist/domains/learning-optimization/services/learning-coordinator.d.ts +5 -3
- package/dist/domains/learning-optimization/services/learning-coordinator.js +45 -58
- package/dist/domains/security-compliance/plugin.js +17 -3
- package/dist/domains/security-compliance/sast-path-guard.d.ts +9 -0
- package/dist/domains/security-compliance/sast-path-guard.js +17 -0
- package/dist/domains/security-compliance/services/scanners/dast-auth-testing.js +46 -56
- package/dist/domains/security-compliance/services/scanners/dast-helpers.js +76 -91
- package/dist/domains/security-compliance/services/scanners/dast-injection-testing.js +52 -62
- package/dist/domains/security-compliance/services/scanners/dast-scanner.d.ts +21 -1
- package/dist/domains/security-compliance/services/scanners/dast-scanner.js +29 -24
- package/dist/domains/security-compliance/services/scanners/scanner-orchestrator.js +4 -1
- package/dist/domains/test-execution/coordinator.d.ts +5 -0
- package/dist/domains/test-execution/coordinator.js +35 -20
- package/dist/domains/test-execution/interfaces.d.ts +25 -0
- package/dist/domains/test-execution/plugin.js +19 -4
- package/dist/domains/test-execution/services/flaky-detector.js +9 -7
- package/dist/domains/test-execution/services/retry-handler.js +46 -7
- package/dist/domains/test-execution/services/runner-test-cases.d.ts +11 -0
- package/dist/domains/test-execution/services/runner-test-cases.js +20 -2
- package/dist/domains/test-execution/services/test-executor.js +8 -8
- package/dist/domains/test-generation/plugin.js +7 -2
- package/dist/domains/test-generation/services/test-data-generator.js +3 -1
- package/dist/domains/visual-accessibility/services/axe-core-audit.js +1 -1
- package/dist/hooks/cross-phase-hooks.js +2 -1
- package/dist/init/phases/10-workers.js +50 -6
- package/dist/integrations/browser/agent-browser/client.js +37 -52
- package/dist/integrations/browser/agent-browser/command-executor.d.ts +33 -27
- package/dist/integrations/browser/agent-browser/command-executor.js +53 -54
- package/dist/integrations/browser/agent-browser/session-manager.d.ts +1 -1
- package/dist/integrations/browser/agent-browser/session-manager.js +8 -9
- package/dist/integrations/browser/web-content-fetcher.js +9 -3
- package/dist/integrations/vibium/client.js +2 -2
- package/dist/integrations/vibium/runtime.d.ts +1 -1
- package/dist/integrations/vibium/runtime.js +14 -11
- package/dist/kernel/unified-memory-schemas.d.ts +3 -2
- package/dist/kernel/unified-memory-schemas.js +3 -2
- package/dist/kernel/unified-memory.js +25 -6
- package/dist/learning/dream/dream-commit.d.ts +65 -0
- package/dist/learning/dream/dream-commit.js +104 -0
- package/dist/learning/dream/dream-engine.d.ts +81 -31
- package/dist/learning/dream/dream-engine.js +225 -168
- package/dist/learning/dream/dream-insights-pruner.d.ts +9 -3
- package/dist/learning/dream/dream-insights-pruner.js +16 -30
- package/dist/learning/dream/index.d.ts +3 -2
- package/dist/learning/dream/index.js +3 -1
- package/dist/learning/dream/rvcow-branch-manager.d.ts +8 -1
- package/dist/learning/dream/rvcow-branch-manager.js +8 -1
- package/dist/learning/dream/speculative-dreamer.d.ts +50 -74
- package/dist/learning/dream/speculative-dreamer.js +64 -111
- package/dist/learning/dream/spreading-activation.d.ts +2 -1
- package/dist/learning/dream/spreading-activation.js +15 -6
- package/dist/learning/experience-capture.d.ts +9 -0
- package/dist/learning/experience-capture.js +18 -4
- package/dist/learning/qe-reasoning-bank-types.d.ts +17 -2
- package/dist/learning/qe-reasoning-bank.js +22 -11
- package/dist/learning/sqlite-persistence.d.ts +6 -0
- package/dist/learning/sqlite-persistence.js +16 -2
- package/dist/learning/usage-outcome.d.ts +68 -0
- package/dist/learning/usage-outcome.js +84 -0
- package/dist/mcp/background-workers.d.ts +13 -1
- package/dist/mcp/background-workers.js +17 -3
- package/dist/mcp/bundle.js +607 -580
- package/dist/mcp/handlers/core-handlers.js +11 -0
- package/dist/mcp/handlers/domain-handler-configs.d.ts +5 -0
- package/dist/mcp/handlers/domain-handler-configs.js +11 -3
- package/dist/mcp/handlers/handler-factory.d.ts +2 -1
- package/dist/mcp/handlers/handler-factory.js +36 -15
- package/dist/mcp/handlers/orchestrate-routes.d.ts +36 -0
- package/dist/mcp/handlers/orchestrate-routes.js +88 -0
- package/dist/mcp/handlers/task-handlers.d.ts +3 -0
- package/dist/mcp/handlers/task-handlers.js +35 -8
- package/dist/mcp/handlers/validation-pipeline-handler.js +6 -2
- package/dist/mcp/protocol-server.js +2 -0
- package/dist/mcp/security/schema-validator.js +3 -2
- package/dist/mcp/tools/code-intelligence/c4.js +11 -1
- package/dist/mcp/tools/coverage-analysis/index.js +31 -2
- package/dist/mcp/tools/learning-optimization/dream.d.ts +8 -8
- package/dist/mcp/tools/learning-optimization/dream.js +38 -34
- package/dist/mcp/tools/learning-optimization/optimize.d.ts +18 -2
- package/dist/mcp/tools/learning-optimization/optimize.js +58 -10
- package/dist/mcp/tools/quality-assessment/gate.js +12 -1
- package/dist/mcp/tools/requirements-validation/quality-criteria.js +9 -2
- package/dist/migration/agent-compat.js +7 -5
- package/dist/migrations/20261018_add_dream_insights_archive.d.ts +27 -0
- package/dist/migrations/20261018_add_dream_insights_archive.js +57 -0
- package/dist/shared/git/git-analyzer.d.ts +49 -0
- package/dist/shared/git/git-analyzer.js +159 -319
- package/dist/shared/git/git-process.d.ts +22 -0
- package/dist/shared/git/git-process.js +37 -0
- package/dist/shared/git/index.d.ts +1 -0
- package/dist/shared/git/index.js +1 -0
- package/dist/shared/io/payload-path-guard.d.ts +75 -0
- package/dist/shared/io/payload-path-guard.js +190 -0
- package/dist/shared/llm/router/agent-router-config.js +2 -1
- package/dist/shared/llm/translation/tool-translator.js +2 -1
- package/dist/shared/test-runner-args.d.ts +5 -0
- package/dist/shared/test-runner-args.js +6 -1
- package/dist/shared/test-runner-process.d.ts +6 -0
- package/dist/shared/test-runner-process.js +14 -0
- package/dist/shared/test-runner-verdict.d.ts +9 -1
- package/dist/shared/test-runner-verdict.js +15 -4
- package/dist/shared/utils/namespaced-search.d.ts +14 -0
- package/dist/shared/utils/namespaced-search.js +19 -1
- package/dist/shared/utils/safe-expression-evaluator.js +4 -3
- package/dist/strange-loop/infra-healing/recovery-playbook.js +13 -3
- package/dist/validation/gate-reexecute.js +7 -4
- package/dist/workers/daemon.js +13 -1
- package/dist/workers/quality-daemon/git-watcher.js +9 -9
- package/dist/workers/workers/defect-predictor.d.ts +8 -3
- package/dist/workers/workers/defect-predictor.js +48 -49
- package/dist/workers/workers/learning-consolidation.d.ts +2 -0
- package/dist/workers/workers/learning-consolidation.js +12 -1
- package/dist/workflows/browser/workflow-loader.js +8 -5
- package/package.json +1 -1
- package/dist/cli/chunks/adapter-R2Q4QGXQ.js +0 -2
- package/dist/cli/chunks/agent-booster-wasm-427FRKWG.js +0 -2
- package/dist/cli/chunks/aqe-learning-engine-3RENLQWP.js +0 -2
- package/dist/cli/chunks/base-67DXSAYM.js +0 -2
- package/dist/cli/chunks/browser-CT3MTV6G.js +0 -4
- package/dist/cli/chunks/browser-workflow-NDXRROWZ.js +0 -2
- package/dist/cli/chunks/chunk-4URT6JO2.js +0 -2
- package/dist/cli/chunks/chunk-5LAAZLUC.js +0 -4
- package/dist/cli/chunks/chunk-7DMA5NYL.js +0 -4
- package/dist/cli/chunks/chunk-F2SQPP6U.js +0 -4
- package/dist/cli/chunks/chunk-G3BKZNFL.js +0 -120
- package/dist/cli/chunks/chunk-GR3JYE5A.js +0 -2
- package/dist/cli/chunks/chunk-J3WGK22W.js +0 -2
- package/dist/cli/chunks/chunk-KHSRIPBP.js +0 -180
- package/dist/cli/chunks/chunk-KTSLTZSG.js +0 -2
- package/dist/cli/chunks/chunk-O3JLOVZX.js +0 -4
- package/dist/cli/chunks/chunk-THAY7WHO.js +0 -12
- package/dist/cli/chunks/chunk-VXZJOKOX.js +0 -2
- package/dist/cli/chunks/chunk-VYLM2YV5.js +0 -12
- package/dist/cli/chunks/client-ZP3CTVRF.js +0 -2
- package/dist/cli/chunks/core-handlers-JSRXQWPE.js +0 -2
- package/dist/cli/chunks/cross-domain-router-7UKODQWG.js +0 -2
- package/dist/cli/chunks/daemon-YIFT46FH.js +0 -34
- package/dist/cli/chunks/domain-transfer-6EF75EKU.js +0 -2
- package/dist/cli/chunks/dream-UDLM6M55.js +0 -2
- package/dist/cli/chunks/file-discovery-THWOUQ7Z.js +0 -2
- package/dist/cli/chunks/fleet-ADL57COA.js +0 -44
- package/dist/cli/chunks/heartbeat-scheduler-HGOC5KH3.js +0 -2
- package/dist/cli/chunks/hnsw-adapter-EPSA6AP7.js +0 -2
- package/dist/cli/chunks/hnsw-index-RMFOPYGY.js +0 -2
- package/dist/cli/chunks/hybrid-backend-NZ3G4WBX.js +0 -2
- package/dist/cli/chunks/impact-analyzer-WZC6NHFP.js +0 -2
- package/dist/cli/chunks/init-wizard-422UZYQ5.js +0 -2
- package/dist/cli/chunks/kernel-N7PJ6FCE.js +0 -2
- package/dist/cli/chunks/knowledge-graph-SZCVQF37.js +0 -2
- package/dist/cli/chunks/llm-router-service-4DE5WDUZ.js +0 -2
- package/dist/cli/chunks/load-test-POMIF4Q4.js +0 -2
- package/dist/cli/chunks/mcp-CRZKZE37.js +0 -2
- package/dist/cli/chunks/memory-backend-4P6AHSOY.js +0 -2
- package/dist/cli/chunks/memory-handlers-NK6NV3GE.js +0 -2
- package/dist/cli/chunks/pattern-null-store-CCHQHGQG.js +0 -2
- package/dist/cli/chunks/pipeline-5LMLBIJ7.js +0 -19
- package/dist/cli/chunks/project-root-X72FSM2F.js +0 -2
- package/dist/cli/chunks/protocol-executor-QW6XN6QN.js +0 -2
- package/dist/cli/chunks/qe-reasoning-bank-ZD3WF647.js +0 -2
- package/dist/cli/chunks/queen-coordinator-S4U4MKK2.js +0 -2
- package/dist/cli/chunks/router-CXZKOOTR.js +0 -2
- package/dist/cli/chunks/routing-feedback-IYFANYY5.js +0 -2
- package/dist/cli/chunks/rvf-dual-writer-HCLQ5WUQ.js +0 -2
- package/dist/cli/chunks/rvf-migration-adapter-XCLUWOO3.js +0 -2
- package/dist/cli/chunks/rvf-native-adapter-MRT5H3IP.js +0 -2
- package/dist/cli/chunks/safe-db-WFODRGVZ.js +0 -2
- package/dist/cli/chunks/schedule-RO55OQXG.js +0 -2
- package/dist/cli/chunks/scheduler-XXMJCH24.js +0 -2
- package/dist/cli/chunks/sqlite-persistence-AWRIS4MK.js +0 -2
- package/dist/cli/chunks/sync-UVXA6CT2.js +0 -2
- package/dist/cli/chunks/task-handlers-GUYW2EPJ.js +0 -9
- package/dist/cli/chunks/token-bootstrap-EDK6FNQ3.js +0 -2
- package/dist/cli/chunks/tree-sitter-wasm-parser-MI3NZKUD.js +0 -2
- package/dist/cli/chunks/unified-memory-6JWHV6EF.js +0 -2
- package/dist/cli/chunks/unified-memory-hnsw-4UANU6NU.js +0 -2
- package/dist/cli/chunks/unified-persistence-KGGNA46H.js +0 -2
- package/dist/cli/chunks/visual-security-6VZNQLH7.js +0 -2
- package/dist/cli/chunks/witness-chain-AKKHWEWU.js +0 -2
- package/dist/cli/chunks/witness-chain-TATPXQRK.js +0 -2
- package/dist/cli/chunks/witness-chain-repair-2HGJGE7O.js +0 -2
- package/dist/cli/chunks/workflow-orchestrator-4GAW7HNZ.js +0 -2
- package/dist/cli/chunks/wrappers-ZD5NBHYI.js +0 -2
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { err } from '../../shared/types/index.js';
|
|
6
6
|
import { BaseDomainPlugin } from '../domain-interface.js';
|
|
7
|
+
import { MAX_PAYLOAD_FILE_BYTES, requirePayloadFiles } from '../../shared/io/payload-path-guard.js';
|
|
7
8
|
import { TestGenerationCoordinator, } from './coordinator.js';
|
|
8
9
|
// D9: live routing-feedback so free-tier outcomes lift routing confidence.
|
|
9
10
|
import { RoutingFeedbackCollector } from '../../routing/routing-feedback.js';
|
|
@@ -73,12 +74,16 @@ export class TestGenerationPlugin extends BaseDomainPlugin {
|
|
|
73
74
|
if (!this.coordinator) {
|
|
74
75
|
return err(new Error('Coordinator not initialized'));
|
|
75
76
|
}
|
|
76
|
-
const sourceFiles = payload.sourceFiles;
|
|
77
77
|
const testType = payload.testType;
|
|
78
78
|
const framework = payload.framework;
|
|
79
|
-
if (!sourceFiles || sourceFiles.length === 0) {
|
|
79
|
+
if (!Array.isArray(payload.sourceFiles) || payload.sourceFiles.length === 0) {
|
|
80
80
|
return err(new Error('Invalid generate-tests payload: missing sourceFiles'));
|
|
81
81
|
}
|
|
82
|
+
// #1126: the generator reads each file whole, so only project files.
|
|
83
|
+
const confined = await requirePayloadFiles('generate-tests', 'sourceFiles', payload.sourceFiles, { maxBytes: MAX_PAYLOAD_FILE_BYTES });
|
|
84
|
+
if (!confined.success)
|
|
85
|
+
return confined;
|
|
86
|
+
const sourceFiles = confined.value;
|
|
82
87
|
const request = {
|
|
83
88
|
sourceFiles,
|
|
84
89
|
testType: testType ?? 'unit',
|
|
@@ -230,7 +230,9 @@ export class TestDataGeneratorService {
|
|
|
230
230
|
const parts = methodPath.split('.');
|
|
231
231
|
let result = f;
|
|
232
232
|
for (const part of parts) {
|
|
233
|
-
|
|
233
|
+
// #1136: a member every object inherits (`constructor`, `toString`)
|
|
234
|
+
// is not a faker method.
|
|
235
|
+
if (result && typeof result === 'object' && part in result && !(part in Object.prototype)) {
|
|
234
236
|
const next = result[part];
|
|
235
237
|
if (typeof next === 'function') {
|
|
236
238
|
result = next();
|
|
@@ -332,7 +332,8 @@ export class CrossPhaseHookExecutor {
|
|
|
332
332
|
}
|
|
333
333
|
getValueFromPath(obj, path) {
|
|
334
334
|
return path.split('.').reduce((curr, key) => {
|
|
335
|
-
|
|
335
|
+
// #1136: own properties only.
|
|
336
|
+
if (curr && typeof curr === 'object' && Object.hasOwn(curr, key)) {
|
|
336
337
|
return curr[key];
|
|
337
338
|
}
|
|
338
339
|
return undefined;
|
|
@@ -150,6 +150,29 @@ if (existsSync(pidFile) && isRegularOrAbsent(pidFile)) {
|
|
|
150
150
|
try { process.kill(pid, 0); console.log('Daemon already running (PID: ' + pid + ')'); process.exit(0); } catch {}
|
|
151
151
|
}
|
|
152
152
|
|
|
153
|
+
// #1116: honour AQE_WORKERS_ENABLED, from the environment or else the project's
|
|
154
|
+
// .claude/settings.local.json or settings.json env (where \`aqe init
|
|
155
|
+
// --no-database\` writes it; the local file wins, as in Claude Code), the same
|
|
156
|
+
// falsy values as the MCP server. A JSON boolean counts as its string.
|
|
157
|
+
// Disabled means nothing is spawned.
|
|
158
|
+
function workersEnabledSetting() {
|
|
159
|
+
if (process.env.AQE_WORKERS_ENABLED !== undefined) return process.env.AQE_WORKERS_ENABLED;
|
|
160
|
+
for (const file of ['settings.local.json', 'settings.json']) {
|
|
161
|
+
try {
|
|
162
|
+
const settings = JSON.parse(readFileSync(join(projectRoot, '.claude', file), 'utf-8'));
|
|
163
|
+
const value = settings && settings.env && settings.env.AQE_WORKERS_ENABLED;
|
|
164
|
+
if (typeof value === 'string') return value;
|
|
165
|
+
if (typeof value === 'boolean') return String(value);
|
|
166
|
+
} catch { /* missing or unreadable: try the next file */ }
|
|
167
|
+
}
|
|
168
|
+
return undefined;
|
|
169
|
+
}
|
|
170
|
+
const workersSetting = workersEnabledSetting();
|
|
171
|
+
if (workersSetting !== undefined && ['false', '0', 'off', 'no'].includes(workersSetting.trim().toLowerCase())) {
|
|
172
|
+
console.log('AQE v3 Worker Daemon not started: background workers are disabled (AQE_WORKERS_ENABLED=' + workersSetting + ')');
|
|
173
|
+
process.exit(0);
|
|
174
|
+
}
|
|
175
|
+
|
|
153
176
|
const ts = new Date().toISOString();
|
|
154
177
|
appendFileSync(logFile, '[' + ts + '] Starting AQE v3 Worker Daemon...\\n');
|
|
155
178
|
|
|
@@ -205,17 +228,38 @@ if (binCandidate && binCandidate.endsWith('bundle.js')) {
|
|
|
205
228
|
appendFileSync(logFile, '[' + ts + '] Using: ' + mcpCmd + ' ' + mcpArgs.join(' ') + '\\n');
|
|
206
229
|
|
|
207
230
|
// #1066: keep a user's AQE_WORKERS_ENABLED (for example false) instead of forcing it on.
|
|
208
|
-
const env = { ...process.env, AQE_STORAGE_PATH: '.agentic-qe', AQE_LEARNING_ENABLED: 'true', AQE_WORKERS_ENABLED:
|
|
231
|
+
const env = { ...process.env, AQE_STORAGE_PATH: '.agentic-qe', AQE_LEARNING_ENABLED: 'true', AQE_WORKERS_ENABLED: workersSetting ?? 'true', AQE_HTTP_PORT: '0' };
|
|
209
232
|
const child = spawn(mcpCmd, mcpArgs, { cwd: projectRoot, env, detached: true, stdio: ['ignore', 'pipe', 'pipe'] });
|
|
210
233
|
child.stdout.on('data', d => appendFileSync(logFile, d));
|
|
211
234
|
child.stderr.on('data', d => appendFileSync(logFile, d));
|
|
235
|
+
let exited = null;
|
|
236
|
+
child.on('exit', (code, signal) => { exited = { code, signal }; });
|
|
237
|
+
// #1116: a command that cannot be started (no npx on PATH: spawn ENOENT) emits
|
|
238
|
+
// 'error' instead of 'exit'; without a handler the script crashed and left
|
|
239
|
+
// "undefined" in daemon.pid.
|
|
240
|
+
child.on('error', (error) => {
|
|
241
|
+
try { fs.unlinkSync(pidFile); } catch {}
|
|
242
|
+
appendFileSync(logFile, '[' + ts + '] Daemon could not be started: ' + error.message + '\\n');
|
|
243
|
+
console.error('AQE v3 Worker Daemon not started: ' + error.message + '; see ' + logFile);
|
|
244
|
+
process.exit(1);
|
|
245
|
+
});
|
|
212
246
|
child.unref();
|
|
213
247
|
|
|
214
|
-
writeFileSync(pidFile, String(child.pid));
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
248
|
+
if (child.pid !== undefined) writeFileSync(pidFile, String(child.pid));
|
|
249
|
+
// #1116: say "started" only if the server is still running a moment later.
|
|
250
|
+
setTimeout(() => {
|
|
251
|
+
if (exited) {
|
|
252
|
+
try { fs.unlinkSync(pidFile); } catch {}
|
|
253
|
+
appendFileSync(logFile, '[' + ts + '] Daemon exited right away (code ' + exited.code + ', signal ' + exited.signal + ')\\n');
|
|
254
|
+
console.error('AQE v3 Worker Daemon not started: the MCP server exited right away (code ' + exited.code + '); see ' + logFile);
|
|
255
|
+
process.exitCode = 1;
|
|
256
|
+
return;
|
|
257
|
+
}
|
|
258
|
+
appendFileSync(logFile, '[' + ts + '] Daemon started with PID: ' + child.pid + '\\n');
|
|
259
|
+
console.log('AQE v3 Worker Daemon started (PID: ' + child.pid + ')');
|
|
260
|
+
console.log('Log file: ' + logFile);
|
|
261
|
+
console.log('To stop: node ' + join(workersDir, 'stop-daemon.cjs'));
|
|
262
|
+
}, 3000);
|
|
219
263
|
`;
|
|
220
264
|
writeFileIfChanged(daemonScriptPath, daemonScript);
|
|
221
265
|
// Also write a cross-platform stop script
|
|
@@ -210,7 +210,7 @@ export class AgentBrowserClient {
|
|
|
210
210
|
// Extra safety: also terminate via executor if we have one
|
|
211
211
|
if (this.executor) {
|
|
212
212
|
try {
|
|
213
|
-
this.executor.terminateDaemon();
|
|
213
|
+
await this.executor.terminateDaemon();
|
|
214
214
|
}
|
|
215
215
|
catch (error) {
|
|
216
216
|
// Non-critical: best effort daemon termination
|
|
@@ -251,7 +251,7 @@ export class AgentBrowserClient {
|
|
|
251
251
|
async navigate(url) {
|
|
252
252
|
const startTime = Date.now();
|
|
253
253
|
try {
|
|
254
|
-
const result = this.executor.open(url);
|
|
254
|
+
const result = await this.executor.open(url);
|
|
255
255
|
if (!result.success) {
|
|
256
256
|
return err(new BrowserError(result.error ?? 'Navigation failed', 'NAVIGATION_FAILED', 'agent-browser'));
|
|
257
257
|
}
|
|
@@ -260,7 +260,7 @@ export class AgentBrowserClient {
|
|
|
260
260
|
this.sessionManager.updateSessionUrl(this.currentSessionId, url);
|
|
261
261
|
}
|
|
262
262
|
// Get page info for result
|
|
263
|
-
const evalResult = this.executor.eval('JSON.stringify({ title: document.title, url: window.location.href })');
|
|
263
|
+
const evalResult = await this.executor.eval('JSON.stringify({ title: document.title, url: window.location.href })');
|
|
264
264
|
const pageInfo = evalResult.success && evalResult.data
|
|
265
265
|
? typeof evalResult.data === 'string'
|
|
266
266
|
? safeJsonParse(evalResult.data)
|
|
@@ -282,7 +282,7 @@ export class AgentBrowserClient {
|
|
|
282
282
|
*/
|
|
283
283
|
async reload() {
|
|
284
284
|
try {
|
|
285
|
-
const result = this.executor.eval('window.location.reload()');
|
|
285
|
+
const result = await this.executor.eval('window.location.reload()');
|
|
286
286
|
if (!result.success) {
|
|
287
287
|
return err(new BrowserError(result.error ?? 'Reload failed', 'RELOAD_FAILED', 'agent-browser'));
|
|
288
288
|
}
|
|
@@ -297,7 +297,7 @@ export class AgentBrowserClient {
|
|
|
297
297
|
*/
|
|
298
298
|
async goBack() {
|
|
299
299
|
try {
|
|
300
|
-
const result = this.executor.eval('window.history.back()');
|
|
300
|
+
const result = await this.executor.eval('window.history.back()');
|
|
301
301
|
if (!result.success) {
|
|
302
302
|
return err(new BrowserError(result.error ?? 'Go back failed', 'HISTORY_FAILED', 'agent-browser'));
|
|
303
303
|
}
|
|
@@ -312,7 +312,7 @@ export class AgentBrowserClient {
|
|
|
312
312
|
*/
|
|
313
313
|
async goForward() {
|
|
314
314
|
try {
|
|
315
|
-
const result = this.executor.eval('window.history.forward()');
|
|
315
|
+
const result = await this.executor.eval('window.history.forward()');
|
|
316
316
|
if (!result.success) {
|
|
317
317
|
return err(new BrowserError(result.error ?? 'Go forward failed', 'HISTORY_FAILED', 'agent-browser'));
|
|
318
318
|
}
|
|
@@ -331,7 +331,7 @@ export class AgentBrowserClient {
|
|
|
331
331
|
async click(target) {
|
|
332
332
|
try {
|
|
333
333
|
const resolvedTarget = resolveTarget(target);
|
|
334
|
-
const result = this.executor.click(resolvedTarget);
|
|
334
|
+
const result = await this.executor.click(resolvedTarget);
|
|
335
335
|
if (!result.success) {
|
|
336
336
|
return err(new BrowserElementNotFoundError('agent-browser', target, new Error(result.error)));
|
|
337
337
|
}
|
|
@@ -347,7 +347,7 @@ export class AgentBrowserClient {
|
|
|
347
347
|
async fill(target, text) {
|
|
348
348
|
try {
|
|
349
349
|
const resolvedTarget = resolveTarget(target);
|
|
350
|
-
const result = this.executor.fill(resolvedTarget, text);
|
|
350
|
+
const result = await this.executor.fill(resolvedTarget, text);
|
|
351
351
|
if (!result.success) {
|
|
352
352
|
return err(new BrowserElementNotFoundError('agent-browser', target, new Error(result.error)));
|
|
353
353
|
}
|
|
@@ -363,7 +363,7 @@ export class AgentBrowserClient {
|
|
|
363
363
|
async getText(target) {
|
|
364
364
|
try {
|
|
365
365
|
const resolvedTarget = resolveTarget(target);
|
|
366
|
-
const result = this.executor.getText(resolvedTarget);
|
|
366
|
+
const result = await this.executor.getText(resolvedTarget);
|
|
367
367
|
if (!result.success) {
|
|
368
368
|
return err(new BrowserElementNotFoundError('agent-browser', target, new Error(result.error)));
|
|
369
369
|
}
|
|
@@ -400,7 +400,7 @@ export class AgentBrowserClient {
|
|
|
400
400
|
async isVisible(target) {
|
|
401
401
|
try {
|
|
402
402
|
const resolvedTarget = resolveTarget(target);
|
|
403
|
-
const result = this.executor.isVisible(resolvedTarget);
|
|
403
|
+
const result = await this.executor.isVisible(resolvedTarget);
|
|
404
404
|
if (!result.success) {
|
|
405
405
|
// Element not found means not visible
|
|
406
406
|
return ok(false);
|
|
@@ -419,12 +419,12 @@ export class AgentBrowserClient {
|
|
|
419
419
|
*/
|
|
420
420
|
async screenshot(options) {
|
|
421
421
|
try {
|
|
422
|
-
const result = this.executor.screenshot(options?.path, options?.fullPage);
|
|
422
|
+
const result = await this.executor.screenshot(options?.path, options?.fullPage);
|
|
423
423
|
if (!result.success) {
|
|
424
424
|
return err(new BrowserError(result.error ?? 'Screenshot failed', 'SCREENSHOT_FAILED', 'agent-browser'));
|
|
425
425
|
}
|
|
426
426
|
// Get viewport dimensions
|
|
427
|
-
const dimensionsResult = this.executor.eval('JSON.stringify({ width: window.innerWidth, height: window.innerHeight })');
|
|
427
|
+
const dimensionsResult = await this.executor.eval('JSON.stringify({ width: window.innerWidth, height: window.innerHeight })');
|
|
428
428
|
let dimensions = { width: 1280, height: 720 };
|
|
429
429
|
if (dimensionsResult.success && dimensionsResult.data) {
|
|
430
430
|
const parsed = typeof dimensionsResult.data === 'string'
|
|
@@ -451,7 +451,7 @@ export class AgentBrowserClient {
|
|
|
451
451
|
*/
|
|
452
452
|
async evaluate(script) {
|
|
453
453
|
try {
|
|
454
|
-
const result = this.executor.eval(script);
|
|
454
|
+
const result = await this.executor.eval(script);
|
|
455
455
|
if (!result.success) {
|
|
456
456
|
return err(new BrowserError(result.error ?? 'Evaluation failed', 'EVAL_FAILED', 'agent-browser'));
|
|
457
457
|
}
|
|
@@ -487,7 +487,7 @@ export class AgentBrowserClient {
|
|
|
487
487
|
*/
|
|
488
488
|
async getSnapshot(options) {
|
|
489
489
|
try {
|
|
490
|
-
const result = this.executor.snapshot({
|
|
490
|
+
const result = await this.executor.snapshot({
|
|
491
491
|
interactive: options?.interactive,
|
|
492
492
|
depth: options?.depth,
|
|
493
493
|
});
|
|
@@ -504,8 +504,8 @@ export class AgentBrowserClient {
|
|
|
504
504
|
parsed = this.snapshotParser.parse(String(result.data));
|
|
505
505
|
}
|
|
506
506
|
// Get current URL and title
|
|
507
|
-
const urlResult = this.executor.eval('window.location.href');
|
|
508
|
-
const titleResult = this.executor.eval('document.title');
|
|
507
|
+
const urlResult = await this.executor.eval('window.location.href');
|
|
508
|
+
const titleResult = await this.executor.eval('document.title');
|
|
509
509
|
if (urlResult.success) {
|
|
510
510
|
parsed.url = String(urlResult.data);
|
|
511
511
|
}
|
|
@@ -578,7 +578,7 @@ export class AgentBrowserClient {
|
|
|
578
578
|
body: response.body,
|
|
579
579
|
headers: response.headers,
|
|
580
580
|
};
|
|
581
|
-
const result = this.executor.mockRoute(urlPattern, mockBody);
|
|
581
|
+
const result = await this.executor.mockRoute(urlPattern, mockBody);
|
|
582
582
|
if (!result.success) {
|
|
583
583
|
return err(new BrowserError(result.error ?? 'Mock route failed', 'MOCK_ROUTE_FAILED', 'agent-browser'));
|
|
584
584
|
}
|
|
@@ -593,7 +593,7 @@ export class AgentBrowserClient {
|
|
|
593
593
|
*/
|
|
594
594
|
async abortRoute(urlPattern) {
|
|
595
595
|
try {
|
|
596
|
-
const result = this.executor.abortRoute(urlPattern);
|
|
596
|
+
const result = await this.executor.abortRoute(urlPattern);
|
|
597
597
|
if (!result.success) {
|
|
598
598
|
return err(new BrowserError(result.error ?? 'Abort route failed', 'ABORT_ROUTE_FAILED', 'agent-browser'));
|
|
599
599
|
}
|
|
@@ -608,7 +608,7 @@ export class AgentBrowserClient {
|
|
|
608
608
|
*/
|
|
609
609
|
async clearRoutes() {
|
|
610
610
|
try {
|
|
611
|
-
const result = this.executor.clearRoutes();
|
|
611
|
+
const result = await this.executor.clearRoutes();
|
|
612
612
|
if (!result.success) {
|
|
613
613
|
return err(new BrowserError(result.error ?? 'Clear routes failed', 'CLEAR_ROUTES_FAILED', 'agent-browser'));
|
|
614
614
|
}
|
|
@@ -626,7 +626,7 @@ export class AgentBrowserClient {
|
|
|
626
626
|
*/
|
|
627
627
|
async setDevice(deviceName) {
|
|
628
628
|
try {
|
|
629
|
-
const result = this.executor.setDevice(deviceName);
|
|
629
|
+
const result = await this.executor.setDevice(deviceName);
|
|
630
630
|
if (!result.success) {
|
|
631
631
|
return err(new BrowserError(result.error ?? 'Set device failed', 'SET_DEVICE_FAILED', 'agent-browser'));
|
|
632
632
|
}
|
|
@@ -641,7 +641,7 @@ export class AgentBrowserClient {
|
|
|
641
641
|
*/
|
|
642
642
|
async setViewport(width, height) {
|
|
643
643
|
try {
|
|
644
|
-
const result = this.executor.setViewport(width, height);
|
|
644
|
+
const result = await this.executor.setViewport(width, height);
|
|
645
645
|
if (!result.success) {
|
|
646
646
|
return err(new BrowserError(result.error ?? 'Set viewport failed', 'SET_VIEWPORT_FAILED', 'agent-browser'));
|
|
647
647
|
}
|
|
@@ -659,7 +659,7 @@ export class AgentBrowserClient {
|
|
|
659
659
|
*/
|
|
660
660
|
async saveState(path) {
|
|
661
661
|
try {
|
|
662
|
-
const result = this.executor.saveState(path);
|
|
662
|
+
const result = await this.executor.saveState(path);
|
|
663
663
|
if (!result.success) {
|
|
664
664
|
return err(new BrowserError(result.error ?? 'Save state failed', 'SAVE_STATE_FAILED', 'agent-browser'));
|
|
665
665
|
}
|
|
@@ -674,7 +674,7 @@ export class AgentBrowserClient {
|
|
|
674
674
|
*/
|
|
675
675
|
async loadState(path) {
|
|
676
676
|
try {
|
|
677
|
-
const result = this.executor.loadState(path);
|
|
677
|
+
const result = await this.executor.loadState(path);
|
|
678
678
|
if (!result.success) {
|
|
679
679
|
return err(new BrowserError(result.error ?? 'Load state failed', 'LOAD_STATE_FAILED', 'agent-browser'));
|
|
680
680
|
}
|
|
@@ -693,7 +693,7 @@ export class AgentBrowserClient {
|
|
|
693
693
|
async waitForElement(target, timeout) {
|
|
694
694
|
try {
|
|
695
695
|
const resolvedTarget = resolveTarget(target);
|
|
696
|
-
const result = this.executor.waitForElement(resolvedTarget, timeout);
|
|
696
|
+
const result = await this.executor.waitForElement(resolvedTarget, timeout);
|
|
697
697
|
if (!result.success) {
|
|
698
698
|
return err(new BrowserTimeoutError('agent-browser', `waitForElement(${resolvedTarget})`, new Error(result.error)));
|
|
699
699
|
}
|
|
@@ -711,7 +711,7 @@ export class AgentBrowserClient {
|
|
|
711
711
|
// The timeout parameter is ignored by the current CLI implementation
|
|
712
712
|
// but we accept it for interface compatibility
|
|
713
713
|
void timeout;
|
|
714
|
-
const result = this.executor.waitForText(text);
|
|
714
|
+
const result = await this.executor.waitForText(text);
|
|
715
715
|
if (!result.success) {
|
|
716
716
|
return err(new BrowserTimeoutError('agent-browser', `waitForText("${text}")`, new Error(result.error)));
|
|
717
717
|
}
|
|
@@ -728,7 +728,7 @@ export class AgentBrowserClient {
|
|
|
728
728
|
try {
|
|
729
729
|
// The timeout parameter is ignored by the current CLI implementation
|
|
730
730
|
void timeout;
|
|
731
|
-
const result = this.executor.waitForUrl(pattern);
|
|
731
|
+
const result = await this.executor.waitForUrl(pattern);
|
|
732
732
|
if (!result.success) {
|
|
733
733
|
return err(new BrowserTimeoutError('agent-browser', `waitForUrl("${pattern}")`, new Error(result.error)));
|
|
734
734
|
}
|
|
@@ -745,7 +745,7 @@ export class AgentBrowserClient {
|
|
|
745
745
|
try {
|
|
746
746
|
// The timeout parameter is ignored by the current CLI implementation
|
|
747
747
|
void timeout;
|
|
748
|
-
const result = this.executor.waitForNetworkIdle();
|
|
748
|
+
const result = await this.executor.waitForNetworkIdle();
|
|
749
749
|
if (!result.success) {
|
|
750
750
|
return err(new BrowserTimeoutError('agent-browser', 'waitForNetworkIdle', new Error(result.error)));
|
|
751
751
|
}
|
|
@@ -766,7 +766,7 @@ export class AgentBrowserClient {
|
|
|
766
766
|
*/
|
|
767
767
|
async startTrace() {
|
|
768
768
|
try {
|
|
769
|
-
const result = this.executor.startTrace();
|
|
769
|
+
const result = await this.executor.startTrace();
|
|
770
770
|
if (!result.success) {
|
|
771
771
|
return err(new BrowserError(result.error ?? 'Start trace failed', 'START_TRACE_FAILED', 'agent-browser'));
|
|
772
772
|
}
|
|
@@ -784,7 +784,7 @@ export class AgentBrowserClient {
|
|
|
784
784
|
*/
|
|
785
785
|
async stopTrace(outputPath) {
|
|
786
786
|
try {
|
|
787
|
-
const result = this.executor.stopTrace(outputPath);
|
|
787
|
+
const result = await this.executor.stopTrace(outputPath);
|
|
788
788
|
if (!result.success) {
|
|
789
789
|
return err(new BrowserError(result.error ?? 'Stop trace failed', 'STOP_TRACE_FAILED', 'agent-browser'));
|
|
790
790
|
}
|
|
@@ -815,28 +815,13 @@ export function createAgentBrowserClient(config) {
|
|
|
815
815
|
* Only use in test environments.
|
|
816
816
|
*/
|
|
817
817
|
export async function cleanupAllBrowserProcesses() {
|
|
818
|
-
const {
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
catch (error) {
|
|
827
|
-
// Non-critical: daemon cleanup errors
|
|
828
|
-
console.debug('[AgentBrowserClient] Daemon cleanup error:', error instanceof Error ? error.message : error);
|
|
829
|
-
}
|
|
830
|
-
try {
|
|
831
|
-
// Kill chromium headless shell processes
|
|
832
|
-
execSync('pkill -9 -f "chromium_headless_shell\\|headless_shell" 2>/dev/null || true', {
|
|
833
|
-
timeout: 5000,
|
|
834
|
-
stdio: 'ignore'
|
|
835
|
-
});
|
|
836
|
-
}
|
|
837
|
-
catch (error) {
|
|
838
|
-
// Non-critical: chromium cleanup errors
|
|
839
|
-
console.debug('[AgentBrowserClient] Chromium cleanup error:', error instanceof Error ? error.message : error);
|
|
840
|
-
}
|
|
818
|
+
const { runTestRunnerProcess } = await import('../../../shared/test-runner-process.js');
|
|
819
|
+
// pkill exits 1 when nothing matched; cleanup is best effort either way
|
|
820
|
+
const pkill = async (pattern) => {
|
|
821
|
+
await runTestRunnerProcess('pkill', ['-9', '-f', pattern], { cwd: process.cwd(), timeout: 5000 });
|
|
822
|
+
};
|
|
823
|
+
// Kill agent-browser daemons, then chromium headless shell processes
|
|
824
|
+
await pkill('agent-browser.*daemon');
|
|
825
|
+
await pkill('chromium_headless_shell\\|headless_shell');
|
|
841
826
|
}
|
|
842
827
|
//# sourceMappingURL=client.js.map
|
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
* agent-browser CLI Command Executor
|
|
3
3
|
* Wraps CLI calls with type safety and error handling
|
|
4
4
|
*/
|
|
5
|
+
import { type TestRunnerProcessResult } from '../../../shared/test-runner-process.js';
|
|
6
|
+
/**
|
|
7
|
+
* Run `npx agent-browser ...` without blocking the event loop (#1115). A
|
|
8
|
+
* timeout stops the whole npx process tree, as the synchronous call did not.
|
|
9
|
+
*/
|
|
10
|
+
export declare function runAgentBrowser(args: string[], timeout: number, maxBuffer?: number): Promise<TestRunnerProcessResult>;
|
|
5
11
|
export interface CommandResult<T = unknown> {
|
|
6
12
|
success: boolean;
|
|
7
13
|
data?: T;
|
|
@@ -21,9 +27,9 @@ export declare class AgentBrowserCommandExecutor {
|
|
|
21
27
|
private browserLaunched;
|
|
22
28
|
constructor(config?: CommandExecutorConfig);
|
|
23
29
|
/**
|
|
24
|
-
* Execute a command
|
|
30
|
+
* Execute a command and parse JSON result
|
|
25
31
|
*/
|
|
26
|
-
execute<T = unknown>(command: string, args?: string[]): CommandResult<T
|
|
32
|
+
execute<T = unknown>(command: string, args?: string[]): Promise<CommandResult<T>>;
|
|
27
33
|
/**
|
|
28
34
|
* Execute a command asynchronously (for long-running ops)
|
|
29
35
|
*/
|
|
@@ -31,17 +37,17 @@ export declare class AgentBrowserCommandExecutor {
|
|
|
31
37
|
/**
|
|
32
38
|
* Open URL in browser (auto-launches if needed)
|
|
33
39
|
*/
|
|
34
|
-
open(url: string): CommandResult<void
|
|
40
|
+
open(url: string): Promise<CommandResult<void>>;
|
|
35
41
|
/**
|
|
36
42
|
* Close browser
|
|
37
43
|
*/
|
|
38
|
-
close(): CommandResult<void
|
|
44
|
+
close(): Promise<CommandResult<void>>;
|
|
39
45
|
/**
|
|
40
46
|
* Terminate the daemon process for this session
|
|
41
47
|
* CRITICAL: Must be called to prevent memory leaks!
|
|
42
48
|
* The daemon persists even after close() - this kills it entirely.
|
|
43
49
|
*/
|
|
44
|
-
terminateDaemon(): CommandResult<void
|
|
50
|
+
terminateDaemon(): Promise<CommandResult<void>>;
|
|
45
51
|
/**
|
|
46
52
|
* Get accessibility snapshot with refs
|
|
47
53
|
*/
|
|
@@ -49,89 +55,89 @@ export declare class AgentBrowserCommandExecutor {
|
|
|
49
55
|
interactive?: boolean;
|
|
50
56
|
compact?: boolean;
|
|
51
57
|
depth?: number;
|
|
52
|
-
}): CommandResult<string
|
|
58
|
+
}): Promise<CommandResult<string>>;
|
|
53
59
|
/**
|
|
54
60
|
* Click element by ref or selector
|
|
55
61
|
*/
|
|
56
|
-
click(target: string): CommandResult<void
|
|
62
|
+
click(target: string): Promise<CommandResult<void>>;
|
|
57
63
|
/**
|
|
58
64
|
* Fill input by ref or selector
|
|
59
65
|
*/
|
|
60
|
-
fill(target: string, text: string): CommandResult<void
|
|
66
|
+
fill(target: string, text: string): Promise<CommandResult<void>>;
|
|
61
67
|
/**
|
|
62
68
|
* Type text (without clearing)
|
|
63
69
|
*/
|
|
64
|
-
type(target: string, text: string): CommandResult<void
|
|
70
|
+
type(target: string, text: string): Promise<CommandResult<void>>;
|
|
65
71
|
/**
|
|
66
72
|
* Get element text
|
|
67
73
|
*/
|
|
68
|
-
getText(target: string): CommandResult<string
|
|
74
|
+
getText(target: string): Promise<CommandResult<string>>;
|
|
69
75
|
/**
|
|
70
76
|
* Check if element is visible
|
|
71
77
|
*/
|
|
72
|
-
isVisible(target: string): CommandResult<boolean
|
|
78
|
+
isVisible(target: string): Promise<CommandResult<boolean>>;
|
|
73
79
|
/**
|
|
74
80
|
* Take screenshot
|
|
75
81
|
*/
|
|
76
|
-
screenshot(path?: string, fullPage?: boolean): CommandResult<string
|
|
82
|
+
screenshot(path?: string, fullPage?: boolean): Promise<CommandResult<string>>;
|
|
77
83
|
/**
|
|
78
84
|
* Wait for element
|
|
79
85
|
*/
|
|
80
|
-
waitForElement(target: string, timeout?: number): CommandResult<void
|
|
86
|
+
waitForElement(target: string, timeout?: number): Promise<CommandResult<void>>;
|
|
81
87
|
/**
|
|
82
88
|
* Wait for text to appear
|
|
83
89
|
*/
|
|
84
|
-
waitForText(text: string): CommandResult<void
|
|
90
|
+
waitForText(text: string): Promise<CommandResult<void>>;
|
|
85
91
|
/**
|
|
86
92
|
* Wait for URL pattern
|
|
87
93
|
*/
|
|
88
|
-
waitForUrl(pattern: string): CommandResult<void
|
|
94
|
+
waitForUrl(pattern: string): Promise<CommandResult<void>>;
|
|
89
95
|
/**
|
|
90
96
|
* Wait for network idle
|
|
91
97
|
*/
|
|
92
|
-
waitForNetworkIdle(): CommandResult<void
|
|
98
|
+
waitForNetworkIdle(): Promise<CommandResult<void>>;
|
|
93
99
|
/**
|
|
94
100
|
* Set device emulation
|
|
95
101
|
*/
|
|
96
|
-
setDevice(deviceName: string): CommandResult<void
|
|
102
|
+
setDevice(deviceName: string): Promise<CommandResult<void>>;
|
|
97
103
|
/**
|
|
98
104
|
* Set viewport size
|
|
99
105
|
*/
|
|
100
|
-
setViewport(width: number, height: number): CommandResult<void
|
|
106
|
+
setViewport(width: number, height: number): Promise<CommandResult<void>>;
|
|
101
107
|
/**
|
|
102
108
|
* Mock network route
|
|
103
109
|
*/
|
|
104
|
-
mockRoute(urlPattern: string, body: unknown): CommandResult<void
|
|
110
|
+
mockRoute(urlPattern: string, body: unknown): Promise<CommandResult<void>>;
|
|
105
111
|
/**
|
|
106
112
|
* Abort network route
|
|
107
113
|
*/
|
|
108
|
-
abortRoute(urlPattern: string): CommandResult<void
|
|
114
|
+
abortRoute(urlPattern: string): Promise<CommandResult<void>>;
|
|
109
115
|
/**
|
|
110
116
|
* Clear network routes
|
|
111
117
|
*/
|
|
112
|
-
clearRoutes(): CommandResult<void
|
|
118
|
+
clearRoutes(): Promise<CommandResult<void>>;
|
|
113
119
|
/**
|
|
114
120
|
* Save browser state (cookies, storage)
|
|
115
121
|
*/
|
|
116
|
-
saveState(path: string): CommandResult<void
|
|
122
|
+
saveState(path: string): Promise<CommandResult<void>>;
|
|
117
123
|
/**
|
|
118
124
|
* Load browser state
|
|
119
125
|
*/
|
|
120
|
-
loadState(path: string): CommandResult<void
|
|
126
|
+
loadState(path: string): Promise<CommandResult<void>>;
|
|
121
127
|
/**
|
|
122
128
|
* Start trace recording
|
|
123
129
|
* Records browser activity for debugging and analysis
|
|
124
130
|
*/
|
|
125
|
-
startTrace(): CommandResult<void
|
|
131
|
+
startTrace(): Promise<CommandResult<void>>;
|
|
126
132
|
/**
|
|
127
133
|
* Stop trace recording and save to file
|
|
128
134
|
* @param outputPath - Path to save the trace file
|
|
129
135
|
*/
|
|
130
|
-
stopTrace(outputPath: string): CommandResult<string
|
|
136
|
+
stopTrace(outputPath: string): Promise<CommandResult<string>>;
|
|
131
137
|
/**
|
|
132
138
|
* Evaluate JavaScript in page context
|
|
133
139
|
*/
|
|
134
|
-
eval<T = unknown>(script: string): CommandResult<T
|
|
140
|
+
eval<T = unknown>(script: string): Promise<CommandResult<T>>;
|
|
135
141
|
/**
|
|
136
142
|
* Get current session name
|
|
137
143
|
*/
|
|
@@ -145,5 +151,5 @@ export declare class AgentBrowserCommandExecutor {
|
|
|
145
151
|
/**
|
|
146
152
|
* Check if agent-browser CLI is available
|
|
147
153
|
*/
|
|
148
|
-
export declare function isAgentBrowserAvailable(): boolean
|
|
154
|
+
export declare function isAgentBrowserAvailable(): Promise<boolean>;
|
|
149
155
|
//# sourceMappingURL=command-executor.d.ts.map
|