agentic-qe 3.14.0 → 3.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/helpers/brain-checkpoint.cjs +2 -1
- package/.claude/helpers/validate-v3-config.sh +6 -5
- package/.claude/hooks/aqe-hook.cjs +14 -14
- package/.claude/skills/qe-browser/evals/qe-browser.yaml +30 -41
- package/.claude/skills/qe-browser/fixtures/serve-skills.js +37 -0
- package/.claude/skills/qe-browser/scripts/lib/vibium.js +1 -1
- package/.claude/skills/qe-browser/scripts/smoke-test.sh +56 -25
- package/.claude/skills/qe-browser/scripts/visual-diff.js +24 -15
- package/.claude/skills/skills-manifest.json +1 -1
- package/CHANGELOG.md +114 -0
- package/assets/skills/qe-browser/evals/qe-browser.yaml +30 -41
- package/assets/skills/qe-browser/fixtures/serve-skills.js +37 -0
- package/assets/skills/qe-browser/scripts/lib/vibium.js +1 -1
- package/assets/skills/qe-browser/scripts/smoke-test.sh +56 -25
- package/assets/skills/qe-browser/scripts/visual-diff.js +24 -15
- package/assets/skills/skills-manifest.json +1 -1
- package/dist/cli/bundle.js +7 -7
- package/dist/cli/chunks/adapter-OJF6LAJV.js +2 -0
- package/dist/cli/chunks/{agent-booster-wasm-JZO6VUW4.js → agent-booster-wasm-SD5N32MX.js} +2 -2
- package/dist/cli/chunks/{agent-handler-534KFGEJ.js → agent-handler-OZRSJM7F.js} +2 -2
- package/dist/cli/chunks/{agent-memory-branch-B7KWLWY4.js → agent-memory-branch-NYTRANRN.js} +2 -2
- package/dist/cli/chunks/aqe-learning-engine-FGT474XB.js +2 -0
- package/dist/cli/chunks/{arena-OW5MELJX.js → arena-EX3SC2DP.js} +4 -4
- package/dist/cli/chunks/{arena-7CCD3S3I.js → arena-FOTVSRK4.js} +2 -2
- package/dist/cli/chunks/{audit-BHVKN4E2.js → audit-Q5GHSUQY.js} +3 -3
- package/dist/cli/chunks/base-HH765JFV.js +2 -0
- package/dist/cli/chunks/{better-sqlite3-P5FA6WFK.js → better-sqlite3-S7M5R2HS.js} +2 -2
- package/dist/cli/chunks/{brain-handler-WNW5LOV7.js → brain-handler-5FSA46R5.js} +3 -3
- package/dist/cli/chunks/{branch-enumerator-TVZ2ODKH.js → branch-enumerator-RWAXTGEU.js} +2 -2
- package/dist/cli/chunks/{browser-TCEB2W2F.js → browser-IGDESJGF.js} +2 -2
- package/dist/cli/chunks/browser-workflow-NPM4FUPI.js +2 -0
- package/dist/cli/chunks/{chunk-Q73RRTLE.js → chunk-2EHFEMRU.js} +2 -2
- package/dist/cli/chunks/{chunk-ZBOWR4XT.js → chunk-2H5YJ5ZK.js} +2 -2
- package/dist/cli/chunks/chunk-2LKAMMMI.js +2 -0
- package/dist/cli/chunks/{chunk-A2WZEMWT.js → chunk-2TG24LYQ.js} +1 -1
- package/dist/cli/chunks/{chunk-3QT6S3A3.js → chunk-3C2K4YMS.js} +3 -3
- package/dist/cli/chunks/{chunk-VESOYP6A.js → chunk-3DFFFXXO.js} +2 -2
- package/dist/cli/chunks/{chunk-K6CGQR5R.js → chunk-3WV4H33V.js} +1 -1
- package/dist/cli/chunks/{chunk-IL4AEB3J.js → chunk-42WUDDUU.js} +2 -2
- package/dist/cli/chunks/chunk-4AKGBUYD.js +4 -0
- package/dist/cli/chunks/{chunk-4FEJEVG7.js → chunk-4K27ESCA.js} +1 -1
- package/dist/cli/chunks/{chunk-TGOGCA74.js → chunk-4M6A3PVJ.js} +2 -2
- package/dist/cli/chunks/{chunk-RGVD6ZUX.js → chunk-4MH22236.js} +1 -1
- package/dist/cli/chunks/{chunk-6DPAMYLU.js → chunk-4N44UJGI.js} +2 -2
- package/dist/cli/chunks/{chunk-DJITEQYS.js → chunk-4PH7O5ZH.js} +2 -2
- package/dist/cli/chunks/{chunk-M3HUZD2I.js → chunk-4RT7I7PI.js} +1 -1
- package/dist/cli/chunks/chunk-4UCMTYFQ.js +65 -0
- package/dist/cli/chunks/{chunk-ZI3UO7QR.js → chunk-4ZUZDFAA.js} +2 -2
- package/dist/cli/chunks/{chunk-QSPRQPEL.js → chunk-57TNBR2P.js} +2 -2
- package/dist/cli/chunks/{chunk-ZCVJCCQQ.js → chunk-5EHLGOWW.js} +2 -2
- package/dist/cli/chunks/{chunk-ZAAYOENS.js → chunk-5WJUNRTY.js} +2 -2
- package/dist/cli/chunks/{chunk-QZPFUFZG.js → chunk-67A6PEZM.js} +2 -2
- package/dist/cli/chunks/{chunk-7BOPFN3Y.js → chunk-6EHN7Q2Q.js} +2 -2
- package/dist/cli/chunks/{chunk-2HYVOX6N.js → chunk-6F4WHN7D.js} +1 -1
- package/dist/cli/chunks/{chunk-GVEJP5T7.js → chunk-6LMLN5R2.js} +2 -2
- package/dist/cli/chunks/{chunk-QKQZ4IJF.js → chunk-6SZKLWZT.js} +5 -5
- package/dist/cli/chunks/{chunk-PEW6FZ47.js → chunk-6VKJAMZY.js} +1 -1
- package/dist/cli/chunks/{chunk-VYENTZ45.js → chunk-7AFBNU6K.js} +2 -2
- package/dist/cli/chunks/{chunk-6IJMD2ZL.js → chunk-7FWP7CZY.js} +3 -3
- package/dist/cli/chunks/{chunk-IE5LC7MB.js → chunk-7SK6IMGZ.js} +2 -2
- package/dist/cli/chunks/{chunk-3EM2MK3Z.js → chunk-A7N3YUDJ.js} +2 -2
- package/dist/cli/chunks/{chunk-J3XSHJGK.js → chunk-ADK7DF3G.js} +2 -2
- package/dist/cli/chunks/{chunk-EJ6IP7DE.js → chunk-ARMZYHYL.js} +2 -2
- package/dist/cli/chunks/{chunk-BZ4QVFP2.js → chunk-BWRHOIYC.js} +2 -2
- package/dist/cli/chunks/{chunk-A7SKM6JL.js → chunk-C7AXRI7E.js} +1 -1
- package/dist/cli/chunks/{chunk-4XTHRAUV.js → chunk-CG2MUD7U.js} +1 -1
- package/dist/cli/chunks/{chunk-HLNQDRHA.js → chunk-CH2TQCV5.js} +1 -1
- package/dist/cli/chunks/{chunk-JGROLJ33.js → chunk-CIESXO73.js} +1 -1
- package/dist/cli/chunks/{chunk-AR6SATU3.js → chunk-CJCT452S.js} +2 -2
- package/dist/cli/chunks/{chunk-UUJ5VQJM.js → chunk-CJHVOBJY.js} +1 -1
- package/dist/cli/chunks/{chunk-VOSISOFD.js → chunk-CTCQOYBS.js} +1 -1
- package/dist/cli/chunks/{chunk-XITTURP2.js → chunk-D4RCV4LY.js} +2 -2
- package/dist/cli/chunks/{chunk-5XGVSQS2.js → chunk-DRO5NJZA.js} +2 -2
- package/dist/cli/chunks/{chunk-QMMDN4WX.js → chunk-DVHWLAEO.js} +3 -3
- package/dist/cli/chunks/{chunk-5LEAGKX5.js → chunk-DW6ZMNMR.js} +2 -2
- package/dist/cli/chunks/{chunk-ZBKGX72B.js → chunk-E3Q7WNJD.js} +3 -3
- package/dist/cli/chunks/{chunk-5MZF4N4Q.js → chunk-EAJK25IS.js} +1 -1
- package/dist/cli/chunks/{chunk-3RYTAYR6.js → chunk-EH5OCHAJ.js} +1 -1
- package/dist/cli/chunks/{chunk-UI6WSPEK.js → chunk-F2KRT2II.js} +3 -3
- package/dist/cli/chunks/{chunk-NDPQ2WPU.js → chunk-FPHPP5TQ.js} +1 -1
- package/dist/cli/chunks/{chunk-WWWX76QB.js → chunk-FREF6Y4L.js} +2 -2
- package/dist/cli/chunks/{chunk-SROZXIMT.js → chunk-FVGTINVR.js} +54 -54
- package/dist/cli/chunks/{chunk-H3YDDKBW.js → chunk-G2CLZVYI.js} +3 -3
- package/dist/cli/chunks/{chunk-2O4DDPEA.js → chunk-G6AV2HGY.js} +3 -3
- package/dist/cli/chunks/{chunk-ENGKLFLY.js → chunk-GHQ5PUOV.js} +2 -2
- package/dist/cli/chunks/{chunk-NKWO2X3T.js → chunk-GHUPID5E.js} +1 -1
- package/dist/cli/chunks/{chunk-S5YVLPXU.js → chunk-GJAWEUIN.js} +2 -2
- package/dist/cli/chunks/{chunk-6IZQSLYZ.js → chunk-HBTC4L53.js} +2 -2
- package/dist/cli/chunks/{chunk-DDPJUAXQ.js → chunk-HSJ5FQCF.js} +2 -2
- package/dist/cli/chunks/{chunk-OONCRNFA.js → chunk-HZ6NEJMO.js} +2 -2
- package/dist/cli/chunks/{chunk-LCSVROU7.js → chunk-HZMLNM2T.js} +10 -10
- package/dist/cli/chunks/{chunk-JY4VZ6BN.js → chunk-ICKLBATY.js} +2 -2
- package/dist/cli/chunks/{chunk-JMKMDSXG.js → chunk-IUNMW454.js} +2 -2
- package/dist/cli/chunks/{chunk-XXFKN7LB.js → chunk-IVGVOGIZ.js} +1 -1
- package/dist/cli/chunks/{chunk-3GUO4ERR.js → chunk-IWFL6EFI.js} +2 -2
- package/dist/cli/chunks/{chunk-FRL3X2QA.js → chunk-JDXLCNKV.js} +2 -2
- package/dist/cli/chunks/{chunk-YW4RNZWT.js → chunk-JIUF6NV6.js} +2 -2
- package/dist/cli/chunks/{chunk-JAK5UUWH.js → chunk-JQ2ZD3WO.js} +2 -2
- package/dist/cli/chunks/{chunk-YEAC3DC6.js → chunk-K574FLVB.js} +2 -2
- package/dist/cli/chunks/{chunk-LZHTCUCO.js → chunk-KEEBUVGV.js} +2 -2
- package/dist/cli/chunks/{chunk-LKR7T3OZ.js → chunk-KFXZDQ5J.js} +1 -1
- package/dist/cli/chunks/{chunk-7OUMJCJT.js → chunk-KPFG4OIM.js} +1 -1
- package/dist/cli/chunks/{chunk-HQ7243G3.js → chunk-KZOBLLXW.js} +2 -2
- package/dist/cli/chunks/{chunk-R6WJF4D5.js → chunk-L2F7FVIU.js} +2 -2
- package/dist/cli/chunks/{chunk-VRRG66XB.js → chunk-LML5VTFK.js} +1 -1
- package/dist/cli/chunks/{chunk-JTWJR2KY.js → chunk-LWUJQGCS.js} +2 -2
- package/dist/cli/chunks/{chunk-BQCTO7UB.js → chunk-MH73D5TN.js} +2 -2
- package/dist/cli/chunks/{chunk-U4GZWPKM.js → chunk-MWQTACNA.js} +2 -2
- package/dist/cli/chunks/{chunk-CIZ6LSNV.js → chunk-N3RN4QTC.js} +2 -2
- package/dist/cli/chunks/{chunk-ZQSXG7FA.js → chunk-N5ZRUOMR.js} +2 -2
- package/dist/cli/chunks/{chunk-AFGT26NR.js → chunk-NAZVPZJS.js} +2 -2
- package/dist/cli/chunks/{chunk-FOHYBR3O.js → chunk-NG2UVPTW.js} +1 -1
- package/dist/cli/chunks/{chunk-2D7UBX5S.js → chunk-NHHWLJQF.js} +1 -1
- package/dist/cli/chunks/{chunk-JRKEBESE.js → chunk-NNOMDM4N.js} +2 -2
- package/dist/cli/chunks/{chunk-YKWMKRYB.js → chunk-NRR23SJV.js} +1 -1
- package/dist/cli/chunks/{chunk-WKNWRDA5.js → chunk-NWFIJNEB.js} +1 -1
- package/dist/cli/chunks/{chunk-4MK2G6TK.js → chunk-OBCKP3G4.js} +2 -2
- package/dist/cli/chunks/{chunk-YKZV7O65.js → chunk-OC2CKU7I.js} +2 -2
- package/dist/cli/chunks/{chunk-7RVAHJQZ.js → chunk-OX6T26CD.js} +3 -3
- package/dist/cli/chunks/chunk-P64DMQ2C.js +2 -0
- package/dist/cli/chunks/{chunk-RKUYVVGJ.js → chunk-PFXX5Q32.js} +2 -2
- package/dist/cli/chunks/chunk-PHHXHG2W.js +2 -0
- package/dist/cli/chunks/{chunk-N2YAUDAV.js → chunk-PMUBG2RU.js} +2 -2
- package/dist/cli/chunks/{chunk-WTHAVFIC.js → chunk-PVHO6KLB.js} +1 -1
- package/dist/cli/chunks/{chunk-MO7EITJK.js → chunk-PWEIDHT7.js} +2 -2
- package/dist/cli/chunks/{chunk-52DFCV57.js → chunk-PZKZY6PB.js} +2 -2
- package/dist/cli/chunks/{chunk-I3VHXA2W.js → chunk-Q335R4MR.js} +2 -2
- package/dist/cli/chunks/{chunk-ECTPFCON.js → chunk-Q3JHS3UD.js} +2 -2
- package/dist/cli/chunks/{chunk-HJIAVR6P.js → chunk-QFUX7ELG.js} +2 -2
- package/dist/cli/chunks/{chunk-L4C42WYI.js → chunk-QW4LN5NK.js} +2 -2
- package/dist/cli/chunks/{chunk-HQHLHSJO.js → chunk-QXTW7XCS.js} +2 -2
- package/dist/cli/chunks/{chunk-SSV6KSFT.js → chunk-R5RNOLHI.js} +1 -1
- package/dist/cli/chunks/{chunk-AVLA5PBJ.js → chunk-RCI64RIJ.js} +2 -2
- package/dist/cli/chunks/{chunk-T3BZAFLP.js → chunk-RFNEHNJV.js} +1 -1
- package/dist/cli/chunks/{chunk-IL6QRXRP.js → chunk-RGH3WGWD.js} +10 -10
- package/dist/cli/chunks/{chunk-E4NU4BJA.js → chunk-RHJVDCLV.js} +2 -2
- package/dist/cli/chunks/{chunk-KTSCZ7AW.js → chunk-RVCWSAXI.js} +2 -2
- package/dist/cli/chunks/{chunk-TQJE7DNL.js → chunk-RYJHREYS.js} +2 -2
- package/dist/cli/chunks/{chunk-HNKPLVYS.js → chunk-S4MR6RTE.js} +1 -1
- package/dist/cli/chunks/{chunk-6AYO3IR2.js → chunk-S7N4BKI3.js} +2 -2
- package/dist/cli/chunks/{chunk-2NO4H35K.js → chunk-SEHCX4NH.js} +1 -1
- package/dist/cli/chunks/{chunk-GKNDP5VK.js → chunk-T46LOLW3.js} +2 -2
- package/dist/cli/chunks/{chunk-VXU53F7Z.js → chunk-T4C56HBW.js} +2 -2
- package/dist/cli/chunks/{chunk-43GPSYAL.js → chunk-TENYL5TI.js} +2 -2
- package/dist/cli/chunks/{chunk-6AOZU3UN.js → chunk-TLPL3EQY.js} +2 -2
- package/dist/cli/chunks/{chunk-4ZVGSVHV.js → chunk-TYVQNYXX.js} +4 -4
- package/dist/cli/chunks/{chunk-NOPVFBQM.js → chunk-U2AY57XZ.js} +2 -2
- package/dist/cli/chunks/{chunk-IQLRA4FV.js → chunk-U54OOA24.js} +1 -1
- package/dist/cli/chunks/{chunk-IQ3JFHZN.js → chunk-UHTAI4ZB.js} +1 -1
- package/dist/cli/chunks/{chunk-KDIZQHG5.js → chunk-UIGEUEBT.js} +2 -2
- package/dist/cli/chunks/{chunk-5VDVYTO5.js → chunk-UYTWDS2R.js} +2 -2
- package/dist/cli/chunks/{chunk-ZNSMVQCG.js → chunk-VNAKBHJI.js} +2 -2
- package/dist/cli/chunks/{chunk-SUSMHSXT.js → chunk-VOYJJ3KA.js} +2 -2
- package/dist/cli/chunks/{chunk-QQCENKCX.js → chunk-VSYBMNIR.js} +1 -1
- package/dist/cli/chunks/{chunk-7RAB2BZY.js → chunk-W2FLULF4.js} +2 -2
- package/dist/cli/chunks/{chunk-NYARYONH.js → chunk-W4OQYLYO.js} +1 -1
- package/dist/cli/chunks/{chunk-DOWCOZDO.js → chunk-WBH4C4BG.js} +2 -2
- package/dist/cli/chunks/{chunk-OIYUSWHX.js → chunk-WBMRADQP.js} +1 -1
- package/dist/cli/chunks/{chunk-B3H4K7CY.js → chunk-WMW47QMR.js} +2 -2
- package/dist/cli/chunks/{chunk-VPVZHJSU.js → chunk-WVY22NHZ.js} +2 -2
- package/dist/cli/chunks/{chunk-6W42XWLL.js → chunk-WXMSRBQF.js} +2 -2
- package/dist/cli/chunks/{chunk-CIUOC5F3.js → chunk-XPLSLHRB.js} +1 -1
- package/dist/cli/chunks/{chunk-E722WNWC.js → chunk-YF5OP6CR.js} +2 -2
- package/dist/cli/chunks/{chunk-H76TV4UU.js → chunk-YN6W2XIT.js} +3 -3
- package/dist/cli/chunks/{chunk-FF43SRP6.js → chunk-ZCDXJ27H.js} +1 -1
- package/dist/cli/chunks/{chunk-TKYEP7OR.js → chunk-ZFGND4QK.js} +1 -1
- package/dist/cli/chunks/{chunk-O2MZZL54.js → chunk-ZWRQ5VAU.js} +2 -2
- package/dist/cli/chunks/{chunk-H6NFDOMK.js → chunk-ZYLSOBOR.js} +1 -1
- package/dist/cli/chunks/{ci-B432UH6N.js → ci-NTRH7PAW.js} +2 -2
- package/dist/cli/chunks/{ci-output-GTHH7WYG.js → ci-output-F57RSD35.js} +2 -2
- package/dist/cli/chunks/{circuit-breaker-VW75DLME.js → circuit-breaker-4WST3QSA.js} +2 -2
- package/dist/cli/chunks/{claude-flow-setup-RE3IVT7U.js → claude-flow-setup-KB4TKMYI.js} +2 -2
- package/dist/cli/chunks/client-GPZEC54E.js +2 -0
- package/dist/cli/chunks/{cline-installer-NUBZZ55N.js → cline-installer-W2ZHQ6WM.js} +2 -2
- package/dist/cli/chunks/{code-K6JCWKNW.js → code-TF2AVR5D.js} +2 -2
- package/dist/cli/chunks/{code-index-extractor-I4ILB5JN.js → code-index-extractor-RMDRUVQJ.js} +2 -2
- package/dist/cli/chunks/codex-installer-VSTRHJHV.js +14 -0
- package/dist/cli/chunks/{completions-V3KJVJF4.js → completions-3Q37QVFR.js} +2 -2
- package/dist/cli/chunks/{complexity-analyzer-HRG7OOY3.js → complexity-analyzer-3FNFLACD.js} +2 -2
- package/dist/cli/chunks/{continuedev-installer-CNTDONWG.js → continuedev-installer-VTEXM455.js} +2 -2
- package/dist/cli/chunks/{copilot-installer-XPWWIWYA.js → copilot-installer-AGY7DQUS.js} +2 -2
- package/dist/cli/chunks/core-handlers-YMGHYIBR.js +2 -0
- package/dist/cli/chunks/{cost-tracker-MFNLQ56K.js → cost-tracker-LTZAQBX7.js} +2 -2
- package/dist/cli/chunks/{coverage-KOIK654V.js → coverage-TT64IOS4.js} +3 -3
- package/dist/cli/chunks/cross-domain-router-ECBNTGYJ.js +2 -0
- package/dist/cli/chunks/{cursor-installer-S5MKLRQQ.js → cursor-installer-OVOJIOHN.js} +2 -2
- package/dist/cli/chunks/{daemon-DUS6JYW6.js → daemon-DMFZMXKA.js} +8 -8
- package/dist/cli/chunks/{daemon-Z7VPGWHY.js → daemon-XCULEHWY.js} +4 -4
- package/dist/cli/chunks/{dag-attention-scheduler-7CQ3ARNI.js → dag-attention-scheduler-WW2RX4B5.js} +2 -2
- package/dist/cli/chunks/{detect-WORBCAYF.js → detect-QNWIM232.js} +2 -2
- package/dist/cli/chunks/{dist-node-KRNI6OYW.js → dist-node-6GQIY3CG.js} +2 -2
- package/dist/cli/chunks/{domain-handler-KRUR2VQG.js → domain-handler-6RJPDELX.js} +2 -2
- package/dist/cli/chunks/{domain-transfer-VEOVLV54.js → domain-transfer-WK524LBS.js} +2 -2
- package/dist/cli/chunks/dream-EHGKCFWH.js +2 -0
- package/dist/cli/chunks/{embed-and-insert-pattern-QU3NQVA5.js → embed-and-insert-pattern-SO6GWJW7.js} +2 -2
- package/dist/cli/chunks/{eval-AYQ7BSUP.js → eval-GL544IPO.js} +2 -2
- package/dist/cli/chunks/{experience-capture-middleware-AWQBL6LT.js → experience-capture-middleware-BCCJ35OX.js} +3 -3
- package/dist/cli/chunks/{fast-paths-V5EL4BYJ.js → fast-paths-CATDDBEU.js} +2 -2
- package/dist/cli/chunks/{feature-flags-P34BPRWU.js → feature-flags-BUXNAORY.js} +2 -2
- package/dist/cli/chunks/{feature-flags-BXX7BP22.js → feature-flags-KNNWWP5G.js} +2 -2
- package/dist/cli/chunks/{file-discovery-MS6BKQ2U.js → file-discovery-S4HF3O7D.js} +2 -2
- package/dist/cli/chunks/{fleet-7WVVPA4W.js → fleet-DQVQQONW.js} +3 -3
- package/dist/cli/chunks/{gnn-wrapper-7WQ3LEPG.js → gnn-wrapper-G7ABZUG7.js} +2 -2
- package/dist/cli/chunks/{heartbeat-handler-P7QD3BZH.js → heartbeat-handler-UFMELIWT.js} +4 -4
- package/dist/cli/chunks/heartbeat-scheduler-UFEL2CBW.js +2 -0
- package/dist/cli/chunks/hnsw-adapter-BLSD45CX.js +2 -0
- package/dist/cli/chunks/hnsw-index-A3RZODEN.js +2 -0
- package/dist/cli/chunks/{hnsw-legacy-bridge-Y3GAR3UP.js → hnsw-legacy-bridge-YIILSRXI.js} +2 -2
- package/dist/cli/chunks/{hnswlib-node-5QUXZQWQ.js → hnswlib-node-TSVRMXDH.js} +2 -2
- package/dist/cli/chunks/{hooks-2D64KPRY.js → hooks-OHQPNK74.js} +10 -10
- package/dist/cli/chunks/{hypergraph-engine-5INXEZDP.js → hypergraph-engine-LY7PJDSL.js} +2 -2
- package/dist/cli/chunks/{hypergraph-handler-YJJJ3ESZ.js → hypergraph-handler-YGDYZO6H.js} +3 -3
- package/dist/cli/chunks/impact-analyzer-OXHD3FOH.js +2 -0
- package/dist/cli/chunks/{init-handler-QSFYJN5Q.js → init-handler-MTK65LI3.js} +9 -8
- package/dist/cli/chunks/init-wizard-PKZL7QBU.js +2 -0
- package/dist/cli/chunks/kernel-XWPM72UJ.js +2 -0
- package/dist/cli/chunks/{kilocode-installer-3N3QGTJU.js → kilocode-installer-3IICU4RS.js} +2 -2
- package/dist/cli/chunks/{kiro-installer-GIWVTFZQ.js → kiro-installer-MXOVQYQA.js} +2 -2
- package/dist/cli/chunks/knowledge-graph-FRKR5XWI.js +2 -0
- package/dist/cli/chunks/{learning-SGO2DQ5Q.js → learning-EV5LSOOM.js} +3 -3
- package/dist/cli/chunks/{llm-router-HBBULO65.js → llm-router-7LYDJUOT.js} +4 -4
- package/dist/cli/chunks/llm-router-service-R7A5HHDM.js +2 -0
- package/dist/cli/chunks/{load-B5OFYB4H.js → load-F4PVAMXQ.js} +2 -2
- package/dist/cli/chunks/load-test-5IKDWSYL.js +2 -0
- package/dist/cli/chunks/{mcp-FG3LNQR4.js → mcp-DUYJUEME.js} +2 -2
- package/dist/cli/chunks/{memory-SPS7ZWLC.js → memory-XTTYORAS.js} +5 -5
- package/dist/cli/chunks/memory-backend-7VW5QCMO.js +2 -0
- package/dist/cli/chunks/{memory-handlers-P7FTPWP3.js → memory-handlers-VZH3R2TQ.js} +2 -2
- package/dist/cli/chunks/{multi-model-executor-PUB7E6KH.js → multi-model-executor-R6XCTMCF.js} +2 -2
- package/dist/cli/chunks/{opencode-installer-TGCSGVG2.js → opencode-installer-33ULBU2F.js} +2 -2
- package/dist/cli/chunks/{orchestrator-S5FTJFGB.js → orchestrator-34ZJEKTJ.js} +22 -21
- package/dist/cli/chunks/pattern-null-store-BU6LCB2W.js +2 -0
- package/dist/cli/chunks/{pattern-usage-recorder-LCXXGRAB.js → pattern-usage-recorder-GZ2M3F2E.js} +2 -2
- package/dist/cli/chunks/{pipeline-ENOSRHKW.js → pipeline-SR5OTY45.js} +2 -2
- package/dist/cli/chunks/platform-VKJFJIAW.js +2 -0
- package/dist/cli/chunks/{plugin-JZ5ODJSU.js → plugin-5C5UBQUQ.js} +2 -2
- package/dist/cli/chunks/{prime-radiant-advanced-wasm-DPJUPNCG.js → prime-radiant-advanced-wasm-KO2PQI3D.js} +2 -2
- package/dist/cli/chunks/protocol-executor-BSP5LWJN.js +2 -0
- package/dist/cli/chunks/{protocol-handler-IP4NLVY3.js → protocol-handler-ZF74NIKA.js} +2 -2
- package/dist/cli/chunks/{prove-P6FM4RU7.js → prove-MO5TQQU4.js} +2 -2
- package/dist/cli/chunks/qe-reasoning-bank-J2RC7P25.js +2 -0
- package/dist/cli/chunks/{quality-UHP4XO26.js → quality-EYIN6AER.js} +2 -2
- package/dist/cli/chunks/quality-gate-V6OQM57O.js +7 -0
- package/dist/cli/chunks/queen-coordinator-XI5AJV2V.js +2 -0
- package/dist/cli/chunks/{real-embeddings-6SO5MFRQ.js → real-embeddings-AR7TZX7U.js} +2 -2
- package/dist/cli/chunks/{roocode-installer-WTWUOFCH.js → roocode-installer-46E626VZ.js} +2 -2
- package/dist/cli/chunks/router-VXQYYA3D.js +2 -0
- package/dist/cli/chunks/routing-feedback-HZQTASFF.js +2 -0
- package/dist/cli/chunks/{routing-handler-IK7HYERQ.js → routing-handler-ZNRVW6QW.js} +2 -2
- package/dist/cli/chunks/{ruvector-commands-THLB4NIM.js → ruvector-commands-4L2CQMWS.js} +2 -2
- package/dist/cli/chunks/rvf-dual-writer-BDTLLJER.js +2 -0
- package/dist/cli/chunks/rvf-migration-adapter-IB343MDN.js +2 -0
- package/dist/cli/chunks/{rvf-migration-coordinator-BUKCSHBD.js → rvf-migration-coordinator-H4RVGBIA.js} +2 -2
- package/dist/cli/chunks/rvf-native-adapter-Y7SN7LHU.js +2 -0
- package/dist/cli/chunks/{rvf-store-integrity-ECTADZIN.js → rvf-store-integrity-OJGWWPLL.js} +2 -2
- package/dist/cli/chunks/safe-db-2VTKKBJU.js +2 -0
- package/dist/cli/chunks/schedule-QJ4CFGJY.js +2 -0
- package/dist/cli/chunks/scheduler-2NHDQPC3.js +2 -0
- package/dist/cli/chunks/{security-HN4UXFXX.js → security-JF3BVNRO.js} +3 -3
- package/dist/cli/chunks/{shared-rvf-adapter-XJCPX5SN.js → shared-rvf-adapter-M6NNIZ5W.js} +2 -2
- package/dist/cli/chunks/{shared-rvf-dual-writer-23X5PNY5.js → shared-rvf-dual-writer-LHMFCYVE.js} +2 -2
- package/dist/cli/chunks/sqlite-persistence-NVVAPZN3.js +2 -0
- package/dist/cli/chunks/{status-handler-ZXANTHKT.js → status-handler-GMIOXQIE.js} +2 -2
- package/dist/cli/chunks/{structural-health-LR6WI3AH.js → structural-health-YZXHVHM6.js} +2 -2
- package/dist/cli/chunks/{sync-I5IUJF33.js → sync-GMPCPV5L.js} +2 -2
- package/dist/cli/chunks/{sync-4OEI3BC2.js → sync-N56UQGCS.js} +2 -2
- package/dist/cli/chunks/{task-handler-R3ATJKU5.js → task-handler-VTNRGAXP.js} +2 -2
- package/dist/cli/chunks/{task-handlers-4X357AEW.js → task-handlers-FYSDH55N.js} +3 -3
- package/dist/cli/chunks/{test-PR2B5H2F.js → test-GQNCKRSP.js} +4 -4
- package/dist/cli/chunks/{test-scheduling-ZNOSQVLD.js → test-scheduling-GPRXSIRP.js} +3 -3
- package/dist/cli/chunks/{token-bootstrap-LYXOI72S.js → token-bootstrap-76SRNXGG.js} +2 -2
- package/dist/cli/chunks/{token-usage-R6EQZBX2.js → token-usage-O7CZDP5Q.js} +2 -2
- package/dist/cli/chunks/{transformers-COQWK27J.js → transformers-LTU4LSSC.js} +2 -2
- package/dist/cli/chunks/{tree-sitter-wasm-parser-LLIW2X3M.js → tree-sitter-wasm-parser-NQSQCMBM.js} +2 -2
- package/dist/cli/chunks/{types-MEYTZITK.js → types-OP6IWE6N.js} +2 -2
- package/dist/cli/chunks/unified-memory-DSTIEDSH.js +2 -0
- package/dist/cli/chunks/unified-memory-hnsw-KBV3P4OS.js +2 -0
- package/dist/cli/chunks/unified-persistence-XKCOUBKY.js +2 -0
- package/dist/cli/chunks/{upgrade-DVIJ456A.js → upgrade-OQWRBZ3R.js} +2 -2
- package/dist/cli/chunks/{validate-UYTSMJ5X.js → validate-TH5SRP3E.js} +2 -2
- package/dist/cli/chunks/{validate-swarm-P32WCJR6.js → validate-swarm-UITL2JUS.js} +2 -2
- package/dist/cli/chunks/{vibium-JGVOLM6X.js → vibium-O6PRAG4J.js} +2 -2
- package/dist/cli/chunks/visual-security-TTWSPZTZ.js +2 -0
- package/dist/cli/chunks/{web-tree-sitter-5ZGNCTPN.js → web-tree-sitter-XBFBY4OF.js} +2 -2
- package/dist/cli/chunks/{windsurf-installer-IILSSQAE.js → windsurf-installer-DVT5NRNY.js} +2 -2
- package/dist/cli/chunks/witness-chain-2KY73HPN.js +2 -0
- package/dist/cli/chunks/{witness-chain-JZMXCG3B.js → witness-chain-VRSH2F36.js} +2 -2
- package/dist/cli/chunks/{witness-key-manager-UUTLNUIH.js → witness-key-manager-GFHRDKQ4.js} +2 -2
- package/dist/cli/chunks/{workflow-NS7HXVHZ.js → workflow-HAZ6YKOG.js} +4 -4
- package/dist/cli/chunks/workflow-orchestrator-UK56AVOT.js +2 -0
- package/dist/cli/chunks/{wrappers-XKEDSV5W.js → wrappers-5LLLT7GM.js} +2 -2
- package/dist/cli/commands/daemon.js +3 -0
- package/dist/cli/commands/platform.d.ts +1 -0
- package/dist/cli/commands/platform.js +28 -6
- package/dist/cli/commands/quality-gate.js +25 -3
- package/dist/cli/foreground-command.d.ts +3 -0
- package/dist/cli/foreground-command.js +22 -0
- package/dist/cli/handlers/init-handler.d.ts +5 -0
- package/dist/cli/handlers/init-handler.js +6 -0
- package/dist/cli/index.js +8 -1
- package/dist/contracts/verdicts.d.ts +625 -0
- package/dist/contracts/verdicts.js +202 -14
- package/dist/coordination/handlers/coverage-handlers.js +8 -1
- package/dist/domains/chaos-resilience/diagnosis/corpus.d.ts +5 -0
- package/dist/domains/chaos-resilience/diagnosis/corpus.js +141 -0
- package/dist/domains/chaos-resilience/diagnosis/detectors.d.ts +11 -0
- package/dist/domains/chaos-resilience/diagnosis/detectors.js +109 -0
- package/dist/domains/chaos-resilience/diagnosis/index.d.ts +5 -0
- package/dist/domains/chaos-resilience/diagnosis/index.js +5 -0
- package/dist/domains/chaos-resilience/diagnosis/scorer.d.ts +8 -0
- package/dist/domains/chaos-resilience/diagnosis/scorer.js +128 -0
- package/dist/domains/chaos-resilience/diagnosis/types.d.ts +171 -0
- package/dist/domains/chaos-resilience/diagnosis/types.js +3 -0
- package/dist/domains/chaos-resilience/index.d.ts +1 -0
- package/dist/domains/chaos-resilience/index.js +1 -0
- package/dist/domains/index.d.ts +1 -0
- package/dist/domains/index.js +1 -0
- package/dist/early-exit/early-exit-controller.d.ts +4 -2
- package/dist/early-exit/early-exit-controller.js +95 -7
- package/dist/early-exit/index.d.ts +1 -1
- package/dist/early-exit/speculative-executor.js +3 -0
- package/dist/early-exit/types.d.ts +51 -0
- package/dist/early-exit/types.js +3 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.js +2 -1
- package/dist/init/browser-engine-installer.d.ts +11 -0
- package/dist/init/browser-engine-installer.js +35 -5
- package/dist/init/codex-installer.d.ts +11 -1
- package/dist/init/codex-installer.js +90 -24
- package/dist/init/init-wizard-hooks.js +11 -11
- package/dist/init/orchestrator.js +2 -0
- package/dist/init/phases/07-hooks.d.ts +3 -3
- package/dist/init/phases/07-hooks.js +19 -18
- package/dist/init/phases/09-assets.d.ts +4 -0
- package/dist/init/phases/09-assets.js +13 -10
- package/dist/init/phases/phase-interface.d.ts +2 -0
- package/dist/init/types.d.ts +4 -0
- package/dist/learning/index.d.ts +3 -0
- package/dist/learning/index.js +2 -0
- package/dist/learning/pattern-mutation-error.d.ts +9 -0
- package/dist/learning/pattern-mutation-error.js +14 -0
- package/dist/learning/pattern-store.js +24 -2
- package/dist/learning/qe-reasoning-bank.js +24 -5
- package/dist/learning/rvf-pattern-store.js +23 -5
- package/dist/learning/structural-retrieval/corpus.d.ts +5 -0
- package/dist/learning/structural-retrieval/corpus.js +97 -0
- package/dist/learning/structural-retrieval/evaluate.d.ts +7 -0
- package/dist/learning/structural-retrieval/evaluate.js +124 -0
- package/dist/learning/structural-retrieval/index.d.ts +6 -0
- package/dist/learning/structural-retrieval/index.js +4 -0
- package/dist/learning/structural-retrieval/receipt.d.ts +14 -0
- package/dist/learning/structural-retrieval/receipt.js +36 -0
- package/dist/learning/structural-retrieval/types.d.ts +83 -0
- package/dist/learning/structural-retrieval/types.js +2 -0
- package/dist/mcp/bundle.js +423 -423
- package/dist/mcp/index.d.ts +1 -0
- package/dist/mcp/index.js +1 -0
- package/dist/mcp/protocol-server.js +11 -2
- package/dist/mcp/qe-tool-bridge.js +1 -0
- package/dist/mcp/services/session-resume.d.ts +15 -19
- package/dist/mcp/services/session-resume.js +204 -194
- package/dist/mcp/tool-annotations.d.ts +25 -0
- package/dist/mcp/tool-annotations.js +75 -0
- package/dist/mcp/tool-registry.js +17 -12
- package/dist/mcp/tools/base.d.ts +7 -1
- package/dist/mcp/tools/base.js +8 -0
- package/dist/mcp/tools/quality-assessment/gate.d.ts +8 -5
- package/dist/mcp/tools/quality-assessment/gate.js +9 -4
- package/dist/mcp/tools/registry.d.ts +3 -0
- package/dist/mcp/tools/registry.js +1 -0
- package/dist/mcp/types.d.ts +15 -0
- package/dist/skills/qe-court/cli.js +0 -0
- package/dist/validation/quality-gate-runner.d.ts +27 -4
- package/dist/validation/quality-gate-runner.js +33 -4
- package/dist/validation/verification-reach.d.ts +90 -0
- package/dist/validation/verification-reach.js +187 -0
- package/dist/verification/adversarial-verify/index.d.ts +1 -1
- package/dist/verification/adversarial-verify/measurement-receipt.d.ts +13 -0
- package/dist/verification/adversarial-verify/measurement-receipt.js +136 -0
- package/dist/verification/adversarial-verify/synthesize.js +7 -10
- package/dist/verification/adversarial-verify/types.d.ts +35 -0
- package/dist/verification/adversarial-verify/verify.js +6 -1
- package/package.json +9 -5
- package/schemas/coverage-gap.schema.json +41 -0
- package/schemas/finding-verdict.schema.json +470 -0
- package/schemas/risk-decision.schema.json +41 -0
- package/dist/cli/chunks/adapter-3VBXL7DO.js +0 -2
- package/dist/cli/chunks/aqe-learning-engine-NXRNKJNA.js +0 -2
- package/dist/cli/chunks/base-F6GMOKU2.js +0 -2
- package/dist/cli/chunks/browser-workflow-QRDC46LR.js +0 -2
- package/dist/cli/chunks/chunk-3JIJBR4V.js +0 -2
- package/dist/cli/chunks/chunk-R2B6EE45.js +0 -2
- package/dist/cli/chunks/chunk-TRDEULS7.js +0 -4
- package/dist/cli/chunks/chunk-WJXHE52V.js +0 -65
- package/dist/cli/chunks/client-HNBZUEVV.js +0 -2
- package/dist/cli/chunks/codex-installer-AKQ5BCHU.js +0 -15
- package/dist/cli/chunks/core-handlers-TB7NLYXL.js +0 -2
- package/dist/cli/chunks/cross-domain-router-MDSI553U.js +0 -2
- package/dist/cli/chunks/dream-X7ISHFEE.js +0 -2
- package/dist/cli/chunks/heartbeat-scheduler-2C5XGFQT.js +0 -2
- package/dist/cli/chunks/hnsw-adapter-KCVMXLUL.js +0 -2
- package/dist/cli/chunks/hnsw-index-OGWZS6MP.js +0 -2
- package/dist/cli/chunks/impact-analyzer-IBJ43GQL.js +0 -2
- package/dist/cli/chunks/init-wizard-6XMFD5LP.js +0 -2
- package/dist/cli/chunks/kernel-UDUMUPB3.js +0 -2
- package/dist/cli/chunks/knowledge-graph-JRYTUG3W.js +0 -2
- package/dist/cli/chunks/llm-router-service-KF5ZALUQ.js +0 -2
- package/dist/cli/chunks/load-test-LHMBCNCH.js +0 -2
- package/dist/cli/chunks/memory-backend-WZHKHBZK.js +0 -2
- package/dist/cli/chunks/pattern-null-store-UZSHCRL2.js +0 -2
- package/dist/cli/chunks/platform-WCRBO3Z7.js +0 -2
- package/dist/cli/chunks/protocol-executor-42NLVDTC.js +0 -2
- package/dist/cli/chunks/qe-reasoning-bank-W74RSMMU.js +0 -2
- package/dist/cli/chunks/quality-gate-63DDBSGM.js +0 -7
- package/dist/cli/chunks/queen-coordinator-XELKSRMS.js +0 -2
- package/dist/cli/chunks/router-GTW2EQZV.js +0 -2
- package/dist/cli/chunks/routing-feedback-NVOBWEMK.js +0 -2
- package/dist/cli/chunks/rvf-dual-writer-5OPVMXNL.js +0 -2
- package/dist/cli/chunks/rvf-migration-adapter-5S4YFTX4.js +0 -2
- package/dist/cli/chunks/rvf-native-adapter-LYSJHEVX.js +0 -2
- package/dist/cli/chunks/safe-db-AEB3JMLD.js +0 -2
- package/dist/cli/chunks/schedule-4QNPCQNT.js +0 -2
- package/dist/cli/chunks/scheduler-S3DFHX6A.js +0 -2
- package/dist/cli/chunks/sqlite-persistence-L2KISU2H.js +0 -2
- package/dist/cli/chunks/unified-memory-5KQMA7FV.js +0 -2
- package/dist/cli/chunks/unified-memory-hnsw-PQRPTYOD.js +0 -2
- package/dist/cli/chunks/unified-persistence-YDONVPJB.js +0 -2
- package/dist/cli/chunks/visual-security-RJ7RTNGJ.js +0 -2
- package/dist/cli/chunks/witness-chain-YXXXNGAM.js +0 -2
- package/dist/cli/chunks/workflow-orchestrator-5KUAVSTH.js +0 -2
package/dist/early-exit/types.js
CHANGED
|
@@ -28,6 +28,7 @@ export var QualityFlags;
|
|
|
28
28
|
* Default configuration for balanced early exit
|
|
29
29
|
*/
|
|
30
30
|
export const DEFAULT_EXIT_CONFIG = {
|
|
31
|
+
mode: 'shadow',
|
|
31
32
|
exitLayer: 1, // Exit after integration tests
|
|
32
33
|
minLambdaForExit: 80,
|
|
33
34
|
minLambdaStability: 0.85,
|
|
@@ -42,6 +43,7 @@ export const DEFAULT_EXIT_CONFIG = {
|
|
|
42
43
|
* Aggressive configuration for fast feedback
|
|
43
44
|
*/
|
|
44
45
|
export const AGGRESSIVE_EXIT_CONFIG = {
|
|
46
|
+
mode: 'shadow',
|
|
45
47
|
exitLayer: 0, // Exit after unit tests
|
|
46
48
|
minLambdaForExit: 60,
|
|
47
49
|
minLambdaStability: 0.75,
|
|
@@ -56,6 +58,7 @@ export const AGGRESSIVE_EXIT_CONFIG = {
|
|
|
56
58
|
* Conservative configuration for high-risk changes
|
|
57
59
|
*/
|
|
58
60
|
export const CONSERVATIVE_EXIT_CONFIG = {
|
|
61
|
+
mode: 'shadow',
|
|
59
62
|
exitLayer: 2, // Exit after E2E tests
|
|
60
63
|
minLambdaForExit: 95,
|
|
61
64
|
minLambdaStability: 0.92,
|
package/dist/index.d.ts
CHANGED
|
@@ -13,8 +13,8 @@ export type { TeammateIdleHookConfig, TaskQueue, PendingTask, TeammateIdleStats,
|
|
|
13
13
|
export { DevilsAdvocate, ClaimVerifier } from './agents';
|
|
14
14
|
export * from './domains';
|
|
15
15
|
export { MCPProtocolServer, createMCPProtocolServer, MCPServer, createMCPServer, ToolRegistry, createToolRegistry, } from './mcp';
|
|
16
|
-
export { createQEReasoningBank, QEReasoningBank, RealQEReasoningBank, createRealQEReasoningBank, detectQEDomain, detectQEDomains, mapQEDomainToAQE, QE_DOMAIN_LIST, QE_DOMAINS, } from './learning';
|
|
17
|
-
export type { QEPattern, QEPatternType, QEPatternTemplate, QEPatternContext, QEDomain, CreateQEPatternOptions, LearningOutcome, PatternSearchOptions, PatternSearchResult, QERoutingRequest, QERoutingResult, } from './learning';
|
|
16
|
+
export { createQEReasoningBank, QEReasoningBank, RealQEReasoningBank, createRealQEReasoningBank, detectQEDomain, detectQEDomains, mapQEDomainToAQE, QE_DOMAIN_LIST, QE_DOMAINS, createStructuralRetrievalCorpus, verifyStructuralRetrievalCorpus, evaluateStructuralRetrieval, diagnoseRetrieval, createRetrievalReceipt, STRUCTURAL_RETRIEVAL_TRANSFORMATIONS, PatternMutationError, } from './learning';
|
|
17
|
+
export type { QEPattern, QEPatternType, QEPatternTemplate, QEPatternContext, QEDomain, CreateQEPatternOptions, LearningOutcome, PatternSearchOptions, PatternSearchResult, QERoutingRequest, QERoutingResult, StructuralTransformation, CorpusSplit, StructuralPattern, StructuralRetrievalQuery, StructuralRetrievalCorpus, RankedCandidate, RetrievalDiagnostic, QueryRetrievalResult, MetricEstimate, RetrievalMetricSet, StructuralRetrievalReport, RetrievalReceipt, CreateRetrievalReceiptInput, PatternMutationDisposition, } from './learning';
|
|
18
18
|
export { createTestOutcomeTracker, createCoverageLearner, createQualityScoreCalculator, createPatternPromotionManager, createQualityFeedbackLoop, createInitializedFeedbackLoop, QualityFeedbackLoop, TestOutcomeTracker, CoverageLearner, QualityScoreCalculator, PatternPromotionManager, DEFAULT_FEEDBACK_CONFIG, DEFAULT_QUALITY_WEIGHTS, DEFAULT_PROMOTION_CRITERIA, } from './feedback';
|
|
19
19
|
export type { TestOutcome, CoverageSession, CoverageStrategy, CoverageTechnique, FeedbackConfig, PatternTier, CoverageGap as FeedbackCoverageGap, QualityDimensions, QualityWeights, PromotionCriteria, PatternPromotionEvent, PatternDemotionEvent, } from './feedback';
|
|
20
20
|
export * from './routing';
|
|
@@ -26,7 +26,9 @@ export { EmbeddingGenerator, EmbeddingCache, HNSWEmbeddingIndex, HNSWIndexFactor
|
|
|
26
26
|
export type { EmbeddingDimension, EmbeddingNamespace, QuantizationType, IEmbedding, IEmbeddingModelConfig, IEmbeddingOptions, IBatchEmbeddingResult, ISimilarityResult, ISearchOptions, EmbeddingModelType, IHNSWConfig, ICacheConfig, IEmbeddingStats, TestCaseMetadata, ITestCaseEmbedding, ISimilarTestResult, ITestEmbeddingOptions, ICoverageData, ICoverageGap, ICoverageEmbedding, ICoverageEmbeddingOptions, DefectSeverity, DefectType, IDefectMetadata, IDefectEmbedding, ISimilarDefectResult, IDefectPrediction, IDefectEmbeddingOptions, } from './integrations/embeddings';
|
|
27
27
|
export type { TopologyType, AgentNode, CommunicationEdge, SwarmTopology, AgentHealthMetrics as StrangeLoopAgentHealthMetrics, ConnectivityMetrics, SwarmVulnerability, SwarmHealthObservation, TrendDirection, TrendAnalysis, BottleneckInfo, BottleneckAnalysis, PredictedVulnerability, SwarmModelDelta, SelfHealingActionType, ActionPriority, SelfHealingAction, ActionResult, ExecutedAction, SelfDiagnosis, StrangeLoopConfig, StrangeLoopStats, StrangeLoopEventType, StrangeLoopEvent, StrangeLoopEventListener, AgentProvider, ActionExecutor, } from './strange-loop';
|
|
28
28
|
export { SwarmSkillValidator, createSwarmSkillValidator, DEFAULT_SWARM_VALIDATION_CONFIG, P0_SKILLS, DEFAULT_VALIDATION_MODELS, TriggerOptimizer, createTriggerOptimizer, parseSkillFrontmatter, VersionComparator, createVersionComparator, } from './validation';
|
|
29
|
+
export { computeVerificationArtifactDigest, computeVerificationReachManifestHash, createVerificationReachManifest, evaluateVerificationReach, } from './validation/verification-reach';
|
|
29
30
|
export type { SwarmValidationConfig, SwarmTopology as ValidationSwarmTopology, SwarmValidationResult, SwarmValidationSummary, SkillValidatorFn, SkillMetadata, TriggerAnalysisConfig, TriggerAnalysisResult, TriggerSuggestion, TriggerOptimizationReport, VersionComparisonConfig, SkillVersion, VersionComparisonResult, VersionResult, ComparisonStats, TestCaseComparison, } from './validation';
|
|
31
|
+
export type { FailureModeRequirement, FailureModeReachResult, FailureModeSeverity, UncoveredDisposition, VerificationChannel, VerificationCost, VerificationCoverageVerdict, VerificationEvidenceClass, VerificationExecutionStatus, VerificationReach, VerificationReachEvaluationOptions, VerificationReachLevel, VerificationReachManifest, VerificationReachManifestInput, VerificationReachResult, VerificationTarget, } from './validation/verification-reach';
|
|
30
32
|
export declare const VERSION: string;
|
|
31
33
|
export declare const ARCHITECTURE = "DDD with 13 Bounded Contexts";
|
|
32
34
|
export declare const MAX_CONCURRENT_AGENTS = 15;
|
package/dist/index.js
CHANGED
|
@@ -27,7 +27,7 @@ export * from './domains/index.js';
|
|
|
27
27
|
export { MCPProtocolServer, createMCPProtocolServer, MCPServer, createMCPServer, ToolRegistry, createToolRegistry, } from './mcp/index.js';
|
|
28
28
|
// Learning Module - QE ReasoningBank for pattern learning (ADR-021)
|
|
29
29
|
// Exclude types that conflict with routing (ComplexityLevel, ProgrammingLanguage, TestFramework)
|
|
30
|
-
export { createQEReasoningBank, QEReasoningBank, RealQEReasoningBank, createRealQEReasoningBank, detectQEDomain, detectQEDomains, mapQEDomainToAQE, QE_DOMAIN_LIST, QE_DOMAINS, } from './learning/index.js';
|
|
30
|
+
export { createQEReasoningBank, QEReasoningBank, RealQEReasoningBank, createRealQEReasoningBank, detectQEDomain, detectQEDomains, mapQEDomainToAQE, QE_DOMAIN_LIST, QE_DOMAINS, createStructuralRetrievalCorpus, verifyStructuralRetrievalCorpus, evaluateStructuralRetrieval, diagnoseRetrieval, createRetrievalReceipt, STRUCTURAL_RETRIEVAL_TRANSFORMATIONS, PatternMutationError, } from './learning/index.js';
|
|
31
31
|
// Feedback Module - Quality Feedback Loop (ADR-023)
|
|
32
32
|
// Exclude types that conflict with shared/types (CoverageMetrics, QualityScore)
|
|
33
33
|
export { createTestOutcomeTracker, createCoverageLearner, createQualityScoreCalculator, createPatternPromotionManager, createQualityFeedbackLoop, createInitializedFeedbackLoop, QualityFeedbackLoop, TestOutcomeTracker, CoverageLearner, QualityScoreCalculator, PatternPromotionManager, DEFAULT_FEEDBACK_CONFIG, DEFAULT_QUALITY_WEIGHTS, DEFAULT_PROMOTION_CRITERIA, } from './feedback/index.js';
|
|
@@ -77,6 +77,7 @@ P0_SKILLS, DEFAULT_VALIDATION_MODELS,
|
|
|
77
77
|
TriggerOptimizer, createTriggerOptimizer, parseSkillFrontmatter,
|
|
78
78
|
// Version Comparator
|
|
79
79
|
VersionComparator, createVersionComparator, } from './validation/index.js';
|
|
80
|
+
export { computeVerificationArtifactDigest, computeVerificationReachManifestHash, createVerificationReachManifest, evaluateVerificationReach, } from './validation/verification-reach.js';
|
|
80
81
|
// Version info - read from package.json
|
|
81
82
|
export const VERSION = pkg.version;
|
|
82
83
|
export const ARCHITECTURE = 'DDD with 13 Bounded Contexts';
|
|
@@ -66,6 +66,12 @@ export interface BrowserEngineInstallResult {
|
|
|
66
66
|
*/
|
|
67
67
|
platformHint?: PlatformHint;
|
|
68
68
|
}
|
|
69
|
+
export type BrowserEngineDetectionStatus = 'ready' | 'cli-missing' | 'payload-missing';
|
|
70
|
+
export interface BrowserEngineDetectionResult {
|
|
71
|
+
status: BrowserEngineDetectionStatus;
|
|
72
|
+
version?: string;
|
|
73
|
+
message?: string;
|
|
74
|
+
}
|
|
69
75
|
export interface PlatformHint {
|
|
70
76
|
/**
|
|
71
77
|
* Short machine-readable tag for the condition being reported. Consumers
|
|
@@ -111,6 +117,11 @@ export declare function diagnosePlatform(probe?: PlatformProbe): PlatformHint |
|
|
|
111
117
|
* stdout when both are non-empty. Devil's-advocate review finding H1.
|
|
112
118
|
*/
|
|
113
119
|
export declare function detectVibium(spawner?: Spawner, timeoutMs?: number): string | null;
|
|
120
|
+
/**
|
|
121
|
+
* Detect Vibium readiness without changing the host. A usable browser engine
|
|
122
|
+
* requires both the CLI and Vibium's same-revision Chrome/chromedriver payload.
|
|
123
|
+
*/
|
|
124
|
+
export declare function detectBrowserEngine(spawner?: Spawner, timeoutMs?: number): BrowserEngineDetectionResult;
|
|
114
125
|
/**
|
|
115
126
|
* Install Vibium via `npm install -g`. Returns a structured result the
|
|
116
127
|
* assets phase can log/summarize — never throws for expected failures.
|
|
@@ -113,6 +113,26 @@ export function detectVibium(spawner = defaultSpawner, timeoutMs = 5_000) {
|
|
|
113
113
|
const match = raw.match(/v?(\d+\.\d+\.\d+(?:[-+][\w.]+)?)/);
|
|
114
114
|
return match ? match[1] : raw.split(/\s+/)[0] || 'unknown';
|
|
115
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* Detect Vibium readiness without changing the host. A usable browser engine
|
|
118
|
+
* requires both the CLI and Vibium's same-revision Chrome/chromedriver payload.
|
|
119
|
+
*/
|
|
120
|
+
export function detectBrowserEngine(spawner = defaultSpawner, timeoutMs = 5_000) {
|
|
121
|
+
const version = detectVibium(spawner, timeoutMs);
|
|
122
|
+
if (!version)
|
|
123
|
+
return { status: 'cli-missing' };
|
|
124
|
+
const payload = tryRun(spawner, 'vibium', ['is-installed'], timeoutMs);
|
|
125
|
+
if (payload.status === 0)
|
|
126
|
+
return { status: 'ready', version };
|
|
127
|
+
return {
|
|
128
|
+
status: 'payload-missing',
|
|
129
|
+
version,
|
|
130
|
+
message: payload.stderr?.trim() ||
|
|
131
|
+
payload.stdout?.trim() ||
|
|
132
|
+
toErrorMessage(payload.error) ||
|
|
133
|
+
'Vibium Chrome/chromedriver payload is missing or incomplete',
|
|
134
|
+
};
|
|
135
|
+
}
|
|
116
136
|
/**
|
|
117
137
|
* Install Vibium via `npm install -g`. Returns a structured result the
|
|
118
138
|
* assets phase can log/summarize — never throws for expected failures.
|
|
@@ -125,11 +145,11 @@ export function installBrowserEngine(options = {}) {
|
|
|
125
145
|
const spawner = options.spawner || defaultSpawner;
|
|
126
146
|
const platformProbe = options.platformProbe || defaultPlatformProbe;
|
|
127
147
|
const platformHint = diagnosePlatform(platformProbe);
|
|
128
|
-
const
|
|
129
|
-
if (
|
|
148
|
+
const existing = detectBrowserEngine(spawner);
|
|
149
|
+
if (existing.status === 'ready') {
|
|
130
150
|
return {
|
|
131
151
|
status: 'already-installed',
|
|
132
|
-
version:
|
|
152
|
+
version: existing.version,
|
|
133
153
|
packageSpec,
|
|
134
154
|
platformHint,
|
|
135
155
|
};
|
|
@@ -156,7 +176,17 @@ export function installBrowserEngine(options = {}) {
|
|
|
156
176
|
'unknown npm install failure',
|
|
157
177
|
};
|
|
158
178
|
}
|
|
159
|
-
const
|
|
160
|
-
|
|
179
|
+
const verified = detectBrowserEngine(spawner);
|
|
180
|
+
if (verified.status !== 'ready') {
|
|
181
|
+
const reason = verified.message ? `: ${verified.message}` : '';
|
|
182
|
+
return {
|
|
183
|
+
status: 'install-failed',
|
|
184
|
+
packageSpec,
|
|
185
|
+
platformHint,
|
|
186
|
+
message: `npm completed, but Vibium readiness verification failed (${verified.status})${reason}. ` +
|
|
187
|
+
`Run \`npm install -g ${packageSpec}\`, then verify with \`vibium is-installed\`.`,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
return { status: 'installed', version: verified.version, packageSpec, platformHint };
|
|
161
191
|
}
|
|
162
192
|
//# sourceMappingURL=browser-engine-installer.js.map
|
|
@@ -12,12 +12,16 @@ export interface CodexInstallerOptions {
|
|
|
12
12
|
installMcp?: boolean;
|
|
13
13
|
/** Install optional Ruflo guidance, adapter, runtime, and lifecycle groups. */
|
|
14
14
|
includeRuflo?: boolean;
|
|
15
|
+
/** Eager AGENTS.md guidance policy. Defaults to full. */
|
|
16
|
+
guidancePolicy?: CodexGuidancePolicy;
|
|
15
17
|
/**
|
|
16
18
|
* Memory backend for this install. 'memory' => database-free: the MCP config
|
|
17
19
|
* is written to run in-memory (AQE_MEMORY_BACKEND=memory, no AQE_MEMORY_PATH). (#533)
|
|
18
20
|
*/
|
|
19
21
|
memoryBackend?: 'memory' | 'sqlite' | 'agentdb' | 'hybrid';
|
|
20
22
|
}
|
|
23
|
+
export type CodexGuidancePolicy = 'full' | 'compact' | 'none';
|
|
24
|
+
export declare const CODEX_COMPACT_GUIDANCE_MAX_BYTES = 512;
|
|
21
25
|
export interface CodexInstallResult {
|
|
22
26
|
success: boolean;
|
|
23
27
|
mcpConfigured: boolean;
|
|
@@ -29,6 +33,8 @@ export interface CodexInstallResult {
|
|
|
29
33
|
agentsMdPath: string;
|
|
30
34
|
hooksPath: string;
|
|
31
35
|
skillsPath: string;
|
|
36
|
+
guidancePolicy: CodexGuidancePolicy;
|
|
37
|
+
ownedGuidanceBytes: number;
|
|
32
38
|
/** Per-component outcomes. Legacy booleans above remain supported. */
|
|
33
39
|
components: {
|
|
34
40
|
mcp: CodexComponentOutcome;
|
|
@@ -70,7 +76,11 @@ export declare class CodexInstaller {
|
|
|
70
76
|
* Merge AQE section into existing AGENTS.md.
|
|
71
77
|
* Replaces a previously marked AQE section or appends a new marked section.
|
|
72
78
|
*/
|
|
73
|
-
private
|
|
79
|
+
private mergeExistingAgentsMdContent;
|
|
80
|
+
private removeOwnedAgentsSections;
|
|
81
|
+
private measureOwnedAgentsSection;
|
|
82
|
+
private assertOwnedAgentsSectionsWellFormed;
|
|
83
|
+
private ownedAgentsPattern;
|
|
74
84
|
private markAgentsSection;
|
|
75
85
|
}
|
|
76
86
|
export declare function createCodexInstaller(options: CodexInstallerOptions): CodexInstaller;
|
|
@@ -11,6 +11,10 @@ import { fileURLToPath } from 'url';
|
|
|
11
11
|
import { toErrorMessage } from '../shared/error-utils.js';
|
|
12
12
|
import { selectCodexSkills } from './codex-skill-manifest.js';
|
|
13
13
|
import { createPlatformConfigGenerator, } from './platform-config-generator.js';
|
|
14
|
+
export const CODEX_COMPACT_GUIDANCE_MAX_BYTES = 512;
|
|
15
|
+
const COMPACT_CODEX_GUIDANCE = `# Agentic QE
|
|
16
|
+
|
|
17
|
+
Preserve project data, especially .agentic-qe/memory.db. Read affected code and tests before editing, validate inputs at system boundaries, and run focused checks before broader gates. Discover AQE tools and skills from their live schemas.`;
|
|
14
18
|
// ============================================================================
|
|
15
19
|
// Codex Installer Class
|
|
16
20
|
// ============================================================================
|
|
@@ -39,6 +43,8 @@ export class CodexInstaller {
|
|
|
39
43
|
agentsMdPath: '',
|
|
40
44
|
hooksPath: join(this.projectRoot, '.codex', 'hooks.json'),
|
|
41
45
|
skillsPath: join(this.projectRoot, '.agents', 'skills'),
|
|
46
|
+
guidancePolicy: this.options.guidancePolicy ?? 'full',
|
|
47
|
+
ownedGuidanceBytes: 0,
|
|
42
48
|
components: {
|
|
43
49
|
mcp: { status: 'skipped' },
|
|
44
50
|
rules: { status: 'skipped' },
|
|
@@ -76,24 +82,52 @@ export class CodexInstaller {
|
|
|
76
82
|
this.recordComponentFailure(result, 'mcp', error);
|
|
77
83
|
}
|
|
78
84
|
try {
|
|
79
|
-
|
|
85
|
+
const policy = this.options.guidancePolicy ?? 'full';
|
|
80
86
|
const rules = this.generator.generateBehavioralRules('codex');
|
|
81
87
|
const agentsMdPath = join(this.projectRoot, rules.path);
|
|
82
88
|
result.agentsMdPath = agentsMdPath;
|
|
83
89
|
const rulesExist = existsSync(agentsMdPath);
|
|
84
|
-
if (
|
|
85
|
-
if (rulesExist
|
|
86
|
-
|
|
87
|
-
writeFileSync(agentsMdPath, merged);
|
|
90
|
+
if (policy === 'none') {
|
|
91
|
+
if (!rulesExist) {
|
|
92
|
+
result.components.rules.status = 'skipped';
|
|
88
93
|
}
|
|
89
94
|
else {
|
|
90
|
-
|
|
95
|
+
const existing = readFileSync(agentsMdPath, 'utf-8');
|
|
96
|
+
const updated = this.removeOwnedAgentsSections(existing);
|
|
97
|
+
if (updated !== existing) {
|
|
98
|
+
writeFileSync(agentsMdPath, updated);
|
|
99
|
+
result.components.rules.status = 'updated';
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
result.components.rules.status = 'preserved';
|
|
103
|
+
}
|
|
91
104
|
}
|
|
105
|
+
}
|
|
106
|
+
else if (!rulesExist) {
|
|
107
|
+
const content = policy === 'compact' ? COMPACT_CODEX_GUIDANCE : rules.content;
|
|
108
|
+
const marked = this.markAgentsSection(content);
|
|
109
|
+
writeFileSync(agentsMdPath, marked);
|
|
92
110
|
result.agentsMdInstalled = true;
|
|
93
|
-
result.
|
|
111
|
+
result.ownedGuidanceBytes = Buffer.byteLength(marked);
|
|
112
|
+
result.components.rules.status = 'installed';
|
|
113
|
+
}
|
|
114
|
+
else if (this.overwrite || policy === 'compact') {
|
|
115
|
+
const content = policy === 'compact' ? COMPACT_CODEX_GUIDANCE : rules.content;
|
|
116
|
+
const existing = readFileSync(agentsMdPath, 'utf-8');
|
|
117
|
+
const merged = this.mergeExistingAgentsMdContent(existing, content);
|
|
118
|
+
if (merged !== existing) {
|
|
119
|
+
writeFileSync(agentsMdPath, merged);
|
|
120
|
+
result.agentsMdInstalled = true;
|
|
121
|
+
result.components.rules.status = 'updated';
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
result.components.rules.status = 'preserved';
|
|
125
|
+
}
|
|
126
|
+
result.ownedGuidanceBytes = this.measureOwnedAgentsSection(merged);
|
|
94
127
|
}
|
|
95
128
|
else {
|
|
96
129
|
result.components.rules.status = 'preserved';
|
|
130
|
+
result.ownedGuidanceBytes = this.measureOwnedAgentsSection(readFileSync(agentsMdPath, 'utf-8'));
|
|
97
131
|
}
|
|
98
132
|
}
|
|
99
133
|
catch (error) {
|
|
@@ -163,12 +197,21 @@ export class CodexInstaller {
|
|
|
163
197
|
}
|
|
164
198
|
}
|
|
165
199
|
const generatedSource = JSON.parse(readFileSync(sourceConfig, 'utf-8'));
|
|
166
|
-
const
|
|
200
|
+
const withoutRufloHooks = (groups) => groups.flatMap((group) => {
|
|
201
|
+
if (!group || typeof group !== 'object')
|
|
202
|
+
return [group];
|
|
203
|
+
const candidate = group;
|
|
204
|
+
if (!Array.isArray(candidate.hooks)) {
|
|
205
|
+
return JSON.stringify(group).includes('ruflo-codex-hook.cjs') ? [] : [group];
|
|
206
|
+
}
|
|
207
|
+
const hooks = candidate.hooks.filter((hook) => !JSON.stringify(hook).includes('ruflo-codex-hook.cjs'));
|
|
208
|
+
return hooks.length > 0 ? [{ ...candidate, hooks }] : [];
|
|
209
|
+
});
|
|
167
210
|
const generated = {
|
|
168
211
|
...generatedSource,
|
|
169
212
|
hooks: Object.fromEntries(Object.entries(generatedSource.hooks || {}).map(([event, groups]) => [
|
|
170
213
|
event,
|
|
171
|
-
this.options.includeRuflo ? groups : groups
|
|
214
|
+
this.options.includeRuflo ? groups : withoutRufloHooks(groups),
|
|
172
215
|
])),
|
|
173
216
|
};
|
|
174
217
|
const targetConfig = join(targetCodexDir, 'hooks.json');
|
|
@@ -290,23 +333,46 @@ export class CodexInstaller {
|
|
|
290
333
|
* Merge AQE section into existing AGENTS.md.
|
|
291
334
|
* Replaces a previously marked AQE section or appends a new marked section.
|
|
292
335
|
*/
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
const
|
|
296
|
-
const
|
|
297
|
-
|
|
298
|
-
const
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
336
|
+
mergeExistingAgentsMdContent(existing, newContent) {
|
|
337
|
+
this.assertOwnedAgentsSectionsWellFormed(existing);
|
|
338
|
+
const eol = existing.includes('\r\n') ? '\r\n' : '\n';
|
|
339
|
+
const marked = this.markAgentsSection(newContent, eol);
|
|
340
|
+
let replaced = false;
|
|
341
|
+
const merged = existing.replace(this.ownedAgentsPattern(), () => {
|
|
342
|
+
if (replaced)
|
|
343
|
+
return '';
|
|
344
|
+
replaced = true;
|
|
345
|
+
return marked;
|
|
346
|
+
});
|
|
347
|
+
if (replaced)
|
|
348
|
+
return merged;
|
|
349
|
+
if (existing.length === 0)
|
|
350
|
+
return marked;
|
|
351
|
+
return existing.trimEnd() + `${eol}${eol}---${eol}${eol}` + marked;
|
|
352
|
+
}
|
|
353
|
+
removeOwnedAgentsSections(existing) {
|
|
354
|
+
this.assertOwnedAgentsSectionsWellFormed(existing);
|
|
355
|
+
return existing.replace(this.ownedAgentsPattern(), '');
|
|
356
|
+
}
|
|
357
|
+
measureOwnedAgentsSection(content) {
|
|
358
|
+
this.assertOwnedAgentsSectionsWellFormed(content);
|
|
359
|
+
const match = content.match(this.ownedAgentsPattern());
|
|
360
|
+
return match ? Buffer.byteLength(match[0]) : 0;
|
|
361
|
+
}
|
|
362
|
+
assertOwnedAgentsSectionsWellFormed(content) {
|
|
363
|
+
const starts = content.match(/<!-- BEGIN AGENTIC-QE CODEX -->/g)?.length ?? 0;
|
|
364
|
+
const ends = content.match(/<!-- END AGENTIC-QE CODEX -->/g)?.length ?? 0;
|
|
365
|
+
const complete = content.match(this.ownedAgentsPattern())?.length ?? 0;
|
|
366
|
+
if (starts !== ends || complete !== starts) {
|
|
367
|
+
throw new Error('Malformed Agentic QE Codex sentinel in AGENTS.md; file was preserved');
|
|
305
368
|
}
|
|
306
|
-
return existing.trimEnd() + '\n\n---\n\n' + marked;
|
|
307
369
|
}
|
|
308
|
-
|
|
309
|
-
return
|
|
370
|
+
ownedAgentsPattern() {
|
|
371
|
+
return /<!-- BEGIN AGENTIC-QE CODEX -->[\s\S]*?<!-- END AGENTIC-QE CODEX -->(?:\r?\n)?/g;
|
|
372
|
+
}
|
|
373
|
+
markAgentsSection(content, eol = '\n') {
|
|
374
|
+
const normalized = content.trim().replace(/\r?\n/g, eol);
|
|
375
|
+
return `${CodexInstaller.AGENTS_START}${eol}${normalized}${eol}${CodexInstaller.AGENTS_END}${eol}`;
|
|
310
376
|
}
|
|
311
377
|
}
|
|
312
378
|
// ============================================================================
|
|
@@ -53,7 +53,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
53
53
|
{
|
|
54
54
|
type: 'command',
|
|
55
55
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" guard --file "$TOOL_INPUT_file_path" --json',
|
|
56
|
-
timeout:
|
|
56
|
+
timeout: 3,
|
|
57
57
|
continueOnError: true,
|
|
58
58
|
},
|
|
59
59
|
],
|
|
@@ -64,7 +64,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
64
64
|
{
|
|
65
65
|
type: 'command',
|
|
66
66
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" pre-edit --file "$TOOL_INPUT_file_path" --json',
|
|
67
|
-
timeout:
|
|
67
|
+
timeout: 5,
|
|
68
68
|
continueOnError: true,
|
|
69
69
|
},
|
|
70
70
|
],
|
|
@@ -75,7 +75,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
75
75
|
{
|
|
76
76
|
type: 'command',
|
|
77
77
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" pre-command --command "$TOOL_INPUT_command" --json',
|
|
78
|
-
timeout:
|
|
78
|
+
timeout: 3,
|
|
79
79
|
continueOnError: true,
|
|
80
80
|
},
|
|
81
81
|
],
|
|
@@ -86,7 +86,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
86
86
|
{
|
|
87
87
|
type: 'command',
|
|
88
88
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" pre-task --description "$TOOL_INPUT_prompt" --json',
|
|
89
|
-
timeout:
|
|
89
|
+
timeout: 5,
|
|
90
90
|
continueOnError: true,
|
|
91
91
|
},
|
|
92
92
|
],
|
|
@@ -99,7 +99,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
99
99
|
{
|
|
100
100
|
type: 'command',
|
|
101
101
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" post-edit --file "$TOOL_INPUT_file_path" --success --json',
|
|
102
|
-
timeout:
|
|
102
|
+
timeout: 5,
|
|
103
103
|
continueOnError: true,
|
|
104
104
|
},
|
|
105
105
|
],
|
|
@@ -110,7 +110,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
110
110
|
{
|
|
111
111
|
type: 'command',
|
|
112
112
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" post-command --command "$TOOL_INPUT_command" --success true --json',
|
|
113
|
-
timeout:
|
|
113
|
+
timeout: 5,
|
|
114
114
|
continueOnError: true,
|
|
115
115
|
},
|
|
116
116
|
],
|
|
@@ -121,7 +121,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
121
121
|
{
|
|
122
122
|
type: 'command',
|
|
123
123
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" post-task --task-id "$TOOL_RESULT_agent_id" --agent "$TOOL_INPUT_subagent_type" --success true --description "$TOOL_INPUT_prompt" --json',
|
|
124
|
-
timeout:
|
|
124
|
+
timeout: 5,
|
|
125
125
|
continueOnError: true,
|
|
126
126
|
},
|
|
127
127
|
],
|
|
@@ -136,7 +136,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
136
136
|
// var, so we let the CLI read stdin directly.
|
|
137
137
|
type: 'command',
|
|
138
138
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" route --json',
|
|
139
|
-
timeout:
|
|
139
|
+
timeout: 5,
|
|
140
140
|
continueOnError: true,
|
|
141
141
|
},
|
|
142
142
|
],
|
|
@@ -148,7 +148,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
148
148
|
{
|
|
149
149
|
type: 'command',
|
|
150
150
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" session-start --session-id "$SESSION_ID" --json',
|
|
151
|
-
timeout:
|
|
151
|
+
timeout: 10,
|
|
152
152
|
continueOnError: true,
|
|
153
153
|
},
|
|
154
154
|
],
|
|
@@ -160,7 +160,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
160
160
|
{
|
|
161
161
|
type: 'command',
|
|
162
162
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" session-end --save-state --json',
|
|
163
|
-
timeout:
|
|
163
|
+
timeout: 5,
|
|
164
164
|
continueOnError: true,
|
|
165
165
|
},
|
|
166
166
|
],
|
|
@@ -173,7 +173,7 @@ export async function configureHooks(projectRoot, config) {
|
|
|
173
173
|
// sentinels accumulate at quality_score=-1 indefinitely.
|
|
174
174
|
type: 'command',
|
|
175
175
|
command: 'node "${CLAUDE_PROJECT_DIR:-.}/.claude/hooks/aqe-hook.cjs" post-route --success true --json',
|
|
176
|
-
timeout:
|
|
176
|
+
timeout: 5,
|
|
177
177
|
continueOnError: true,
|
|
178
178
|
},
|
|
179
179
|
],
|
|
@@ -43,6 +43,7 @@ export class ModularInitOrchestrator {
|
|
|
43
43
|
withRooCode: options.withRooCode || allPlatforms,
|
|
44
44
|
withCodex: options.withCodex || allPlatforms,
|
|
45
45
|
withRuflo: options.withRuflo,
|
|
46
|
+
codexGuidance: options.codexGuidance,
|
|
46
47
|
withWindsurf: options.withWindsurf || allPlatforms,
|
|
47
48
|
withContinueDev: options.withContinueDev || allPlatforms,
|
|
48
49
|
withAllPlatforms: options.withAllPlatforms,
|
|
@@ -156,6 +157,7 @@ export class ModularInitOrchestrator {
|
|
|
156
157
|
mcpConfigured: mcpResult?.data?.configured ?? false,
|
|
157
158
|
claudeMdGenerated: claudeMdResult?.data?.generated ?? false,
|
|
158
159
|
workersStarted: workersResult?.data?.workersConfigured ?? 0,
|
|
160
|
+
codexGuidance: assetsResult?.data?.codexGuidance,
|
|
159
161
|
},
|
|
160
162
|
totalDurationMs: Date.now() - startTime,
|
|
161
163
|
timestamp: new Date(),
|
|
@@ -55,7 +55,7 @@ export declare class HooksPhase extends BasePhase<HooksResult> {
|
|
|
55
55
|
/**
|
|
56
56
|
* Install the resilient hook shim (aqe-hook.cjs) into .claude/hooks/.
|
|
57
57
|
* The generated settings.json hooks run `node .../aqe-hook.cjs <cmd>` — the
|
|
58
|
-
* shim resolves a project-local AQE bundle (or
|
|
58
|
+
* shim resolves a project-local AQE bundle (or an installed aqe binary), strips
|
|
59
59
|
* init noise from stdout, swallows stderr, and always exits 0.
|
|
60
60
|
*/
|
|
61
61
|
private installHookShim;
|
|
@@ -72,8 +72,8 @@ export declare class HooksPhase extends BasePhase<HooksResult> {
|
|
|
72
72
|
/**
|
|
73
73
|
* Generate hooks configuration
|
|
74
74
|
*
|
|
75
|
-
*
|
|
76
|
-
*
|
|
75
|
+
* Timeout values use Claude Code's native seconds unit. The shim itself uses
|
|
76
|
+
* a smaller millisecond budget so it can record failures before the host stops it.
|
|
77
77
|
*/
|
|
78
78
|
private generateHooksConfig;
|
|
79
79
|
}
|