@unotest/web 0.13.0 → 0.13.1
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/CHANGELOG.md +16 -0
- package/dist/config/schema.js +1 -1
- package/dist/driver/index.js +1 -1
- package/dist/dsl/index.js +1 -1
- package/dist/dsl/web-dsl-language-service.js +1 -1
- package/dist/mcp/server.js +1 -1
- package/dist/runner/cli.js +1 -1
- package/dist/runner/init/chrome-probe.js +1 -1
- package/dist/runner/init.js +1 -1
- package/dist/runner/install-chromium.js +1 -1
- package/dist/runner/prepare-fix.js +1 -1
- package/dist/runner/scaffold-workspace.js +1 -1
- package/dist/runner/serve-fixture.js +1 -1
- package/dist/runner/web-runner-adapter.js +1 -1
- package/guides/dsl-reference.md +7 -2
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function _0x1ee6(){const _0x430a2b=['zgfYD2LU','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','ChjVyMvtExn0zw1cCM93C2vY','r29Vz2XLienOCM9TzsbczxrH','nda1mJGXmLLxqwL5Da','DxrMoa','l3vZCI9IAw4Vy2HYB21PDw0','ndC3mZK2nvDoExrsDq','zw52','z29Vz2XLlwnOCM9Tzq','y2HYB21PDw0TyNjVD3nLCG','BMfTzq','ChjVyMvdAhjVBwu','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','r29Vz2XLienOCM9Tzq','y2HYB21L','y2HYB21LlwjLDge','BwLJCM9ZB2z0lwvKz2u','zMLYC3rfEgLZDgLUz1bHDgG','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','ode3ntyYAwD3u25l','nLHis0PiEa','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','CgXHDgzVCM0','D2HPy2HpzG','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','twLJCM9ZB2z0ievKz2u','ndC1mZK5nxjHz3fOCW','ChjVyMvdAhjVBwvczxrH','ovvzq29HEq','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','ChjVyMvfzgDL','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','BxnLzgDL','mJy5mdK4q3req1fg','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','nde1odK5mKzcrMP5tq','D2LUmZi','uhjVz3jHBuzPBgvZkhG4nIK','mZiYotG5mgrbzufPsG','uhjVz3jHBuzPBgvZ'];_0x1ee6=function(){return _0x430a2b;};return _0x1ee6();}const _0x2d6a80=_0x53b7;(function(_0x2b47f6,_0x17eea0){const _0x3af5e9={_0x4376f6:0xe5,_0x8aa8a9:0xe8},_0x25982f=_0x53b7,_0x53557b=_0x2b47f6();while(!![]){try{const _0x512533=-parseInt(_0x25982f(0xd8))/0x1+parseInt(_0x25982f(0xf5))/0x2*(-parseInt(_0x25982f(0xf6))/0x3)+parseInt(_0x25982f(_0x3af5e9._0x4376f6))/0x4+-parseInt(_0x25982f(0xfd))/0x5+parseInt(_0x25982f(0xdf))/0x6+parseInt(_0x25982f(_0x3af5e9._0x8aa8a9))/0x7+-parseInt(_0x25982f(0xdc))/0x8*(-parseInt(_0x25982f(0xff))/0x9);if(_0x512533===_0x17eea0)break;else _0x53557b['push'](_0x53557b['shift']());}catch(_0x5f1310){_0x53557b['push'](_0x53557b['shift']());}}}(_0x1ee6,0xaec98));var __defProp=Object['defineProperty'],__name=(_0x7aa989,_0xa15458)=>__defProp(_0x7aa989,_0x2d6a80(0xec),{'value':_0xa15458,'configurable':!![]});import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){for(const _0x1a4917 of[probeChrome,probeEdge,probeChromeBeta]){const _0x54383d=_0x1a4917();if(_0x54383d['channel']!==null)return _0x54383d;}return{'channel':null};}__name(probeSystemBrowser,_0x2d6a80(0xe3));function probeChrome(){const _0x3ddff8={_0x3adda0:0xf0,_0x3a4c22:0xef},_0x3935f8=_0x2d6a80,_0x435ed9=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x435ed9)return{'channel':_0x3935f8(_0x3ddff8._0x3adda0),'path':_0x435ed9,'label':_0x3935f8(_0x3ddff8._0x3a4c22)};return{'channel':null};}__name(probeChrome,_0x2d6a80(0xed));function probeEdge(){const _0x2143c2={_0x518a75:0xd7,_0x7fb1b1:0xfc},_0x16f539=_0x2d6a80,_0x30a107=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x30a107)return{'channel':_0x16f539(_0x2143c2._0x518a75),'path':_0x30a107,'label':_0x16f539(_0x2143c2._0x7fb1b1)};return{'channel':null};}__name(probeEdge,_0x2d6a80(0xd5));function probeChromeBeta(){const _0x5f17df={_0xc7aefd:0xf1},_0x25eebc=_0x2d6a80,_0x294d99=firstExistingPath(CHROME_BETA_PATHS);if(_0x294d99)return{'channel':_0x25eebc(_0x5f17df._0xc7aefd),'path':_0x294d99,'label':_0x25eebc(0xe4)};return{'channel':null};}__name(probeChromeBeta,_0x2d6a80(0xfe));var CHROME_PATHS=((()=>{const _0x15519b={_0x3141e7:0xf9,_0x56d193:0xee,_0x150d21:0xdd,_0x2c4970:0xe9,_0x41940b:0xe0,_0x4d8a7e:0xe9,_0x21fb99:0xe7},_0x11d435=_0x2d6a80;switch(process[_0x11d435(_0x15519b._0x3141e7)]){case _0x11d435(0xe1):return[_0x11d435(_0x15519b._0x56d193)];case _0x11d435(_0x15519b._0x150d21):return[process[_0x11d435(_0x15519b._0x2c4970)][_0x11d435(_0x15519b._0x41940b)]+'\x5cGoogle\x5cChrome\x5cApplication\x5cchrome.exe',process[_0x11d435(_0x15519b._0x4d8a7e)]['ProgramFiles(x86)']+_0x11d435(0xf4),process['env']['LOCALAPPDATA']+'\x5cGoogle\x5cChrome\x5cApplication\x5cchrome.exe'];default:return['/usr/bin/google-chrome','/usr/bin/google-chrome-stable',_0x11d435(0x100),_0x11d435(_0x15519b._0x21fb99),_0x11d435(0xd6)];}})()),CHROME_BIN_NAMES=[_0x2d6a80(0xea),_0x2d6a80(0xdb),'chromium',_0x2d6a80(0xeb)],EDGE_PATHS=((()=>{const _0xed558e={_0x5ac818:0xf9,_0x5b56b0:0xe1,_0x210501:0xe0,_0x49d3ed:0xe2,_0x4fe7b1:0xde},_0x4ea340=_0x2d6a80;switch(process[_0x4ea340(_0xed558e._0x5ac818)]){case _0x4ea340(_0xed558e._0x5b56b0):return[_0x4ea340(0xd9)];case'win32':return[process[_0x4ea340(0xe9)][_0x4ea340(_0xed558e._0x210501)]+_0x4ea340(_0xed558e._0x49d3ed),process['env'][_0x4ea340(_0xed558e._0x4fe7b1)]+_0x4ea340(0xe2)];default:return['/usr/bin/microsoft-edge','/usr/bin/microsoft-edge-stable'];}})()),EDGE_BIN_NAMES=[_0x2d6a80(0xf2),_0x2d6a80(0xf7)],CHROME_BETA_PATHS=((()=>{const _0x40fff8={_0x54063e:0xe1,_0x34baad:0xda},_0x312ddd=_0x2d6a80;switch(process[_0x312ddd(0xf9)]){case _0x312ddd(_0x40fff8._0x54063e):return[_0x312ddd(0xf8)];case _0x312ddd(0xdd):return[process['env']['ProgramFiles']+_0x312ddd(0xfb)];default:return[_0x312ddd(_0x40fff8._0x34baad)];}})());function firstExistingPath(_0x4bc42d){for(const _0x219fc5 of _0x4bc42d){if(!_0x219fc5||_0x219fc5['startsWith']('undefined'))continue;if(existsSync(_0x219fc5))return _0x219fc5;}return null;}function _0x53b7(_0x8bae6a,_0x4f6537){_0x8bae6a=_0x8bae6a-0xd5;const _0x1ee62c=_0x1ee6();let _0x53b7b9=_0x1ee62c[_0x8bae6a];if(_0x53b7['RJHTps']===undefined){var _0x393cbd=function(_0x57da46){const _0x2fbb2b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x7aa989='',_0xa15458='';for(let _0x1a4917=0x0,_0x54383d,_0x435ed9,_0x30a107=0x0;_0x435ed9=_0x57da46['charAt'](_0x30a107++);~_0x435ed9&&(_0x54383d=_0x1a4917%0x4?_0x54383d*0x40+_0x435ed9:_0x435ed9,_0x1a4917++%0x4)?_0x7aa989+=String['fromCharCode'](0xff&_0x54383d>>(-0x2*_0x1a4917&0x6)):0x0){_0x435ed9=_0x2fbb2b['indexOf'](_0x435ed9);}for(let _0x294d99=0x0,_0x4bc42d=_0x7aa989['length'];_0x294d99<_0x4bc42d;_0x294d99++){_0xa15458+='%'+('00'+_0x7aa989['charCodeAt'](_0x294d99)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa15458);};_0x53b7['zCExZy']=_0x393cbd,_0x53b7['fQHbbC']={},_0x53b7['RJHTps']=!![];}const _0x22936e=_0x1ee62c[0x0],_0x548549=_0x8bae6a+_0x22936e,_0x27579b=_0x53b7['fQHbbC'][_0x548549];return!_0x27579b?(_0x53b7b9=_0x53b7['zCExZy'](_0x53b7b9),_0x53b7['fQHbbC'][_0x548549]=_0x53b7b9):_0x53b7b9=_0x27579b,_0x53b7b9;}__name(firstExistingPath,_0x2d6a80(0xf3));function whichOf(_0x4fbfab){const _0x536c43={_0x5586d7:0xf9,_0x11584b:0xdd,_0x2f14f5:0xe6},_0x54c840=_0x2d6a80;if(process[_0x54c840(_0x536c43._0x5586d7)]===_0x54c840(_0x536c43._0x11584b))return void 0x0;for(const _0xf53530 of _0x4fbfab){try{const _0x56f0f7=execFileSync('which',[_0xf53530],{'encoding':_0x54c840(_0x536c43._0x2f14f5)})['trim']();if(_0x56f0f7['length']>0x0&&existsSync(_0x56f0f7))return _0x56f0f7;}catch{}}return void 0x0;}__name(whichOf,_0x2d6a80(0xfa));export{probeSystemBrowser};
|
package/dist/runner/init.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x466b0a=_0x2072;(function(_0x1468bb,_0x36c9da){const _0x649fbd={_0x125291:0x193,_0x4f3d7f:0x103,_0x5a0dc8:0x18a,_0x1c794f:0x107,_0x32136c:0x195},_0x2f4272=_0x2072,_0x482bc2=_0x1468bb();while(!![]){try{const _0x792a7b=-parseInt(_0x2f4272(_0x649fbd._0x125291))/0x1+-parseInt(_0x2f4272(_0x649fbd._0x4f3d7f))/0x2*(-parseInt(_0x2f4272(_0x649fbd._0x5a0dc8))/0x3)+-parseInt(_0x2f4272(0xc1))/0x4*(-parseInt(_0x2f4272(_0x649fbd._0x1c794f))/0x5)+parseInt(_0x2f4272(0x14c))/0x6+-parseInt(_0x2f4272(0x145))/0x7+parseInt(_0x2f4272(_0x649fbd._0x32136c))/0x8+parseInt(_0x2f4272(0x190))/0x9*(-parseInt(_0x2f4272(0x102))/0xa);if(_0x792a7b===_0x36c9da)break;else _0x482bc2['push'](_0x482bc2['shift']());}catch(_0x4052f4){_0x482bc2['push'](_0x482bc2['shift']());}}}(_0x393b,0x8594c));var __defProp=Object['defineProperty'],__name=(_0x15d534,_0x1d6593)=>__defProp(_0x15d534,_0x466b0a(0x115),{'value':_0x1d6593,'configurable':!![]});import{copyFileSync,existsSync as _0x8c94b2,mkdirSync,readFileSync,writeFileSync}from'fs';import{dirname as _0x3321ab,join,resolve as _0x13b620}from'path';function _0x2072(_0x1a66b7,_0x5f199a){_0x1a66b7=_0x1a66b7-0xb7;const _0x393b16=_0x393b();let _0x2072da=_0x393b16[_0x1a66b7];if(_0x2072['PbkqRR']===undefined){var _0x3c34df=function(_0x1f6a22){const _0x5cf963='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x8c94b2='',_0x3321ab='';for(let _0x13b620=0x0,_0x5cefcd,_0x200546,_0x15d534=0x0;_0x200546=_0x1f6a22['charAt'](_0x15d534++);~_0x200546&&(_0x5cefcd=_0x13b620%0x4?_0x5cefcd*0x40+_0x200546:_0x200546,_0x13b620++%0x4)?_0x8c94b2+=String['fromCharCode'](0xff&_0x5cefcd>>(-0x2*_0x13b620&0x6)):0x0){_0x200546=_0x5cf963['indexOf'](_0x200546);}for(let _0x1d6593=0x0,_0x2b16b3=_0x8c94b2['length'];_0x1d6593<_0x2b16b3;_0x1d6593++){_0x3321ab+='%'+('00'+_0x8c94b2['charCodeAt'](_0x1d6593)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3321ab);};_0x2072['ymyuQH']=_0x3c34df,_0x2072['HYAzVT']={},_0x2072['PbkqRR']=!![];}const _0x14e7fa=_0x393b16[0x0],_0x5a2709=_0x1a66b7+_0x14e7fa,_0x24b073=_0x2072['HYAzVT'][_0x5a2709];return!_0x24b073?(_0x2072da=_0x2072['ymyuQH'](_0x2072da),_0x2072['HYAzVT'][_0x5a2709]=_0x2072da):_0x2072da=_0x24b073,_0x2072da;}import{fileURLToPath as _0x5cefcd}from'url';import{existsSync as _0x200546}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){const _0xf01b53=_0x466b0a;for(const _0x2b16b3 of[probeChrome,probeEdge,probeChromeBeta]){const _0x19068b=_0x2b16b3();if(_0x19068b[_0xf01b53(0x13a)]!==null)return _0x19068b;}return{'channel':null};}__name(probeSystemBrowser,_0x466b0a(0x10b));function probeChrome(){const _0x3f4835={_0x179bd6:0xc7},_0x3b017b=_0x466b0a,_0x3c30e5=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x3c30e5)return{'channel':_0x3b017b(_0x3f4835._0x179bd6),'path':_0x3c30e5,'label':_0x3b017b(0x116)};return{'channel':null};}__name(probeChrome,_0x466b0a(0x1a6));function probeEdge(){const _0x15ca07={_0xaec232:0x13c,_0x454a23:0x11c},_0x48755d=_0x466b0a,_0x4916be=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x4916be)return{'channel':_0x48755d(_0x15ca07._0xaec232),'path':_0x4916be,'label':_0x48755d(_0x15ca07._0x454a23)};return{'channel':null};}__name(probeEdge,_0x466b0a(0x1b3));function probeChromeBeta(){const _0x2b0ae1={_0x24ed3d:0x182},_0x14bfd2=_0x466b0a,_0x2cb94a=firstExistingPath(CHROME_BETA_PATHS);if(_0x2cb94a)return{'channel':_0x14bfd2(0x1b4),'path':_0x2cb94a,'label':_0x14bfd2(_0x2b0ae1._0x24ed3d)};return{'channel':null};}__name(probeChromeBeta,_0x466b0a(0x1b1));var CHROME_PATHS=((()=>{const _0x5a4468={_0xbac830:0xe6,_0xf1a787:0xc3,_0x45b6b8:0xda,_0x5cec70:0x172,_0x351508:0x15c,_0x99c67a:0x13b},_0x3f3846=_0x466b0a;switch(process['platform']){case _0x3f3846(_0x5a4468._0xbac830):return[_0x3f3846(_0x5a4468._0xf1a787)];case _0x3f3846(_0x5a4468._0x45b6b8):return[process['env'][_0x3f3846(0x166)]+_0x3f3846(0x13b),process[_0x3f3846(_0x5a4468._0x5cec70)]['ProgramFiles(x86)']+_0x3f3846(0x13b),process[_0x3f3846(_0x5a4468._0x5cec70)][_0x3f3846(_0x5a4468._0x351508)]+_0x3f3846(_0x5a4468._0x99c67a)];default:return['/usr/bin/google-chrome',_0x3f3846(0x163),_0x3f3846(0x189),'/usr/bin/chromium',_0x3f3846(0xe5)];}})()),CHROME_BIN_NAMES=[_0x466b0a(0x130),_0x466b0a(0xff),_0x466b0a(0x162),_0x466b0a(0xd5)],EDGE_PATHS=((()=>{const _0x285ef4={_0x432202:0x172,_0x1c8a3d:0x166,_0x353cca:0x133,_0x1bd03b:0x16f},_0xd005bf=_0x466b0a;switch(process[_0xd005bf(0x1b6)]){case'darwin':return[_0xd005bf(0xea)];case'win32':return[process[_0xd005bf(_0x285ef4._0x432202)][_0xd005bf(_0x285ef4._0x1c8a3d)]+_0xd005bf(_0x285ef4._0x353cca),process[_0xd005bf(0x172)][_0xd005bf(0x178)]+_0xd005bf(0x133)];default:return['/usr/bin/microsoft-edge',_0xd005bf(_0x285ef4._0x1bd03b)];}})()),EDGE_BIN_NAMES=[_0x466b0a(0xf2),_0x466b0a(0x199)],CHROME_BETA_PATHS=((()=>{const _0x2c3987={_0x29936f:0xe6,_0x3c6559:0x170},_0x347858=_0x466b0a;switch(process[_0x347858(0x1b6)]){case _0x347858(_0x2c3987._0x29936f):return[_0x347858(0x196)];case'win32':return[process['env']['ProgramFiles']+_0x347858(0x158)];default:return[_0x347858(_0x2c3987._0x3c6559)];}})());function firstExistingPath(_0x4f3cc1){const _0x200888=_0x466b0a;for(const _0x1d7884 of _0x4f3cc1){if(!_0x1d7884||_0x1d7884[_0x200888(0xcc)]('undefined'))continue;if(existsSync(_0x1d7884))return _0x1d7884;}return null;}__name(firstExistingPath,_0x466b0a(0xcb));function whichOf(_0x300534){const _0x39dad3={_0x1588c0:0x1b6,_0x290a43:0x112},_0xe6e15e=_0x466b0a;if(process[_0xe6e15e(_0x39dad3._0x1588c0)]==='win32')return void 0x0;for(const _0x135bcc of _0x300534){try{const _0x210c59=execFileSync('which',[_0x135bcc],{'encoding':_0xe6e15e(_0x39dad3._0x290a43)})[_0xe6e15e(0x160)]();if(_0x210c59[_0xe6e15e(0xee)]>0x0&&existsSync(_0x210c59))return _0x210c59;}catch{}}return void 0x0;}__name(whichOf,_0x466b0a(0x174));function runEnvironmentChecks(_0x51859b={}){const _0x14a62d={_0x9dba90:0x187},_0x21ca29=_0x466b0a,_0x528ba9=_0x51859b[_0x21ca29(0x187)]??process[_0x21ca29(_0x14a62d._0x9dba90)]();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x528ba9)];}__name(runEnvironmentChecks,'runEnvironmentChecks');function checkNodeVersion(){const _0x53d4b6={_0xddac30:0x127,_0xd23554:0x114,_0x47d465:0x135},_0x564f97=_0x466b0a,_0x3066f5=process[_0x564f97(_0x53d4b6._0xddac30)][_0x564f97(0xe2)],_0x1fc8b3=Number(_0x3066f5['split']('.')[0x0]);if(!Number['isFinite'](_0x1fc8b3)||_0x1fc8b3<0x14)return{'name':'Node.js\x20version','severity':_0x564f97(0xbc),'message':_0x564f97(_0x53d4b6._0xd23554)+_0x3066f5+')','detail':_0x564f97(_0x53d4b6._0x47d465)};return{'name':_0x564f97(0xd0),'severity':'ok','message':_0x3066f5};}__name(checkNodeVersion,'checkNodeVersion');function checkSystemBrowser(){const _0x4d26f2={_0x33aaad:0x13a,_0x1f0f98:0x19c,_0x4563bd:0x19a,_0x2f4262:0xfa},_0x1ab3c9=_0x466b0a,_0x165c10=probeSystemBrowser();if(_0x165c10[_0x1ab3c9(_0x4d26f2._0x33aaad)]!==null)return{'name':_0x1ab3c9(_0x4d26f2._0x1f0f98),'severity':'ok','message':_0x165c10['label']+_0x1ab3c9(0xec),'detail':_0x165c10['path']};return{'name':_0x1ab3c9(0x19c),'severity':_0x1ab3c9(_0x4d26f2._0x4563bd),'message':_0x1ab3c9(0x159),'detail':_0x1ab3c9(_0x4d26f2._0x2f4262)};}__name(checkSystemBrowser,_0x466b0a(0x19b));function checkWritableCwd(_0x123248){const _0x59751e={_0x547cc2:0xf4,_0x1bca9b:0x191},_0x5b3cca=_0x466b0a;if(!_0x200546(_0x123248))return{'name':'Target\x20directory','severity':'error','message':_0x5b3cca(_0x59751e._0x547cc2)+_0x123248+_0x5b3cca(0x161),'detail':_0x5b3cca(_0x59751e._0x1bca9b)};return{'name':_0x5b3cca(0x1ad),'severity':'ok','message':_0x123248};}__name(checkWritableCwd,_0x466b0a(0xd9));var templates={'scenarioTemplate':'//\x20Move\x20+\x20rename\x20this\x20file\x20to\x20<feature>/<your_name>.js\x20(e.g.\x0a//\x20auth/login.js)\x20and\x20the\x20function\x20below\x20to\x20test_<your_name>().\x20Scenarios\x20live\x0a//\x20in\x20feature\x20subfolders,\x20NOT\x20the\x20e2e\x20root\x20—\x20the\x20linter\x20(lint:scenario-in-root)\x0a//\x20rejects\x20a\x20test\x20file\x20placed\x20directly\x20in\x20unotest/e2e/.\x20The\x20loader\x20derives\x20the\x0a//\x20entry\x20name\x20from\x20the\x20file\x20basename\x20—\x20kebab-case\x20dashes\x20become\x20underscores.\x0a\x0a//\x20Every\x20executable\x20step\x20must\x20sit\x20inside\x20a\x20step(\x22...\x22,\x20()\x20=>\x20{\x20…\x20})\x20block.\x20The\x0a//\x20title\x20is\x20a\x20plain-English\x20description\x20of\x20the\x20group;\x20the\x20steps\x20inside\x20are\x0a//\x20the\x20implementation.\x20Group\x20by\x20intent\x20(Setup\x20/\x20Enter\x20/\x20Act\x20/\x20Assert\x20or\x0a//\x20whatever\x20reads\x20well)\x20—\x20one\x20block\x20per\x20logical\x20chunk.\x0a\x0afunction\x20test_your_name_here()\x20{\x0a\x20\x20step(\x22Seed\x20a\x20known\x20user\x20via\x20DB\x20/\x20API\x20fixtures\x20from\x20_helpers/\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20//\x20\x20\x20\x20wipe_e2e_users();\x0a\x20\x20\x20\x20//\x20\x20\x20\x20user_id\x20=\x20seed_user(\x27alice@example.com\x27,\x20\x27secret\x27);\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Sign\x20in\x20as\x20the\x20seeded\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27https://your-app.test/login\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20\x27alice@example.com\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20fill(getByLabel(\x27Password\x27),\x20\x27secret\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20click(getByRole(\x27button\x27,\x20{name:\x20\x27Log\x20in\x27}));\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Assert\x20the\x20dashboard\x20shows\x20the\x20signed-in\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertUrl(\x27/dashboard\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertText(getByRole(\x27heading\x27),\x20\x27Welcome,\x20Alice\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20count\x20=\x20dbQuery(\x27SELECT\x20count(*)\x20FROM\x20users\x20WHERE\x20active\x20=\x20true\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertTrue(count\x20>\x200,\x20\x27expected\x20at\x20least\x20one\x20active\x20user\x27);\x0a\x20\x20});\x0a}\x0a','agentsMd':'#\x20@unotest/web\x20—\x20guide\x20for\x20AI\x20agents\x20(and\x20humans)\x0a\x0aThis\x20project\x20uses\x20[`@unotest/web`](https://www.npmjs.com/package/@unotest/web)\x0afor\x20end-to-end\x20testing\x20of\x20web\x20applications.\x0a\x0a##\x20Writing\x20a\x20test\x20—\x20use\x20the\x20skill\x20+\x20MCP\x0a\x0aFor\x20ANY\x20request\x20to\x20write,\x20record,\x20or\x20run\x20an\x20e2e\x20test:\x0a\x0a1.\x20Open\x20the\x20**`write-e2e-test`**\x20skill\x20—\x20`.claude/skills/write-e2e-test/SKILL.md`\x0a\x20\x20\x20(in\x20Claude\x20Code\x20you\x20can\x20also\x20run\x20`/write-e2e-test`)\x20—\x20and\x20follow\x20it.\x0a2.\x20Drive\x20the\x20browser\x20through\x20the\x20**`unotest-web`\x20MCP\x20tools**:\x20`new_context`\x20→\x0a\x20\x20\x20`explore_start`\x20→\x20`explore_step`\x20→\x20`get_page_snapshot`\x20→\x20`run_test`.\x0a\x0aDo\x20NOT\x20hand-author\x20tests\x20blind\x20or\x20map\x20the\x20project\x20with\x20`find`/`ls`/`awk`\x20—\x20the\x0askill\x27s\x20Phase\x200\x20names\x20the\x20exact\x20files\x20to\x20read.\x20Runnable,\x20copy-pasteable\x0aexamples\x20live\x20in\x20`unotest/e2e/examples/`.\x0a\x0a##\x20Layout\x0a\x0a-\x20`unotest/e2e/<feature>/<name>.js`\x20—\x20test\x20scenarios,\x20grouped\x20by\x20feature/page\x0a\x20\x20(one\x20`test_*`\x20function\x20per\x20file).\x20**Required:**\x20every\x20scenario\x20lives\x20in\x20a\x0a\x20\x20feature\x20subfolder.\x20A\x20test\x20file\x20placed\x20directly\x20in\x20`unotest/e2e/`\x20is\x20rejected\x0a\x20\x20by\x20the\x20linter\x20(`lint:scenario-in-root`).\x0a-\x20`unotest/e2e/_helpers/`\x20—\x20project-specific\x20helpers\x20(visible\x20to\x20all\x20scenarios)\x0a-\x20`unotest/e2e/_template.js`\x20—\x20starting-point\x20template\x20(copy\x20into\x20a\x20feature\x20folder)\x0a\x0a##\x20DSL\x20conventions\x0a\x0aThe\x20DSL\x20is\x20a\x20strict\x20JS\x20subset\x20parsed\x20by\x20@unotest/dsl.\x20Method\x20chains,\x20options-\x0aobjects,\x20and\x20variables\x20are\x20allowed.\x20Multi-line\x20strings\x20use\x0abackticks\x20but\x20`${...}`\x20interpolation\x20is\x20forbidden\x20(sandbox\x20boundary\x20—\x0apass\x20values\x20via\x20positional\x20args).\x0a\x0a**Every\x20step\x20must\x20sit\x20inside\x20a\x20`step(\x22description\x22,\x20()\x20=>\x20{\x20…\x20})`\x20block\x20(linter\x0aenforces).**\x20The\x20title\x20is\x20plain-English\x20intent;\x20the\x20steps\x20inside\x20are\x20the\x0aimplementation.\x20When\x20a\x20step\x20later\x20breaks\x20(selector\x20drift),\x20you\x20read\x20the\x0atitle\x20to\x20understand\x20what\x20the\x20group\x20was\x20trying\x20to\x20do\x20and\x20repair\x20it.\x20Group\x20by\x0aintent,\x20one\x20block\x20per\x20logical\x20chunk:\x0a\x0a```js\x0afunction\x20test_login()\x20{\x0a\x20\x20step(\x22Sign\x20in\x20as\x20the\x20demo\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27https://app.example.com/login\x27);\x0a\x20\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20\x27demo@example.com\x27);\x0a\x20\x20\x20\x20click(getByRole(\x27button\x27,\x20{name:\x20\x27Log\x20in\x27}));\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Dashboard\x20shows\x20the\x20signed-in\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20assertText(getByRole(\x27heading\x27),\x20\x27Welcome\x27);\x0a\x20\x20});\x0a}\x0a```\x0a\x0a**Base\x20URL\x20—\x20write\x20relative\x20paths.**\x20`APP_BASE_URL`\x20(in\x20`unotest/.env`)\x20is\x20the\x0aapp\x27s\x20base;\x20`goto(\x27/login\x27)`\x20resolves\x20against\x20it.\x20Don\x27t\x20concatenate\x0a(`goto(APP_BASE_URL\x20+\x20\x27/login\x27)`)\x20—\x20just\x20pass\x20the\x20path:\x0a\x0a```js\x0agoto(\x27/login\x27);\x0afill(getByLabel(\x27Password\x27),\x20TEST_USER_PASSWORD);\x0a```\x0a\x0a**Environments.**\x20Override\x20`APP_BASE_URL`\x20(and\x20any\x20var)\x20per\x20environment\x20with\x0aoverlay\x20files\x20—\x20`unotest/.env.staging`,\x20`unotest/.env.production`\x20(secrets:\x0a`unotest/.secrets.<env>`).\x20Select\x20one\x20at\x20run\x20time:\x20`npx\x20@unotest/web\x20e2e\x20<name>\x0a--env\x20staging`.\x20The\x20overlay\x20layers\x20over\x20the\x20base\x20`.env`\x20(overlay\x20wins).\x0a\x0a**External\x20variables\x20&\x20secrets:**\x20reference\x20logins\x20/\x20tokens\x20by\x20a\x20bare\x0a`UPPER_SNAKE`\x20name\x20—\x20resolved\x20from\x20`unotest/.env`\x20(normal)\x20or\x20`unotest/.secrets`\x0a(secret,\x20masked\x20in\x20logs).\x20No\x20`env()`/`secret()`\x20wrapper.\x20A\x20lowercase\x20name\x20is\x20an\x0ain-scenario\x20binding;\x20an\x20unknown\x20`UPPER_SNAKE`\x20fails\x20the\x20run\x20asking\x20you\x20to\x20add\x20it\x0ato\x20`unotest/.env`.\x0a\x0a**Selector\x20hierarchy\x20(D-22\x20—\x20linter\x20enforces):**\x0a1.\x20`getByTestId(id)`\x20—\x20most\x20stable\x0a2.\x20`getByRole(role,\x20{name})`\x20—\x20semantic,\x20a11y-aware\x0a3.\x20`getByLabel(text)`\x20—\x20for\x20form\x20fields\x0a4.\x20`getByText(text)`\x20—\x20for\x20unique\x20text\x0a5.\x20`locator(css)`\x20—\x20last\x20resort\x20(linter\x20warns)\x0a\x0aFull\x20reference\x20shipped\x20with\x20the\x20package:\x0a-\x20`node_modules/@unotest/web/guides/dsl-reference.md`\x20—\x20DSL\x20functions\x20+\x20linter\x20codes\x0a\x0a##\x20Running\x20(CLI)\x0a\x0a-\x20`npx\x20@unotest/web\x20e2e\x20<feature>/<name>`\x20—\x20run\x20a\x20scenario\x20by\x20name\x0a-\x20`npx\x20@unotest/web\x20lint`\x20—\x20static\x20check\x20of\x20all\x20scenarios\x20+\x20helpers\x0a-\x20`npx\x20@unotest/web\x20mcp`\x20—\x20start\x20the\x20MCP\x20server\x20for\x20agent\x20control\x0a\x0a##\x20Via\x20MCP\x20(Claude\x20Code\x20/\x20Claude\x20Desktop\x20/\x20Cursor)\x0a\x0aThe\x20MCP\x20server\x20exposes:\x0a-\x20`run_test\x20name=\x22<name>\x22\x20mode=\x22step\x22\x20pauseOnFailure=true`\x20—\x20run\x20with\x20step-mode\x0a-\x20`step`\x20/\x20`resume`\x20—\x20advance\x20one\x20AST\x20node\x20/\x20run\x20until\x20next\x20pause\x0a-\x20`inspect_runtime`\x20—\x20current\x20state,\x20last\x20error,\x20locals\x20dump\x0a-\x20`abort_runtime`\x20—\x20kill\x20a\x20paused\x20runtime\x0a\x0aFor\x20agent-fix\x20workflows\x20on\x20flaky\x20tests:\x20`agent_fix\x20testId=\x22<id>\x22`\x20returns\x20a\x0astructured\x20context\x20bundle\x20(see\x20D-25\x20—\x20we\x20never\x20call\x20LLMs\x20or\x20auto-apply\x0adiffs,\x20the\x20diff\x20comes\x20from\x20your\x20MCP-host\x20agent).\x0a','claudeMdBody':_0x466b0a(0xe9),'examples':{'01-smoke.js':_0x466b0a(0x17a),'02-form-fill.js':_0x466b0a(0x17b)},'secretsExample':'#\x20unotest-web\x20—\x20secret\x20scenario\x20variables.\x20Created\x20by\x20`init`,\x20gitignored.\x0a#\x0a#\x20Same\x20KEY=VALUE\x20format\x20as\x20unotest/.env,\x20but\x20values\x20here\x20are\x20treated\x20as\x0a#\x20SECRET:\x20they\x20are\x20masked\x20(shown\x20as\x20`‹secret:KEY›`)\x20anywhere\x20the\x20runner\x20or\x0a#\x20MCP\x20debug\x20log\x20would\x20otherwise\x20write\x20them\x20—\x20fill()\x20values,\x20URLs,\x20evaluate\x0a#\x20strings.\x20Reference\x20them\x20in\x20a\x20scenario\x20by\x20their\x20bare\x20UPPER_SNAKE\x20name,\x20the\x0a#\x20same\x20way\x20as\x20.env\x20variables:\x0a#\x0a#\x20\x20\x20fill(getByLabel(\x27Password\x27),\x20PASSWORD);\x0a#\x0a#\x20Secrets\x20are\x20NOT\x20exported\x20to\x20subprocesses\x20(shell())\x20—\x20they\x20stay\x20in\x20the\x0a#\x20variable\x20store.\x20A\x20subprocess\x20that\x20genuinely\x20needs\x20one\x20(a\x20listener\x20with\x20a\x0a#\x20token)\x20gets\x20it\x20via\x20the\x20explicit\x20allowlist\x20in\x20unotest.config.*:\x0a#\x20\x20\x20sandbox:\x20{\x20exportSecrets:\x20[\x27TOKEN\x27]\x20}\x0a#\x20Put\x20non-secret\x20values\x20(URLs,\x20emails,\x20ids)\x20in\x20unotest/.env.\x0a#\x0a#\x20FLEET_EXAMPLE\x0aLOGIN=\x0aPASSWORD=\x0aTOKEN=\x0a','envExample':'#\x20unotest-web\x20—\x20copied\x20to\x20unotest/.env\x20by\x20`init`\x20if\x20not\x20present.\x0a#\x0a#\x20Fill\x20in\x20values\x20that\x20apply\x20to\x20your\x20project.\x20Variables\x20are\x20loaded\x20by\x20the\x0a#\x20runner\x20at\x20scenario\x20start.\x0a#\x0a#\x20Reference\x20any\x20variable\x20from\x20a\x20scenario\x20by\x20its\x20bare\x20UPPER_SNAKE\x20name\x20—\x0a#\x20no\x20env()/secret()\x20wrapper:\x0a#\x0a#\x20\x20\x20goto(\x27/login\x27);\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20relative\x20—\x20see\x20APP_BASE_URL\x0a#\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20TEST_USER_EMAIL);\x0a#\x0a#\x20Secret\x20values\x20(passwords,\x20tokens)\x20go\x20in\x20unotest/.secrets\x20instead\x20—\x20same\x0a#\x20format,\x20but\x20masked\x20in\x20every\x20log.\x20An\x20unknown\x20UPPER_SNAKE\x20name\x20fails\x20the\x0a#\x20run\x20with\x20a\x20clear\x20\x22add\x20it\x20to\x20unotest/.env\x22\x20message.\x0a#\x0a#\x20Environments:\x20override\x20any\x20value\x20per\x20environment\x20with\x20overlay\x20files\x20—\x0a#\x20unotest/.env.staging,\x20unotest/.env.production\x20(secrets:\x20.secrets.<env>).\x0a#\x20Select\x20one:\x20`npx\x20@unotest/web\x20e2e\x20<name>\x20--env\x20staging`.\x20The\x20overlay\x20layers\x0a#\x20over\x20this\x20base\x20file\x20(overlay\x20wins);\x20the\x20shell\x20environment\x20wins\x20over\x20both.\x0a\x0a#\x20---\x20App\x20under\x20test\x20--------------------------------------------------------\x0a#\x20The\x20app\x27s\x20base\x20URL.\x20Relative\x20goto(\x27/path\x27)\x20resolves\x20against\x20it\x20(wired\x20into\x0a#\x20Playwright\x27s\x20baseURL\x20automatically),\x20so\x20write\x20goto(\x27/login\x27)\x20—\x20never\x0a#\x20goto(APP_BASE_URL\x20+\x20\x27/login\x27).\x20Also\x20used\x20for\x20assertUrl\x20substring\x20matching.\x0a#\x20Defaults\x20to\x20the\x20unotest\x20playground\x20so\x20the\x20example\x20scenarios\x20run\x20out\x20of\x20the\x0a#\x20box;\x20point\x20it\x20at\x20your\x20own\x20app.\x0aAPP_BASE_URL=https://playground.unotest.com\x0a\x0a#\x20---\x20Database\x20--------------------------------------------------------------\x0a#\x20Used\x20by\x20dbQuery\x20/\x20dbExec.\x20Install\x20the\x20matching\x20driver\x20as\x20a\x20peer-dep:\x0a#\x20\x20\x20pnpm\x20add\x20-D\x20pg\x20@types/pg\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20for\x20postgresql://\x0a#\x20\x20\x20pnpm\x20add\x20-D\x20mysql2\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20for\x20mysql://\x0a#\x20(SQLite\x20via\x20better-sqlite3\x20—\x20install\x20only\x20if\x20needed.)\x0aDATABASE_URL=postgresql://postgres:postgres@localhost:5432/myapp_test\x0a\x0a#\x20---\x20Extra\x20API\x20hosts\x20-------------------------------------------------------\x0a#\x20apiCall(...)\x20goes\x20against\x20sandbox.apiBaseUrl\x20from\x20unotest.config.*\x20by\x0a#\x20default.\x20A\x20setup\x20that\x20talks\x20to\x20MORE\x20hosts\x20names\x20them\x20here\x20and\x20picks\x20one\x0a#\x20per\x20call\x20by\x20the\x20variable\x20NAME\x20(URLs\x20never\x20appear\x20in\x20scenarios):\x0a#\x20\x20\x20apiCall(\x27POST\x27,\x20\x27/things\x27,\x20body,\x20headers,\x20{base:\x20\x27API_BASE_CHAT\x27})\x0a#\x20API_BASE_CHAT=https://chatbackend.example.com\x0a\x0a#\x20---\x20Runner\x20--------------------------------------------------------------\x0a#\x20Show\x20the\x20browser\x20window\x20during\x20runs\x20(default:\x20headless).\x0a#\x20UNOTEST_HEADED=1\x0a#\x20Slow\x20each\x20Playwright\x20op\x20by\x20N\x20ms\x20(default:\x200).\x20Pairs\x20with\x20HEADED\x20for\x0a#\x20watching\x20the\x20agent\x20at\x20work.\x0a#\x20UNOTEST_SLOW_MO=100\x0a#\x20Browser\x20used\x20by\x20the\x20CLI\x20(chromium\x20|\x20firefox\x20|\x20webkit).\x20Default:\x20chromium.\x0a#\x20UNOTEST_BROWSER=chromium\x0a#\x20Default\x20action\x20timeout\x20in\x20milliseconds\x20—\x20applied\x20to\x20every\x20click\x20/\x0a#\x20fill\x20/\x20waitFor\x20/\x20etc.\x20via\x20Playwright\x27s\x20setDefaultTimeout.\x20Default\x203000.\x0a#\x20Bump\x20if\x20your\x20app\x20is\x20slow;\x20per-action\x20override\x20via\x20the\x20action\x27s\x0a#\x20options.timeout.\x20Playwright\x27s\x20stock\x2030000\x20strands\x20interactive\x20agents.\x0a#\x20UNOTEST_DEFAULT_TIMEOUT_MS=3000\x0a#\x20Default\x20navigation\x20timeout\x20in\x20milliseconds\x20—\x20applied\x20to\x20goto\x20/\x20reload\x20/\x0a#\x20waitForUrl,\x20click\x27s\x20post-action\x20navigation\x20wait,\x20AND\x20setPage\x27s\x20wait\x20for\x20a\x0a#\x20newly\x20opened\x20tab\x20to\x20appear\x20+\x20load.\x20Real-world\x20pages\x20routinely\x20take\x205–15s\x0a#\x20to\x20fire\x20\x27load\x27;\x20keep\x20this\x20separate\x20from\x20the\x20action\x20timeout\x20above.\x0aUNOTEST_DEFAULT_NAVIGATION_TIMEOUT_MS=15000\x0a\x0a#\x20Per-run\x20wall-clock\x20budget\x20in\x20milliseconds\x20—\x20a\x20run\x20aborts\x20once\x20it\x20exceeds\x0a#\x20this.\x20Guards\x20against\x20a\x20stuck\x20scenario\x20hanging\x20the\x20agent\x20indefinitely.\x0a#\x20Invalid\x20or\x20non-positive\x20values\x20fall\x20back\x20to\x20the\x20default.\x20Default\x20300000.\x0a#\x20UNOTEST_MAX_DURATION_MS=300000\x0a\x0a#\x20---\x20Locale\x20+\x20timezone\x20---------------------------------------------------\x0a#\x20Pin\x20the\x20browser\x20context\x27s\x20Accept-Language\x20/\x20navigator.language.\x20Without\x0a#\x20these,\x20tests\x20inherit\x20the\x20OS\x20locale\x20—\x20accessible-name\x20selectors\x0a#\x20(`getByRole(name)`)\x20on\x20i18n\x27d\x20apps\x20will\x20break\x20across\x20machines.\x0a#\x20UNOTEST_LOCALE=en-US\x0a#\x20UNOTEST_TIMEZONE=UTC\x0a\x0a#\x20---\x20Recording\x20(explore_*)\x20----------------------------------------------\x0a#\x20Grace\x20window\x20in\x20ms\x20after\x20each\x20explore_step\x20action.\x20If\x20a\x20click\x20opens\x20a\x0a#\x20new\x20tab/popup,\x20the\x20MCP\x20server\x20auto-switches\x20the\x20active\x20page\x20to\x20it\x20AND\x0a#\x20inserts\x20setPage(N)\x20into\x20the\x20generated\x20DSL\x20trace.\x20Set\x20to\x200\x20to\x20disable\x0a#\x20(strict\x20mode).\x20Has\x20NO\x20effect\x20on\x20run_test\x20—\x20there\x20setPage\x20already\x20waits\x0a#\x20for\x20the\x20tab\x20to\x20appear\x20on\x20its\x20own.\x20Range:\x20[0,\x2010000].\x20Default:\x202000.\x0a#\x20UNOTEST_POPUP_GRACE_MS=2000\x0a\x0a#\x20---\x20Logging\x20-------------------------------------------------------------\x0a#\x20debug\x20|\x20info\x20|\x20warn\x20|\x20error.\x20Default:\x20info.\x0aUNOTEST_LOG_LEVEL=info\x0a\x0a#\x20---\x20Debug\x20diagnostics\x20---------------------------------------------------\x0a#\x20Off\x20by\x20default.\x20Set\x20to\x201\x20to\x20record\x20a\x20structured\x20JSONL\x20log\x20+\x20per-call\x0a#\x20folders\x20under\x20unotest/.debug/\x20—\x20then\x20restart\x20the\x20MCP\x20server.\x20Each\x20tool\x0a#\x20call\x20gets\x20a\x20folder\x20with\x20the\x20full\x20snapshot\x20JSON,\x20the\x20outerHTML\x20of\x20the\x0a#\x20element\x20a\x20locator\x20resolved\x20to,\x20and\x20(on\x20failure)\x20page.html\x20+\x20a\x20screenshot,\x0a#\x20so\x20you\x20(and\x20the\x20AI\x20agent,\x20via\x20get_last_mcp_log)\x20can\x20verify\x20the\x20snapshot\x0a#\x20didn\x27t\x20glitch\x20and\x20the\x20locator\x20hit\x20the\x20right\x20element\x20—\x20instead\x20of\x20guessing\x0a#\x20from\x20a\x20truncated\x20error.\x20audit_last_run\x20then\x20checks\x20the\x20run\x20against\x20the\x0a#\x20testing\x20rules.\x20Also\x20turns\x20on\x20full\x20CLI\x20stack\x20traces.\x20Use\x20\x27summary\x27\x20for\x20a\x0a#\x20lighter\x20log\x20(tool\x20+\x20snapshot\x20layers\x20only,\x20no\x20artifacts).\x20NOTE:\x20tool\x0a#\x20arguments\x20are\x20logged\x20verbatim,\x20so\x20a\x20fill()\x20with\x20a\x20password\x20lands\x20in\x20the\x0a#\x20local\x20(gitignored)\x20log\x20—\x20keep\x20this\x20off\x20unless\x20you\x27re\x20debugging.\x0a#\x20UNOTEST_DEBUG=1\x0a\x0a#\x20---\x20Capture\x20(viewer\x20inspector)\x20------------------------------------------\x0a#\x20Record\x20the\x20browser\x20console\x20+\x20network\x20requests\x20into\x20each\x20run\x27s\x20dir\x20so\x20the\x0a#\x20viewer\x27s\x20Console\x20/\x20Network\x20inspector\x20tabs\x20are\x20populated.\x20Set\x20to\x200\x20to\x20disable.\x0aUNOTEST_NETWORK=1\x0aUNOTEST_CONSOLE=1\x0a#\x20Set\x20to\x201\x20to\x20also\x20capture\x20a\x20screenshot\x20after\x20EVERY\x20executed\x20step\x20(into\x0a#\x20unotest/.runs/<runId>/screenshot/;\x20click\x20a\x20step\x20row\x20in\x20the\x20viewer\x20to\x20see\x0a#\x20it).\x20On\x20failure,\x20a\x20screenshot\x20+\x20page.html\x20always\x20land\x20in\x0a#\x20unotest/.runs/<runId>/failure/\x20—\x20no\x20flag\x20needed.\x0a#\x20UNOTEST_STEP_SCREENSHOTS=1\x0a'};function unotestConfigMjs(_0xcc1288){const _0x10c6a6={_0x3320d5:0x11a,_0x44af4b:0x156},_0x5672e4=_0x466b0a,_0x2d27cc=_0xcc1288===void 0x0?'\x20\x20//\x20channel:\x20\x27chrome\x27,\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20\x27chrome\x27\x20/\x20\x27msedge\x27\x20/\x20null\x20(bundled)':_0x5672e4(_0x10c6a6._0x3320d5)+JSON['stringify'](_0xcc1288)+',';return'//\x20@unotest/web\x20project\x20config.\x20All\x20fields\x20are\x20optional\x20—\x20defaults\x20apply\x0a//\x20when\x20omitted.\x0a//\x0a//\x20Saved\x20as\x20.mjs\x20so\x20the\x20runtime\x20loads\x20it\x20as\x20ESM\x20regardless\x20of\x20the\x20project\x27s\x0a//\x20package.json\x20\x22type\x22\x20field.\x20For\x20IDE\x20autocomplete,\x20type-import\x20the\x20schema:\x0a//\x0a//\x20\x20\x20/**\x20@type\x20{Partial<import(\x27@unotest/web\x27).UnotestConfig>}\x20*/\x0a//\x20\x20\x20export\x20default\x20{\x20baseUrl:\x20\x27https://your-app.test\x27\x20};\x0a\x0a/**\x20@type\x20{Partial<import(\x27@unotest/web\x27).UnotestConfig>}\x20*/\x0aexport\x20default\x20{\x0a\x20\x20//\x20baseUrl:\x20\x27https://your-app.test\x27,\x0a\x20\x20//\x20browsers:\x20[\x27chromium\x27,\x20\x27firefox\x27,\x20\x27webkit\x27],\x20\x20//\x20CI\x20override\x0a\x20\x20//\x20viewport:\x20{\x20width:\x201280,\x20height:\x20720\x20},\x0a\x20\x20//\x20retry:\x20{\x20count:\x201,\x20on:\x20[\x27transient\x27]\x20},\x20\x20\x20\x20\x20\x20\x20\x20//\x20CI\x20override\x0a\x20\x20//\x20storageState:\x20\x27.unotest/cache/auth.json\x27,\x20\x20\x20\x20\x20\x20//\x20see\x20helpers\x0a'+_0x2d27cc+_0x5672e4(_0x10c6a6._0x44af4b);}__name(unotestConfigMjs,_0x466b0a(0x16e));function promptYesNo(_0x104f3f,_0x51e4ea){const _0x3d8d02={_0x3ec3d0:0x10f},_0x555442={_0x38a7fd:0xc9,_0x140866:0x168,_0x22e2bf:0x108,_0x2b7bd1:0x168,_0x187f90:0xbe},_0x3a8a03=_0x466b0a,_0x1901c2=_0x51e4ea?_0x3a8a03(0x1b5):_0x3a8a03(_0x3d8d02._0x3ec3d0);return new Promise(_0x325edf=>{const _0x116c59={_0x25c7bc:0x14e,_0x42b28b:0x184,_0x2f5600:0x160,_0x22803b:0x18f},_0x24edc4={_0x359d77:0x168,_0x4ec97b:0x147,_0x411313:0x108,_0xc075f1:0x168},_0xe4d9d8=_0x3a8a03;let _0x21a57e=![];const _0x5076c3=__name(_0x355048=>{const _0x70aea2=_0x2072;if(_0x21a57e)return;_0x21a57e=!![],process[_0x70aea2(_0x24edc4._0x359d77)][_0x70aea2(_0x24edc4._0x4ec97b)](_0x70aea2(_0x24edc4._0x411313),_0x1c8228),process[_0x70aea2(_0x24edc4._0xc075f1)][_0x70aea2(0x147)](_0x70aea2(0x12e),_0x44c6e9),process['stdin']['pause'](),process[_0x70aea2(0x168)][_0x70aea2(0x12c)](),_0x325edf(_0x355048);},_0xe4d9d8(_0x555442._0x38a7fd)),_0x1c8228=__name(_0x120b0d=>{const _0x497631=_0xe4d9d8,_0x42dc15=typeof _0x120b0d==='string'?_0x120b0d:_0x120b0d[_0x497631(_0x116c59._0x25c7bc)](_0x497631(0x112)),_0x2fcb57=_0x42dc15[_0x497631(0x18b)]('\x0a');if(_0x2fcb57<0x0)return;const _0x5b0a6a=_0x42dc15[_0x497631(_0x116c59._0x42b28b)](0x0,_0x2fcb57)[_0x497631(_0x116c59._0x2f5600)]()[_0x497631(_0x116c59._0x22803b)]();if(_0x5b0a6a==='')return _0x5076c3(_0x51e4ea);_0x5076c3(_0x5b0a6a==='y'||_0x5b0a6a===_0x497631(0x1a4));},_0xe4d9d8(0x13e)),_0x44c6e9=__name(()=>_0x5076c3(_0x51e4ea),'onEnd');process[_0xe4d9d8(0x198)]['write'](_0x104f3f+_0x1901c2),process[_0xe4d9d8(_0x555442._0x140866)]['on'](_0xe4d9d8(_0x555442._0x22e2bf),_0x1c8228),process[_0xe4d9d8(_0x555442._0x2b7bd1)]['on'](_0xe4d9d8(0x12e),_0x44c6e9),process[_0xe4d9d8(_0x555442._0x140866)][_0xe4d9d8(_0x555442._0x187f90)]();});}__name(promptYesNo,_0x466b0a(0xe3));function _0x393b(){const _0x4cc143=['C3rHCNrZv2L0Aa','zM9Yy2u','B2jQzwn0','B3zLCNDYB3rLihvUB3rLC3qTD2vIigvUDhj5','tM9Kzs5QCYb2zxjZAw9U','iokaLcb1C2LUzYbJAgfUBMvSicC','qhvUB3rLC3qVD2vIqa','cKzPBgvZoGO','yxbWzw5Kzwq','y2HYB21PDw0TyNjVD3nLCG','ihnVDxjJzsbTAxnZAw5NiokaLcbWywnRywDLigLUC3rHBgWGyNvNpW','BwnWx191BM90zxn0lxDLyG','DxbKyxrLza','y2HLy2TxCML0ywjSzun3za','D2LUmZi','Dw5VDgvZDc9LmMuVzxHHBxbSzxm','icdINjmGDw5VDgvZDc5JB25MAwCUBwPZia','icdINjmG','DgHLBG','C2TPBgWGkgDYB3vUzcK','ywXSB3C','AxnbCNjHEq','BM9Kzq','ChjVBxb0wwvZtM8','4PYxigLUC3rHBgWTy2HYB21PDw06ia','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','zgfYD2LU','C3rYAw5N','B3zLCNDYB3rL','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','uhjLvg9VBfvZzq','igzVDw5K','C3rYAw5NAwz5','BgvUz3rO','sw5ZDhj1y3rPB25Ztg9HzgvK','BM8Gy2HHBM5LBcbZzxqGkgj1BMrSzwqGzMfSBgjHy2SGywz0zxiGAw5ZDgfSBc1JAhjVBwL1BsK','zw52rxHHBxbSzq','BwLJCM9ZB2z0lwvKz2u','4PYxic0TyNjVD3nLCIbZExn0zw0GyNv0ig5VienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbMB3vUzcbVBIb0AgLZig1Hy2HPBMuU','DgfYz2v0ia','ywDLBNrZtwq','y3jLyxrLzcaUy2XHDwrLl3nLDhrPBMDZlMPZB24GkgfSBg93oIbTy3bFx3vUB3rLC3qTD2vIkq','BMv3q29UDgvUDa','y2HHBM5LBdOGjW','Dw5VDgvZDc13zwiGAw5PDcdIHPiG','Aw5PDcb3AwXSig9MzMvYihrVigrVD25SB2fKigj1BMrSzwqGq2HYB21PDw0Gkh4XntaGtuiPlIbbBhrLCM5HDgL2zwX5lcbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4U','Dw5VDgvZDc9LmMuVx2HLBhbLCNmVlMDPDgTLzxa','Dw5VDgvZDc13zwi','C2TPChbLza','y3jLyxrLza','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','igzVDw5Kigf0ia','u3vIywDLBNrtDg9W','mtbvAxPtrxK','ndC0ntrTvxzMAuC','CgXHExDYAwDODc9WywnRywDLlMPZB24GAgfZig5VihvZywjSzsaIyMLUiIbMAwvSza','y2f0y2G','ChvZAa','ndqZnxfQwKXkta','zgf0yq','C3LZDgvT','y29WEvbHy2THz2vgAwXL','ChjVyMvtExn0zw1cCM93C2vY','pceTlsb1BM90zxn0oMjLz2LUicHTyw5Hz2vKigj5ieb1BM90zxn0l3DLyIbPBML0iokaLcbKBYbUB3qGzwrPDcbPBNnPzguPic0TpG','BwvZC2fNzq','BwvYz2vny3bdB25MAwC','ifT5l05Dia','C3rKB3v0v3jPDgu','lMnSyxvKzs9ZA2LSBhmVD3jPDguTztjLlxrLC3qVu0TjteWUBwq','DxrMoa','twnWsNnVBLbHCNnLrxjYB3i','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','BMfTzq','r29Vz2XLienOCM9Tzq','CNvUsw5ZDgfSBenOCM9TAxvTq2XP','CgLWzq','4PQGie5VigjYB3DZzxiGy29UzMLNDxjLzc4GuNvUig9UzsbVzIbIzwzVCMuGzMLYC3qGDgvZDdO','icbJAgfUBMvSoIa','Aw5OzxjPDa','twLJCM9ZB2z0ievKz2u','yxjNDG','lMDPDgLNBM9Yzq','ywXYzwfKEs1WCMvZzw50','Dw5VDgvZDc8UC2vJCMv0CYO','Dw5VDgvZDc8UzgvIDwCQlW','CgfYC2u','zw5ZDxjLrgLY','Aw5JBhvKzxm','y2HVB3nLqNjVD3nLCG','DMvYC2LVBG','DMvYC2LVBNm','icdcTYbUBYbJAgfUz2vZig5LzwrLzaO','Dw5VDgvZDc8UDMLLD2vYlMXVzW','D2fYBMLUz3m','zxHPDa','Dw5Yzwy','C2v2zxjPDhK','zw5K','4PYtihvWzgf0zwq','z29Vz2XLlwnOCM9Tzq','zxHHBxbSzxm','u2vZC2LVBLn0yxj0','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','cKrVBMuUie5LEhqGC3rLChm6cG','sw5ZDgfSBcboB2rLidiWkYb2AweGBNzTic8GzM5Tic8GDM9SDgeGyw5KihjLlxj1BI4','zxHPDenVzgu','ywXSB3CGywXYzwfKEsbWCMvZzw50','ChjVyMu','CNvUsw5PDa','y2HHBM5LBa','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','BxnLzgDL','cIaGtM8GC3LZDgvTienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbKzxrLy3rLzc4k','B25eyxrH','yMLU','ls1ICM93C2vYigv4CgvJDhmGC3LZDgvTFgj1BMrSzwr8BM9UzsWGz290ia','ixvUB3rLC3qVlMvUDI5LEgfTCgXL','Dw5VDgvZDc9LmMuVx3rLBxbSyxrLlMPZ','lIbgAxGGB3iGCMvTB3zLihrOzsbMAwXLigfUzcbYzs1YDw4GAw5PDc4','lMnSyxvKzs9Zzxr0Aw5NCY5QC29U','ndyWodmXExj4y1D3','icbVCIbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LlG','CMvTB3zLtgLZDgvUzxi','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','Ag9VA3m','Aw5ZDgfSBenOCM9TAxvT','BM9Uzq','mZCXnJi4mgzuBuH5vW','cI5NAxrPz25VCMu6cG','Dg9tDhjPBMC','Bg9NlwfNzw50lNnO','icdINjmGC3LZDgvTia','cKzPEcb0AguGzxjYB3jZigfIB3zLigfUzcbYzs1YDw4UcG','lI4VlI4V','icdIGkiGuNvUigfUigv4yw1WBguGywDHAw5ZDcb0AguGCgXHEwDYB3vUzdOkicaGicaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdeTC21VA2ukicdIGkiGtgLUDcb5B3vYihnJzw5HCMLVCZOkicaGicaGBNb4ieb1BM90zxn0l3DLyIbSAw50cIaG4OcIifDYAxrLigeGDgvZDdOGB3bLBIbdBgf1zguGq29KzsbOzxjLigfUzcbHC2SG4OcuigL0igzVBgXVD3mGDgHLcIaGicaGihDYAxrLlwuYzs10zxn0ihnRAwXSigfUzcbKCML2zxmGDgHLihvUB3rLC3qTD2vIie1ducbZzxj2zxiUcIaGicaGicGUBwnWlMPZB24GkYbdtefvreuUBwqVquDftLrtlM1KihDLCMuGANvZDcb3AxjLzcbMB3iGEw91lIKkicdIGkiGqwXYzwfKEsbPBNnPzguGyw4GywDLBNqGC2vZC2LVBJ8GuMvZDgfYDcbPDcaOB3iGCMvJB25Uzwn0ihzPyqOGicaGicaVBwnWksdIGjqGtunqignSAwvUDhmGBg9HzcaUBwnWlMPZB24GC2vYDMvYCYbHDcbZzxnZAw9Uihn0yxj0laOGicaGicbZBYb0AguGDw5VDgvZDc13zwiGDg9VBhmGyxbWzwfYig9UBhKGAw4GysbMCMvZAcbZzxnZAw9UlGOGiokaOIbezwj1zYb0AguGywDLBNq6igXHDw5JAcb3AxrOifvot1rfu1rFrevcvuC9msb0BYb0CMfJzsbLDMvYEqOGicaGicbHy3rPB24GDg8GDw5VDgvZDc8UzgvIDwCVywDLBNqVywn0Aw9UCY5QC29UBc4k','Dw5VDgvZDc8UCNvUCYOV','BwnW','cIaGlY8GDMLLD2vYoIb7cIaGlY8GicbWB3j0oIa1mtCZlcaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGic8VigrLzMf1Bhq6ihjHBMrVBsbMCMvLihbVCNqkicaVlYaGigjYB3DZzxi6ihrYDwuSicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGDhj1zsaOyxv0BY1VCgvUig9Uigb2Awv3zxjGkqOGic8Vih0ScN07cG','Dw5VDgvZDc9LmMuVzxHHBxbSzxmV','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','BM8Gq2HYB21Lic8GrwrNzsaVienOCM9TAxvTigrLDgvJDgvK','C29Tzq','q2XHDwrLu2v0DgLUz3nqyxjZzuvYCM9Y','te9dquXbufbeqvrb','q0XbvurflM1K','Dw5VDgvZDc8UDMLLD2vYlMXVy2S','WRCGC2TPChbLza','DhjPBq','igrVzxmGBM90igv4Axn0','y2HYB21PDw0','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1ZDgfIBgu','u3vIywDLBNrtDgfYDa','rMfPBgvKihrVihbHCNnLic5JBgf1zguVC2v0DgLUz3mUANnVBIbHCYbku09ooIa','uhjVz3jHBuzPBgvZ','ls1MB3jJzq','C3rKAw4','igf0ia','ywrKzwq','yNvUzgXLza','Dw5VDgvZDc8Uzw52','y3jLyxrLzcaUBwnWlMPZB24','Dw5VDgvZDenVBMzPz01QCW','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','Aw5PDdOG','zw52','icbeB3DUBg9HzcbIDw5KBgvKienOCM9TAxvTicH+mtuWie1ckt8','D2HPy2HpzG','lI4VlI4VCgfJA2fNzs5QC29U','C2TPBgW','y29TBwfUza','uhjVz3jHBuzPBgvZkhG4nIK','icdIHPiGzg93BMXVywrPBMCGyNvUzgXLzcbdAhjVBwL1BsaOFJe1mcbnqINIGkyk','lY8GrxHHBxbSzsaWmsdIGjqGC21VA2u6ig5HDMLNyxrLicSGy2XPy2SGkYbvuKWGyxnZzxj0Aw9UlGOVlWOVlYbuAguGBwLUAw1HBcb0AhjLzs1ZDgvWihbHDhrLCM4UieHPDhmGCgXHEwDYB3vUzc51BM90zxn0lMnVBsbZBYbUBYbWCM9Qzwn0cI8VihnLDhvWigLZig5LzwrLzc4GuNvUihDPDgG6icbUChGGqhvUB3rLC3qVD2vIiguYzsbLEgfTCgXLCY8Wms1ZBw9RzqOkzNvUy3rPB24GDgvZDf9ZBw9Rzv9WBgf5z3jVDw5KkcKGEWOGihn0zxaOiK9Wzw4GDgHLiejPzYbuywjSzsbZy2vUyxjPBYbMCM9TihrOzsbWBgf5z3jVDw5KigLUzgv4iIWGkcKGpt4GEWOGicaGz290BYGNlYCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDSAw5RjYWGE25HBwu6icDcAwCGvgfIBguNlcbLEgfJDdOGDhj1zx0PktSkicaGigfZC2vYDfvYBcGNl3nJzw5HCMLVCY9IAwCTDgfIBguNktSkicb9ktSkFqO','lY8GrxHHBxbSzsaWmIdIGjqGzMLSBcbHBIbPBNb1DcaRigfZC2vYDcb0AguGyxbWihjLywn0zwqUcI8VcI8ViefNywLUC3qGCgXHEwDYB3vUzc51BM90zxn0lMnVBs9Zy2vUyxjPB3mVyMLNlxrHyMXLlIbezw1VBNn0CMf0zxmGz2v0qNLsB2XLcI8VigzVCIbHigXHyMvSBgvKigLUChv0lcb0ExbLzcbPBNb1Dcb2AweGzMLSBcGPlcbHBMqGysbSB2nHDg9Yig1LDgHVzc1JAgfPBGOVlYaOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhr9ks5MAxjZDcGPksbPBIbHBIbHC3nLCNrPB24UcI8Vifj1BIb3AxrOoIaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdiTzM9YBs1MAwXScGPMDw5JDgLVBIb0zxn0x2zVCM1FzMLSBf9OyxbWEv9WyxrOkcKGEWOGihn0zxaOiKzPBhrLCIb0AguGqMLNifrHyMXLigj5igeGBMfTzsiSicGPid0+ihSkicaGigDVDg8OjY9Zy2vUyxjPB3mVyMLNlxrHyMXLjYK7cIaGicbMAwXSkgDLDej5uM9SzsGNDgv4DgjVEcCSihTUyw1LoIaNrMLSDgvYigj5ig5HBwuNFsKSicDvBweGuxvPBM4NktSkicb9ktSkcIaGC3rLCcGIrMLSDgvYAw5NihjLDMvHBhmGDgHLienSzwfYigzPBhrLCIbJB250CM9SigfUzcbTyxrJAgLUzYbYB3DZiIWGkcKGpt4GEWOGicaGyxnZzxj0vMLZAwjSzsHNzxrcEvjVBguOj2j1DhrVBICSihTUyw1LoIaNq2XLyxiGzMLSDgvYj30PktSkicaGigfZC2vYDfzPC2LIBguOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhq6icDvBweGuxvPBM4NFsKUzMLYC3qOksK7cIaGFsK7cN0k','y2XHDwrLtwrcB2r5','yNjVD3nLCK92zxjYAwrL','BgfIzwW','ywXYzwfKEvbYzxnLBNq','Aw5ZDgfSBa','zgv0ywLS','r29Vz2XLienOCM9TzsbczxrH','icbjBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4GAw5PDc4','C2XPy2u','zxHLy1bHDgG','zw5KC1DPDgG','y3DK','D3jPDgvjzK5LzwrLza','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','odDLDeHHDfC','Aw5KzxHpzG','Dw5VDgvZDc5JB25MAwCUBwPZ','4PYtignYzwf0zwq','BwvYz2vdBgf1zgvbBgXVD0vUDhjPzxm','Dg9mB3DLCKnHC2u','otGZota3owDVrhDqCa','q3jLyxrLihrOzsbKAxjLy3rVCNKGB3iGCNvUigLUAxqGAw4Gyw4GzxHPC3rPBMCGChjVAMvJDcbYB290lG','lMnSyxvKzs9ZA2LSBhmVD3jPDguTztjLlxrLC3qTz3jVDw5Kl1nlsuXmlM1K','nta5mtC1AuXes2Xk','igHHCYbUBYb1C2fIBguGiNzLCNnPB24IigzPzwXK','mtyWnZG4mgTtq1HJCa','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','CMvZB2X2zq','C3rKB3v0','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','D2fYBMLUzW','y2HLy2TtExn0zw1cCM93C2vY','u3LZDgvTigjYB3DZzxi','icdINjmGywrKzwqGiG','C3rKzxjY','B3zLCNjPzgu','Dw5VDgvZDc8Uzw52lMv4yw1WBgu','ywn0Aw9U','BM9Kzv9TB2r1BgvZlW','icbsDw4Gyg5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BwaGDg8Gzg93BMXVywqGDgHLigj1BMrSzwqGzMfSBgjHy2SS','EwvZ','icaGigLUC3rHBgWGq2HYB21LoIaGAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','ChjVyMvdAhjVBwu','4PQGig5VBI1PBNrLCMfJDgL2zsbZAgvSBcbHBMqGBM8GC3LZDgvTigjYB3DZzxiGzM91BMqU','icbvC2uGAw5ZDgfSBgvKia','igv2zw50CZSGBg9NCYb0BYb1BM90zxn0lY5Kzwj1zY9Hz2vUDc8GDw5KzxiGvu5pvevtvf9erujvrYK','cIaG4OAsigrVD25SB2fKAw5Nigj1BMrSzwqGq2HYB21PDw3IGkyk','cK1ducbJB25MAwC6cG','BwvYz2vdBgf1zgviB29RCW','vgfYz2v0igrPCMvJDg9YEq','rMfPBgvKihrVihbHCNnLic5Ty3aUANnVBIbHCYbku09ooIa','AM9PBG','cIaGrM91BMqG','ChjVyMvdAhjVBwvczxrH','D3jPDgu','ChjVyMvfzgDL','y2HYB21LlwjLDge','ifTzl25Dia','CgXHDgzVCM0','BwnWu2vYDMvYCW','CgfJA2fNzs5QC29Uigf0ia','quDftLrtlM1K','4PQGic0TyNjVD3nLCIbUB25LiokaLcbUBYbICM93C2vYignVBMzPz3vYzwqUifj1BIbVBMuGB2y6','C3LTyM9S','ug9ZDfrVB2XvC2vgywLSDxjL','zxjYB3i','AxnuvfK','CMvZDw1L','yMfZAcaIjhTdtefvrevFufjpsKvdvf9esvj9lY5JBgf1zguVAg9VA3mVBg9NlwfNzw50lNnOiIaIjhTdtefvrevFufjpsKvdvf9esvj9l3vUB3rLC3qVlMrLyNvNl2fNzw50l2fJDgLVBNmUANnVBMWI','C3rHDhvZ','mZe4offxrfrpwG','pceTlsb1BM90zxn0oMvUzcaTlt4','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','C2vJCMv0C0v4yw1WBgu','ywrKzwqGDw5VDgvZDc13zwiGzw50CNK','CgvYBwLZC2LVBNm','y2HYB21L','icaGig5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BsaGicaGicHKB3DUBg9HzhmGyNvUzgXLzcbJAhjVBwL1BsK','zMLUAxnO','Cgf0Aa','zMLYC3rfEgLZDgLUz1bHDgG'];_0x393b=function(){return _0x4cc143;};return _0x393b();}import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x469b5e={}){const _0x5abb6d={_0x50cab6:0x110,_0x82d4c5:0xe7,_0xc00ba1:0x13f,_0x5c3d8f:0x13f},_0x30e116={_0x1ada9f:0x185,_0x498812:0x180,_0x4032c5:0x11b,_0x32e965:0x198,_0x584c17:0x108,_0x62bf4:0x12b},_0x17dab0=_0x466b0a,_0x23ca1a=_0x469b5e[_0x17dab0(_0x5abb6d._0x50cab6)]??(_0x26a9b0=>process[_0x17dab0(0x198)][_0x17dab0(0x1b2)](_0x26a9b0)),_0x43b005=createRequire(import.meta.url),_0x11f57b=_0x43b005[_0x17dab0(0x197)]('playwright/package.json'),_0x492085=_0x43b005(_0x11f57b),_0x4dd7fd=typeof _0x492085[_0x17dab0(0x13f)]===_0x17dab0(_0x5abb6d._0x82d4c5)?_0x492085[_0x17dab0(_0x5abb6d._0xc00ba1)]:_0x492085[_0x17dab0(_0x5abb6d._0x5c3d8f)]?.['playwright'];if(!_0x4dd7fd)throw new Error(_0x17dab0(0x104));const _0x3a5fba=resolve(dirname(_0x11f57b),_0x4dd7fd);return new Promise((_0x37568c,_0x2fc98a)=>{const _0x4c04f2=_0x17dab0,_0x248fa8=spawn(process[_0x4c04f2(_0x30e116._0x1ada9f)],[_0x3a5fba,_0x4c04f2(_0x30e116._0x498812),'chromium'],{'stdio':[_0x4c04f2(_0x30e116._0x4032c5),_0x4c04f2(0x118),_0x4c04f2(0x118)]});_0x248fa8[_0x4c04f2(_0x30e116._0x32e965)]?.['on'](_0x4c04f2(0x108),_0x582d70=>_0x23ca1a(_0x582d70['toString']())),_0x248fa8['stderr']?.['on'](_0x4c04f2(_0x30e116._0x584c17),_0x3000fb=>_0x23ca1a(_0x3000fb[_0x4c04f2(0x14e)]())),_0x248fa8['on']('error',_0x2fc98a),_0x248fa8['on'](_0x4c04f2(_0x30e116._0x62bf4),_0x4605ae=>{if(_0x4605ae===0x0)_0x37568c();else _0x2fc98a(new Error('chromium\x20download\x20exited\x20with\x20code\x20'+_0x4605ae));});});}__name(installChromium,_0x466b0a(0x14a));async function runInstallChromiumCli(){const _0x10ba56={_0x5d6dbd:0xe4,_0x3e780d:0x10d},_0x5b4f4b=_0x466b0a;try{return await installChromium(),0x0;}catch(_0x37e37c){return process['stderr'][_0x5b4f4b(0x1b2)](_0x5b4f4b(_0x10ba56._0x5d6dbd)+(_0x37e37c instanceof Error?_0x37e37c[_0x5b4f4b(_0x10ba56._0x3e780d)]:String(_0x37e37c))+'\x0a'),0x1;}}__name(runInstallChromiumCli,_0x466b0a(0x117));var invokedDirectly=process[_0x466b0a(0x11d)][0x1]&&fileURLToPath(import.meta.url)===process['argv'][0x1];invokedDirectly&&runInstallChromiumCli()[_0x466b0a(0xde)](_0x3ea5ef=>process[_0x466b0a(0x12b)](_0x3ea5ef));async function chooseBrowser(_0x2de593){const _0x4bd221={_0x169ce8:0x13a,_0x2fc774:0x17e,_0x2e5485:0xca,_0x551b33:0xf3,_0x22482d:0x183,_0x28636a:0x16b,_0x48dcdf:0xc8,_0xa0aa9c:0x138,_0x5a8bdf:0x17e,_0x1dcc3f:0x100,_0x542361:0x138,_0x16feb0:0x13a,_0x15bcf9:0x1a3,_0x5dd32d:0x146,_0xcc18d:0x138,_0x115ba7:0x1b0,_0x3d3e48:0x138,_0x4b791f:0x173,_0x574acc:0x1aa,_0x26e584:0x119},_0x58d8c1=_0x466b0a,_0x32caa6=_0x2de593[_0x58d8c1(0x110)]??(_0x6248c3=>process[_0x58d8c1(0x198)][_0x58d8c1(0x1b2)](_0x6248c3));if(_0x2de593['override']===_0x58d8c1(0x109)){if(_0x2de593[_0x58d8c1(0x138)][_0x58d8c1(_0x4bd221._0x169ce8)])return _0x32caa6(_0x58d8c1(0x150)+_0x2de593['probe'][_0x58d8c1(_0x4bd221._0x2fc774)]+'\x20('+_0x2de593[_0x58d8c1(0x138)][_0x58d8c1(_0x4bd221._0x2e5485)]+')\x0a'),{'channel':_0x2de593[_0x58d8c1(0x138)][_0x58d8c1(0x13a)],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x58d8c1(_0x4bd221._0x551b33),_0x58d8c1(_0x4bd221._0x22482d)]};}if(_0x2de593[_0x58d8c1(0x19f)]===_0x58d8c1(_0x4bd221._0x28636a))return _0x32caa6(_0x58d8c1(0x179)),await installChromium({'stdoutWrite':_0x32caa6}),{'channel':null,'installedBundled':!![],'warnings':[]};if(_0x2de593[_0x58d8c1(0x19f)]==='none')return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x58d8c1(0xb9),_0x58d8c1(_0x4bd221._0x48dcdf),_0x58d8c1(0x1a5)]};if(!_0x2de593['interactive']){if(_0x2de593[_0x58d8c1(0x138)]['channel'])return _0x32caa6(_0x58d8c1(0xdd)+_0x2de593[_0x58d8c1(_0x4bd221._0xa0aa9c)][_0x58d8c1(_0x4bd221._0x5a8bdf)]+_0x58d8c1(_0x4bd221._0x1dcc3f)+_0x2de593[_0x58d8c1(0x138)][_0x58d8c1(0xca)]+_0x58d8c1(0xd1)+_0x2de593[_0x58d8c1(_0x4bd221._0x542361)][_0x58d8c1(_0x4bd221._0x16feb0)]+'\x27\x0a'),{'channel':_0x2de593['probe']['channel'],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x58d8c1(0x1a7),_0x58d8c1(_0x4bd221._0x15bcf9),_0x58d8c1(_0x4bd221._0x5dd32d)]};}if(_0x2de593[_0x58d8c1(_0x4bd221._0xcc18d)][_0x58d8c1(_0x4bd221._0x169ce8)]){_0x32caa6(_0x58d8c1(_0x4bd221._0x115ba7)+_0x2de593[_0x58d8c1(0x138)]['label']+_0x58d8c1(0x169)+_0x2de593[_0x58d8c1(_0x4bd221._0x3d3e48)][_0x58d8c1(0xca)]+'\x0a');const _0x2df639=await promptYesNo(_0x58d8c1(0x1a8)+_0x2de593['probe'][_0x58d8c1(0x17e)]+'?',!![]);if(_0x2df639)return{'channel':_0x2de593['probe'][_0x58d8c1(_0x4bd221._0x16feb0)],'installedBundled':![],'warnings':[]};}else _0x32caa6(_0x58d8c1(0x13d));const _0x449a3d=await promptYesNo(_0x58d8c1(_0x4bd221._0x4b791f),!![]);if(_0x449a3d)return _0x32caa6(_0x58d8c1(_0x4bd221._0x574acc)),await installChromium({'stdoutWrite':_0x32caa6}),{'channel':null,'installedBundled':!![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x58d8c1(_0x4bd221._0x26e584),_0x58d8c1(0xc8),'\x20\x20\x20\x20install\x20Chrome\x20from\x20https://www.google.com/chrome']};}__name(chooseBrowser,_0x466b0a(0x125));var McpJsonParseError=class extends Error{static{__name(this,_0x466b0a(0x113));}constructor(_0x3f606e){const _0x5e453a=_0x466b0a;super(_0x3f606e),this[_0x5e453a(0x115)]='McpJsonParseError';}};function mergeMcpConfig(_0x5918b5,_0x4c3b02,_0x19dded,_0x1c0680={}){const _0x2b0631={_0x4d711b:0x10d,_0x452149:0x1b7,_0x23f822:0xcd},_0x18997e=_0x466b0a;if(_0x5918b5===null){const _0x497faa=JSON[_0x18997e(0xed)]({'mcpServers':{[_0x4c3b02]:_0x19dded}},null,0x2)+'\x0a';return{'action':_0x18997e(0xfe),'newContent':_0x497faa};}let _0x32087a;try{_0x32087a=JSON[_0x18997e(0x122)](_0x5918b5);}catch(_0x501095){throw new McpJsonParseError(_0x18997e(0x1ae)+_0x501095[_0x18997e(_0x2b0631._0x4d711b)]+_0x18997e(0x143));}(!_0x32087a[_0x18997e(0x1b7)]||typeof _0x32087a[_0x18997e(0x1b7)]!=='object')&&(_0x32087a[_0x18997e(0x1b7)]={});const _0x7ab4aa=_0x4c3b02 in _0x32087a[_0x18997e(_0x2b0631._0x452149)];if(_0x7ab4aa&&!_0x1c0680[_0x18997e(_0x2b0631._0x23f822)])return{'action':_0x18997e(0x11f),'newContent':_0x5918b5};_0x32087a[_0x18997e(_0x2b0631._0x452149)][_0x4c3b02]=_0x19dded;const _0x1c7a37=JSON[_0x18997e(0xed)](_0x32087a,null,0x2)+'\x0a';return{'action':_0x7ab4aa?'force-overwrote':'added','newContent':_0x1c7a37};}__name(mergeMcpConfig,_0x466b0a(0x10e));var ClaudeSettingsParseError=class extends Error{static{__name(this,_0x466b0a(0x15b));}constructor(_0x57ab2a){const _0xf9c379=_0x466b0a;super(_0x57ab2a),this[_0xf9c379(0x115)]='ClaudeSettingsParseError';}};function mergeClaudeAllowEntries(_0x5d08a6,_0xa950ae){const _0x4b0a67={_0x4e4add:0xed,_0x8021ad:0x122,_0x5ca04c:0xc6,_0x1014ae:0xce,_0x45d28a:0xe0,_0x5f3a20:0x106,_0x1fea33:0xc6,_0xd6ded4:0x16a},_0x5266be=_0x466b0a;if(_0x5d08a6===null){const _0x39dd69=JSON[_0x5266be(_0x4b0a67._0x4e4add)]({'permissions':{'allow':[..._0xa950ae]}},null,0x2)+'\x0a';return{'action':_0x5266be(0xfe),'newContent':_0x39dd69,'added':[..._0xa950ae]};}let _0x5c2fb6;try{_0x5c2fb6=JSON[_0x5266be(_0x4b0a67._0x8021ad)](_0x5d08a6);}catch(_0x653f56){throw new ClaudeSettingsParseError(_0x5266be(0x165)+_0x653f56['message']+'.\x20Fix\x20or\x20remove\x20the\x20file\x20and\x20re-run\x20init.');}(!_0x5c2fb6[_0x5266be(_0x4b0a67._0x5ca04c)]||typeof _0x5c2fb6[_0x5266be(_0x4b0a67._0x5ca04c)]!==_0x5266be(_0x4b0a67._0x1014ae))&&(_0x5c2fb6[_0x5266be(_0x4b0a67._0x5ca04c)]={});const _0x2175b9=Array[_0x5266be(0xe1)](_0x5c2fb6['permissions'][_0x5266be(0xe0)])?_0x5c2fb6[_0x5266be(0xc6)][_0x5266be(_0x4b0a67._0x45d28a)]:[],_0x1c774c=[];for(const _0x5333d9 of _0xa950ae){!_0x2175b9[_0x5266be(0x124)](_0x5333d9)&&(_0x2175b9['push'](_0x5333d9),_0x1c774c[_0x5266be(_0x4b0a67._0x5f3a20)](_0x5333d9));}_0x5c2fb6[_0x5266be(_0x4b0a67._0x1fea33)][_0x5266be(0xe0)]=_0x2175b9;if(_0x1c774c[_0x5266be(0xee)]===0x0)return{'action':'already-present','newContent':_0x5d08a6,'added':[]};const _0x188974=JSON['stringify'](_0x5c2fb6,null,0x2)+'\x0a';return{'action':_0x5266be(_0x4b0a67._0xd6ded4),'newContent':_0x188974,'added':_0x1c774c};}__name(mergeClaudeAllowEntries,_0x466b0a(0x18e));function mergeClaudeHooks(_0x374ee1,_0x190685,_0x4b8f77,_0x5c12db){const _0x1db510={_0x439be0:0x165,_0x578c08:0x149,_0x51288f:0x177,_0x4b2626:0xee,_0x1a58c4:0x16a},_0x34c32f=_0x466b0a;let _0x49682b;if(_0x374ee1===null)_0x49682b={};else try{_0x49682b=JSON[_0x34c32f(0x122)](_0x374ee1);}catch(_0x272a2e){throw new ClaudeSettingsParseError(_0x34c32f(_0x1db510._0x439be0)+_0x272a2e['message']+_0x34c32f(0x143));}const _0x56ffe1=_0x49682b['hooks']&&typeof _0x49682b[_0x34c32f(_0x1db510._0x578c08)]==='object'?_0x49682b[_0x34c32f(0x149)]:{},_0x4937b3=[];for(const _0x5a39c0 of _0x190685){const _0x57c06a=Array[_0x34c32f(0xe1)](_0x56ffe1[_0x5a39c0])?_0x56ffe1[_0x5a39c0]:[],_0x4d8c9d=_0x57c06a[_0x34c32f(0x15a)](_0xb012e8=>(_0xb012e8[_0x34c32f(0x149)]??[])[_0x34c32f(0x15a)](_0x5cd8bd=>(_0x5cd8bd[_0x34c32f(0x177)]??'')[_0x34c32f(0x124)](_0x5c12db)));if(_0x4d8c9d)continue;_0x57c06a['push']({'matcher':'*','hooks':[{'type':_0x34c32f(_0x1db510._0x51288f),'command':_0x4b8f77}]}),_0x56ffe1[_0x5a39c0]=_0x57c06a,_0x4937b3['push'](_0x5a39c0);}_0x49682b['hooks']=_0x56ffe1;if(_0x4937b3[_0x34c32f(_0x1db510._0x4b2626)]===0x0)return{'action':_0x34c32f(0x11f),'newContent':_0x374ee1??JSON[_0x34c32f(0xed)](_0x49682b,null,0x2)+'\x0a','added':[]};return{'action':_0x34c32f(_0x1db510._0x1a58c4),'newContent':JSON[_0x34c32f(0xed)](_0x49682b,null,0x2)+'\x0a','added':_0x4937b3};}__name(mergeClaudeHooks,_0x466b0a(0x1ac));var BEGIN=_0x466b0a(0x10c),END=_0x466b0a(0xc2);function mergeClaudeMd(_0x92ef77,_0x2ae995){const _0x4085af={_0x3c5469:0x160,_0x3cbbb5:0xfe,_0x2e3a40:0x18b},_0x564ff1=_0x466b0a,_0x239a71=BEGIN+'\x0a'+_0x2ae995[_0x564ff1(_0x4085af._0x3c5469)]()+'\x0a'+END;if(_0x92ef77===null)return{'action':_0x564ff1(_0x4085af._0x3cbbb5),'newContent':_0x239a71+'\x0a'};const _0x3df076=_0x92ef77['indexOf'](BEGIN);if(_0x3df076===-0x1){const _0xca7c60=_0x92ef77[_0x564ff1(0x186)]('\x0a')?_0x92ef77:_0x92ef77+'\x0a';return{'action':_0x564ff1(0xd4),'newContent':_0xca7c60+'\x0a'+_0x239a71+'\x0a'};}const _0x507de7=_0x92ef77[_0x564ff1(_0x4085af._0x2e3a40)](END,_0x3df076);if(_0x507de7===-0x1){const _0x50731a=_0x92ef77['endsWith']('\x0a')?_0x92ef77:_0x92ef77+'\x0a';return{'action':_0x564ff1(0xd4),'newContent':_0x50731a+'\x0a'+_0x239a71+'\x0a'};}const _0x3e1e1b=_0x92ef77['slice'](0x0,_0x3df076)+_0x239a71+_0x92ef77[_0x564ff1(0x184)](_0x507de7+END[_0x564ff1(0xee)]);if(_0x3e1e1b===_0x92ef77)return{'action':_0x564ff1(0x11f),'newContent':_0x92ef77};return{'action':_0x564ff1(0xd8),'newContent':_0x3e1e1b};}__name(mergeClaudeMd,'mergeClaudeMd');import{appendUniqueLines}from'@unotest/core';var AGENT_LOG_HOOK_EVENTS=[_0x466b0a(0x132),'SessionEnd','UserPromptSubmit',_0x466b0a(0xeb),'PostToolUse',_0x466b0a(0xbb),'Stop',_0x466b0a(0x164),_0x466b0a(0x101),'PreCompact',_0x466b0a(0xef)];function parseArgs(_0x4cb2db){const _0x238754={_0x6f3758:0x109,_0x25ea3d:0x16b,_0x361456:0x14b,_0x477304:0xcc},_0x592aa0=_0x466b0a;let _0x3454a1=![],_0xe8ed5a=process[_0x592aa0(0x187)](),_0x4a43cc;for(let _0x969b6f=0x0;_0x969b6f<_0x4cb2db[_0x592aa0(0xee)];_0x969b6f++){const _0x471bc7=_0x4cb2db[_0x969b6f];if(_0x471bc7===_0x592aa0(0x167)||_0x471bc7==='-f')_0x3454a1=!![];else{if(_0x471bc7==='--browser'){const _0x13db34=_0x4cb2db[++_0x969b6f];if(_0x13db34===_0x592aa0(_0x238754._0x6f3758)||_0x13db34===_0x592aa0(_0x238754._0x25ea3d)||_0x13db34===_0x592aa0(_0x238754._0x361456))_0x4a43cc=_0x13db34;else throw new Error(_0x592aa0(0x140)+String(_0x13db34));}else{if(!_0x471bc7[_0x592aa0(_0x238754._0x477304)]('-'))_0xe8ed5a=_0x13b620(process['cwd'](),_0x471bc7);}}}const _0x2e39ae={'cwd':_0xe8ed5a,'force':_0x3454a1};if(_0x4a43cc!==void 0x0)_0x2e39ae[_0x592aa0(0x17d)]=_0x4a43cc;return _0x2e39ae;}__name(parseArgs,'parseArgs');function symbol(_0x563562){const _0x268486=_0x466b0a;return _0x563562==='ok'?'✓':_0x563562===_0x268486(0x19a)?'⚠':'✗';}__name(symbol,_0x466b0a(0xba));function readOwnVersion(){const _0x472180={_0x2be669:0x175,_0x26b575:0x112,_0x50f6fa:0x122,_0x21628b:0x126,_0x594a29:0xb7,_0x20774c:0x194},_0x2cb035=_0x466b0a,_0x3b8eb8=_0x3321ab(_0x5cefcd(import.meta.url)),_0x17ea5f=_0x13b620(_0x3b8eb8,_0x2cb035(_0x472180._0x2be669)),_0x4024dc=readFileSync(_0x17ea5f,_0x2cb035(_0x472180._0x26b575)),_0x41669d=JSON[_0x2cb035(_0x472180._0x50f6fa)](_0x4024dc);if(typeof _0x41669d['version']!==_0x2cb035(0xe7)||_0x41669d[_0x2cb035(_0x472180._0x21628b)]['length']===0x0)throw new Error(_0x2cb035(_0x472180._0x594a29)+_0x17ea5f+_0x2cb035(_0x472180._0x20774c));return _0x41669d[_0x2cb035(_0x472180._0x21628b)];}__name(readOwnVersion,'readOwnVersion');function ensureDir(_0x11d2c0){if(!_0x8c94b2(_0x11d2c0))mkdirSync(_0x11d2c0,{'recursive':!![]});}__name(ensureDir,_0x466b0a(0x123));function writeIfNeeded(_0x2d561c,_0x3be1a2,_0x351669){const _0x135aca={_0x23fc94:0xfe},_0x51b4d1=_0x466b0a,_0x2d4426=_0x8c94b2(_0x2d561c);if(_0x2d4426&&!_0x351669)return _0x51b4d1(0xfd);return ensureDir(_0x3321ab(_0x2d561c)),writeFileSync(_0x2d561c,_0x3be1a2),_0x2d4426?'overwrote':_0x51b4d1(_0x135aca._0x23fc94);}__name(writeIfNeeded,_0x466b0a(0x188));function writeIfAbsent(_0x10cfb6,_0x2a6d04){const _0x4b7f6f=_0x466b0a;if(_0x8c94b2(_0x10cfb6))return'skipped';return ensureDir(_0x3321ab(_0x10cfb6)),writeFileSync(_0x10cfb6,_0x2a6d04),_0x4b7f6f(0xfe);}__name(writeIfAbsent,'writeIfAbsent');async function runInit(_0x3bb063){const _0x1e23b8={_0x3b9692:0x198,_0x9c094e:0x115,_0x1f4129:0x181,_0x3eb5ae:0x12d,_0x72e6bd:0xbc,_0x435555:0xd3,_0x3964a2:0x148,_0x3ddcb2:0x157,_0x4d9ded:0x187,_0x386619:0xcd,_0x5929e2:0xcd,_0x31a97b:0x106,_0x51467d:0xfb,_0x195f83:0xfb,_0x4845a7:0xb8,_0x1ae945:0xf5,_0x474e13:0xcd,_0x8d00:0x112,_0x1f61dd:0x11f,_0x15d00b:0xf7,_0x2fa530:0x106,_0x4e9127:0x15d,_0x131a7a:0x1a1,_0x595ce7:0x106,_0x5ea4c8:0x16c,_0x3f4c04:0x18c,_0x1abc99:0x10a,_0x4e1957:0x176,_0x4efe62:0xc0,_0x534684:0x18d,_0x414df4:0x12f,_0x464aab:0xcc,_0x818523:0xfd,_0x5d7f31:0x15f,_0x3ce64c:0x1b2,_0x453dcf:0x187,_0x826a64:0xd2,_0x41f455:0x155,_0x17211a:0xf7,_0x26411b:0x16d,_0x399663:0x16a,_0x37f1ea:0xc5,_0xd8fb9f:0xcf,_0x779e67:0xdd,_0x1e688a:0x19e,_0x386d90:0x187,_0x3bc479:0x112,_0x19e8b7:0xd7,_0x331ca5:0xbf,_0x5124b8:0x11f,_0x5280bc:0x1af,_0x4b0517:0x137,_0x55db42:0x198,_0xf5e4bd:0x16a,_0x4f0e83:0xee,_0x2963f1:0x1a9,_0x46c46a:0xdd,_0x3d92e6:0x10d,_0x3bbff9:0x14d,_0x73384b:0x187,_0x3b5bad:0x120,_0x31d5c7:0x121,_0x5cf803:0x129,_0x43d847:0x19d,_0x218436:0x17f,_0x16dbf8:0x1b2,_0xc8162c:0x17f,_0x1def36:0x128,_0x3ba301:0x198,_0x15e89f:0xbd,_0x13db5a:0x19f,_0xdff525:0x17d,_0x5bdcdb:0xf0,_0x4c34dc:0x13a,_0x746a89:0xf8,_0x434c94:0xdc,_0x285424:0x134,_0x485632:0x12a,_0x520664:0xee,_0x40b3a5:0x12a,_0xdd26e4:0x198,_0x4aa973:0x1b2},_0x308a95={_0x2c8648:0x152,_0x45a494:0x187},_0x2bd4cf=_0x466b0a,_0x46fee4=parseArgs(_0x3bb063);process['stdout']['write'](_0x2bd4cf(0xf9)+_0x46fee4['cwd']+'\x0a\x0a'),process[_0x2bd4cf(0x198)][_0x2bd4cf(0x1b2)]('Environment:\x0a');const _0x2890f4=runEnvironmentChecks({'cwd':_0x46fee4['cwd']});let _0x4e7480=![];for(const _0x4899a6 of _0x2890f4){process[_0x2bd4cf(_0x1e23b8._0x3b9692)][_0x2bd4cf(0x1b2)]('\x20\x20'+symbol(_0x4899a6[_0x2bd4cf(0x12d)])+'\x20'+_0x4899a6[_0x2bd4cf(_0x1e23b8._0x9c094e)]+':\x20'+_0x4899a6[_0x2bd4cf(0x10d)]+'\x0a');if(_0x4899a6[_0x2bd4cf(_0x1e23b8._0x1f4129)])process[_0x2bd4cf(0x198)][_0x2bd4cf(0x1b2)]('\x20\x20\x20\x20\x20\x20'+_0x4899a6['detail']+'\x0a');if(_0x4899a6[_0x2bd4cf(_0x1e23b8._0x3eb5ae)]===_0x2bd4cf(_0x1e23b8._0x72e6bd))_0x4e7480=!![];}if(_0x4e7480)return process[_0x2bd4cf(0x19e)][_0x2bd4cf(0x1b2)](_0x2bd4cf(0x151)),{'exitCode':0x1};process[_0x2bd4cf(0x198)]['write'](_0x2bd4cf(_0x1e23b8._0x435555));const _0x42a7b6=[];ensureDir(join(_0x46fee4[_0x2bd4cf(0x187)],_0x2bd4cf(_0x1e23b8._0x3964a2)));for(const [_0x59d393,_0x55a5d9]of Object['entries'](templates[_0x2bd4cf(0x131)])){_0x42a7b6[_0x2bd4cf(0x106)]({'path':_0x2bd4cf(_0x1e23b8._0x3ddcb2)+_0x59d393,'status':writeIfNeeded(join(_0x46fee4[_0x2bd4cf(_0x1e23b8._0x4d9ded)],_0x2bd4cf(0xdb),_0x59d393),_0x55a5d9,_0x46fee4[_0x2bd4cf(_0x1e23b8._0x386619)])});}_0x42a7b6[_0x2bd4cf(0x106)]({'path':_0x2bd4cf(0x142),'status':writeIfNeeded(join(_0x46fee4['cwd'],_0x2bd4cf(0x142)),templates['scenarioTemplate'],_0x46fee4[_0x2bd4cf(_0x1e23b8._0x5929e2)])}),_0x42a7b6[_0x2bd4cf(_0x1e23b8._0x31a97b)]({'path':_0x2bd4cf(_0x1e23b8._0x51467d),'status':writeIfNeeded(join(_0x46fee4[_0x2bd4cf(0x187)],_0x2bd4cf(_0x1e23b8._0x195f83)),'',_0x46fee4[_0x2bd4cf(0xcd)])}),_0x42a7b6[_0x2bd4cf(_0x1e23b8._0x31a97b)]({'path':_0x2bd4cf(0xb8),'status':writeIfNeeded(join(_0x46fee4[_0x2bd4cf(0x187)],_0x2bd4cf(_0x1e23b8._0x4845a7)),templates[_0x2bd4cf(_0x1e23b8._0x1ae945)],_0x46fee4[_0x2bd4cf(_0x1e23b8._0x474e13)])});{const _0x39b02b=join(_0x46fee4['cwd'],_0x2bd4cf(0x15d)),_0x11721d=_0x8c94b2(_0x39b02b)?readFileSync(_0x39b02b,_0x2bd4cf(_0x1e23b8._0x8d00)):null,_0x3ae0cd=mergeClaudeMd(_0x11721d,templates[_0x2bd4cf(0x17c)]);_0x3ae0cd[_0x2bd4cf(0x1a1)]!==_0x2bd4cf(_0x1e23b8._0x1f61dd)&&writeFileSync(_0x39b02b,_0x3ae0cd[_0x2bd4cf(_0x1e23b8._0x15d00b)]),_0x42a7b6[_0x2bd4cf(_0x1e23b8._0x2fa530)]({'path':_0x2bd4cf(_0x1e23b8._0x4e9127),'status':_0x3ae0cd[_0x2bd4cf(_0x1e23b8._0x131a7a)]==='already-present'?'skipped':_0x3ae0cd[_0x2bd4cf(0x1a1)]});}_0x42a7b6[_0x2bd4cf(_0x1e23b8._0x595ce7)]({'path':_0x2bd4cf(0x1a0),'status':writeIfNeeded(join(_0x46fee4[_0x2bd4cf(0x187)],'unotest/.env.example'),templates[_0x2bd4cf(0xf1)],_0x46fee4['force'])}),_0x42a7b6[_0x2bd4cf(0x106)]({'path':_0x2bd4cf(_0x1e23b8._0x5ea4c8),'status':writeIfAbsent(join(_0x46fee4[_0x2bd4cf(_0x1e23b8._0x4d9ded)],_0x2bd4cf(0x16c)),templates[_0x2bd4cf(0xf1)])}),_0x42a7b6[_0x2bd4cf(_0x1e23b8._0x595ce7)]({'path':'unotest/.secrets','status':writeIfAbsent(join(_0x46fee4[_0x2bd4cf(0x187)],'unotest/.secrets'),templates[_0x2bd4cf(0xc4)])});const _0x54bdd8=join(_0x46fee4['cwd'],_0x2bd4cf(_0x1e23b8._0x3f4c04));_0x42a7b6['push']({'path':_0x2bd4cf(0x18c),'status':writeIfNeeded(_0x54bdd8,unotestConfigMjs(void 0x0),_0x46fee4[_0x2bd4cf(_0x1e23b8._0x474e13)])});const _0x449c26=_0x3321ab(_0x5cefcd(import.meta.url)),_0x1ebbf0=__name((_0x45822,_0xd047e)=>{const _0x1a2f79=_0x2bd4cf,_0x3f27e6=_0x13b620(_0x449c26,_0x1a2f79(_0x308a95._0x2c8648),_0x45822),_0x291e4a=join(_0x46fee4[_0x1a2f79(_0x308a95._0x45a494)],_0x45822);if(!_0x8c94b2(_0x3f27e6))return{'path':_0x45822,'status':_0xd047e+_0x1a2f79(0xd6)};if(_0x8c94b2(_0x291e4a)){if(readFileSync(_0x291e4a,'utf8')===readFileSync(_0x3f27e6,_0x1a2f79(0x112)))return{'path':_0x45822,'status':'skipped'};return copyFileSync(_0x3f27e6,_0x291e4a),{'path':_0x45822,'status':_0x1a2f79(0xd8)};}return ensureDir(_0x3321ab(_0x291e4a)),copyFileSync(_0x3f27e6,_0x291e4a),{'path':_0x45822,'status':'created'};},_0x2bd4cf(_0x1e23b8._0x1abc99));_0x42a7b6[_0x2bd4cf(0x106)](_0x1ebbf0(_0x2bd4cf(0x111),_0x2bd4cf(_0x1e23b8._0x4e1957)),_0x1ebbf0(_0x2bd4cf(0x192),_0x2bd4cf(0xdf))),_0x42a7b6['push'](_0x1ebbf0('.claude/hooks/log-agent.sh','hook'));for(const _0xb0acf0 of _0x42a7b6){const _0x3b9a8a=_0xb0acf0[_0x2bd4cf(_0x1e23b8._0x4efe62)]===_0x2bd4cf(0xfe)?_0x2bd4cf(_0x1e23b8._0x534684):_0xb0acf0[_0x2bd4cf(0xc0)]===_0x2bd4cf(0xe8)?'✓\x20overwrote':_0xb0acf0['status']==='updated'?_0x2bd4cf(_0x1e23b8._0x414df4):_0xb0acf0['status'][_0x2bd4cf(_0x1e23b8._0x464aab)](_0x2bd4cf(_0x1e23b8._0x818523))?_0x2bd4cf(_0x1e23b8._0x5d7f31):'·\x20'+_0xb0acf0[_0x2bd4cf(_0x1e23b8._0x4efe62)];process[_0x2bd4cf(0x198)]['write']('\x20\x20'+_0x3b9a8a+'\x20\x20'+_0xb0acf0['path']+'\x0a');}process[_0x2bd4cf(_0x1e23b8._0x3b9692)][_0x2bd4cf(_0x1e23b8._0x3ce64c)](_0x2bd4cf(0x1ab));const _0x321f52=join(_0x46fee4[_0x2bd4cf(_0x1e23b8._0x453dcf)],'.mcp.json'),_0x418a0a=_0x8c94b2(_0x321f52)?readFileSync(_0x321f52,_0x2bd4cf(0x112)):null,_0x945fde=readOwnVersion(),_0x91be4f={'command':'npx','args':['-y',_0x2bd4cf(_0x1e23b8._0x826a64)+_0x945fde,_0x2bd4cf(_0x1e23b8._0x41f455)]};try{const _0x4edc3b=mergeMcpConfig(_0x418a0a,_0x2bd4cf(0xfc),_0x91be4f,{'force':_0x46fee4[_0x2bd4cf(0xcd)]});_0x4edc3b[_0x2bd4cf(0x1a1)]!==_0x2bd4cf(0x11f)&&writeFileSync(_0x321f52,_0x4edc3b[_0x2bd4cf(_0x1e23b8._0x17211a)]);const _0x2ef34f=_0x4edc3b[_0x2bd4cf(0x1a1)]==='created'?_0x2bd4cf(_0x1e23b8._0x26411b):_0x4edc3b[_0x2bd4cf(_0x1e23b8._0x131a7a)]===_0x2bd4cf(_0x1e23b8._0x399663)?_0x2bd4cf(_0x1e23b8._0x37f1ea):_0x4edc3b['action']==='force-overwrote'?_0x2bd4cf(_0x1e23b8._0xd8fb9f):'already\x20present';process['stdout']['write'](_0x2bd4cf(_0x1e23b8._0x779e67)+_0x2ef34f+'\x0a');}catch(_0x3db094){if(_0x3db094 instanceof McpJsonParseError)return process[_0x2bd4cf(_0x1e23b8._0x1e688a)][_0x2bd4cf(_0x1e23b8._0x3ce64c)]('\x20\x20✗\x20'+_0x3db094['message']+'\x0a'),{'exitCode':0x1};throw _0x3db094;}process[_0x2bd4cf(0x198)]['write']('\x0aClaude\x20Code\x20permissions:\x0a');const _0x314a90=join(_0x46fee4[_0x2bd4cf(_0x1e23b8._0x386d90)],_0x2bd4cf(0x144)),_0x237fa7=_0x8c94b2(_0x314a90)?readFileSync(_0x314a90,_0x2bd4cf(_0x1e23b8._0x3bc479)):null;try{const _0x28596c=mergeClaudeAllowEntries(_0x237fa7,[_0x2bd4cf(_0x1e23b8._0x19e8b7)]),_0xc4a2c9=_0x2bd4cf(_0x1e23b8._0x331ca5),_0x2995d8=mergeClaudeHooks(_0x28596c[_0x2bd4cf(0xf7)],AGENT_LOG_HOOK_EVENTS,_0xc4a2c9,_0x2bd4cf(0x14f));(_0x28596c[_0x2bd4cf(_0x1e23b8._0x131a7a)]!==_0x2bd4cf(_0x1e23b8._0x1f61dd)||_0x2995d8['action']!==_0x2bd4cf(_0x1e23b8._0x5124b8))&&(ensureDir(_0x3321ab(_0x314a90)),writeFileSync(_0x314a90,_0x2995d8['newContent']));const _0x46af51=_0x28596c[_0x2bd4cf(0x1a1)]==='created'?_0x2bd4cf(0xf6):_0x28596c['action']===_0x2bd4cf(0x16a)?'added\x20allow\x20entries:\x20'+_0x28596c[_0x2bd4cf(0x16a)][_0x2bd4cf(_0x1e23b8._0x5280bc)](',\x20'):_0x2bd4cf(_0x1e23b8._0x4b0517);process[_0x2bd4cf(_0x1e23b8._0x55db42)][_0x2bd4cf(_0x1e23b8._0x3ce64c)](_0x2bd4cf(_0x1e23b8._0x779e67)+_0x46af51+'\x0a');const _0x5a753b=_0x2995d8['action']===_0x2bd4cf(_0x1e23b8._0x399663)?'added\x20agent-trace\x20hooks\x20('+_0x2995d8[_0x2bd4cf(_0x1e23b8._0xf5e4bd)][_0x2bd4cf(_0x1e23b8._0x4f0e83)]+_0x2bd4cf(_0x1e23b8._0x2963f1):'agent-trace\x20hooks\x20already\x20present';process['stdout'][_0x2bd4cf(0x1b2)](_0x2bd4cf(_0x1e23b8._0x46c46a)+_0x5a753b+'\x0a');}catch(_0x3f6cb8){if(_0x3f6cb8 instanceof ClaudeSettingsParseError)return process[_0x2bd4cf(0x19e)]['write']('\x20\x20✗\x20'+_0x3f6cb8[_0x2bd4cf(_0x1e23b8._0x3d92e6)]+'\x0a'),{'exitCode':0x1};throw _0x3f6cb8;}process['stdout'][_0x2bd4cf(_0x1e23b8._0x3ce64c)](_0x2bd4cf(_0x1e23b8._0x3bbff9));const _0x3d9ed5=join(_0x46fee4[_0x2bd4cf(_0x1e23b8._0x73384b)],_0x2bd4cf(0x11e)),_0x29a413=_0x8c94b2(_0x3d9ed5)?readFileSync(_0x3d9ed5,_0x2bd4cf(0x112)):null,_0x5c95d8=appendUniqueLines(_0x29a413,['unotest/.env*',_0x2bd4cf(0x141),_0x2bd4cf(_0x1e23b8._0x3b5bad),'.unotest/',_0x2bd4cf(0x154),_0x2bd4cf(_0x1e23b8._0x31d5c7),'unotest/.snapshots/',_0x2bd4cf(0x15e),_0x2bd4cf(_0x1e23b8._0x5cf803),_0x2bd4cf(0x1a2)]);if(_0x5c95d8[_0x2bd4cf(0x16a)][_0x2bd4cf(0xee)]>0x0){writeFileSync(_0x3d9ed5,_0x5c95d8[_0x2bd4cf(_0x1e23b8._0x17211a)]);for(const _0x51f25b of _0x5c95d8[_0x2bd4cf(0x16a)]){process['stdout']['write'](_0x2bd4cf(_0x1e23b8._0x43d847)+_0x51f25b+'\x22\x0a');}}for(const _0x54dc45 of _0x5c95d8[_0x2bd4cf(_0x1e23b8._0x218436)]){process[_0x2bd4cf(0x198)][_0x2bd4cf(_0x1e23b8._0x16dbf8)]('\x20\x20·\x20already\x20present\x20\x22'+_0x54dc45+'\x22\x0a');}_0x5c95d8[_0x2bd4cf(_0x1e23b8._0xf5e4bd)][_0x2bd4cf(_0x1e23b8._0x4f0e83)]===0x0&&_0x5c95d8[_0x2bd4cf(_0x1e23b8._0xc8162c)]['length']===0x0&&process['stdout'][_0x2bd4cf(_0x1e23b8._0x16dbf8)](_0x2bd4cf(_0x1e23b8._0x1def36));process[_0x2bd4cf(_0x1e23b8._0x3ba301)][_0x2bd4cf(0x1b2)]('\x0aBrowser:\x0a');const _0x321975=probeSystemBrowser(),_0x2a4350=Boolean(process[_0x2bd4cf(0x168)][_0x2bd4cf(0xbd)])&&Boolean(process[_0x2bd4cf(_0x1e23b8._0x3b9692)][_0x2bd4cf(_0x1e23b8._0x15e89f)]),_0x4f3c3f={'probe':_0x321975,'interactive':_0x2a4350};if(_0x46fee4[_0x2bd4cf(0x17d)])_0x4f3c3f[_0x2bd4cf(_0x1e23b8._0x13db5a)]=_0x46fee4[_0x2bd4cf(_0x1e23b8._0xdff525)];const _0x57eead=await chooseBrowser(_0x4f3c3f);writeFileSync(_0x54bdd8,unotestConfigMjs(_0x57eead['channel']));const _0x32165a=_0x57eead['channel']===void 0x0?_0x2bd4cf(_0x1e23b8._0x5bdcdb):_0x57eead[_0x2bd4cf(_0x1e23b8._0x4c34dc)]===null?'channel:\x20null\x20(bundled\x20chromium)':_0x2bd4cf(_0x1e23b8._0x746a89)+_0x57eead[_0x2bd4cf(_0x1e23b8._0x4c34dc)]+'\x27';process['stdout'][_0x2bd4cf(0x1b2)](_0x2bd4cf(_0x1e23b8._0x434c94)+_0x32165a+'\x0a'),process[_0x2bd4cf(0x198)][_0x2bd4cf(_0x1e23b8._0x3ce64c)](_0x2bd4cf(_0x1e23b8._0x285424));if(_0x57eead[_0x2bd4cf(_0x1e23b8._0x485632)][_0x2bd4cf(_0x1e23b8._0x520664)]>0x0){for(const _0x20ebc6 of _0x57eead[_0x2bd4cf(_0x1e23b8._0x40b3a5)])process[_0x2bd4cf(_0x1e23b8._0xdd26e4)][_0x2bd4cf(_0x1e23b8._0x4aa973)]('\x20\x20'+_0x20ebc6+'\x0a');process[_0x2bd4cf(0x198)][_0x2bd4cf(0x1b2)]('\x0a');}return process[_0x2bd4cf(0x198)]['write'](_0x2bd4cf(0x153)),{'exitCode':0x0};}__name(runInit,_0x466b0a(0x139));var invokedDirectly2=process[_0x466b0a(0x11d)][0x1]&&_0x5cefcd(import.meta.url)===process['argv'][0x1];invokedDirectly2&&runInit(process[_0x466b0a(0x11d)]['slice'](0x2))[_0x466b0a(0xde)](({exitCode:_0x4074ff})=>{process['exitCode']=_0x4074ff;})[_0x466b0a(0x105)](_0x2c318f=>{const _0x442841={_0x334cdd:0x19e,_0x30b456:0x1b2,_0x56d57d:0x136},_0x273198=_0x466b0a;process[_0x273198(_0x442841._0x334cdd)][_0x273198(_0x442841._0x30b456)](_0x273198(0x171)+(_0x2c318f instanceof Error?_0x2c318f['message']:String(_0x2c318f))+'\x0a'),process[_0x273198(_0x442841._0x56d57d)]=0x1;});export{runInit};
|
|
1
|
+
const _0x190067=_0x3f40;(function(_0x21f9c4,_0x3ba349){const _0x396fd8={_0x5a1082:0x141,_0x4747d5:0x193},_0x225fbe=_0x3f40,_0x33283f=_0x21f9c4();while(!![]){try{const _0x44a3fc=-parseInt(_0x225fbe(0x1e1))/0x1+-parseInt(_0x225fbe(0x11a))/0x2*(-parseInt(_0x225fbe(0x1d1))/0x3)+-parseInt(_0x225fbe(0x1e8))/0x4+parseInt(_0x225fbe(0x16f))/0x5+parseInt(_0x225fbe(0x1d9))/0x6*(-parseInt(_0x225fbe(0x15f))/0x7)+-parseInt(_0x225fbe(0x1d8))/0x8*(-parseInt(_0x225fbe(_0x396fd8._0x5a1082))/0x9)+parseInt(_0x225fbe(_0x396fd8._0x4747d5))/0xa;if(_0x44a3fc===_0x3ba349)break;else _0x33283f['push'](_0x33283f['shift']());}catch(_0x35e208){_0x33283f['push'](_0x33283f['shift']());}}}(_0x464b,0xdb967));var __defProp=Object[_0x190067(0x121)],__name=(_0x3761f3,_0x10ee57)=>__defProp(_0x3761f3,'name',{'value':_0x10ee57,'configurable':!![]});import{copyFileSync,existsSync as _0x3107f1,mkdirSync,readFileSync,writeFileSync}from'fs';import{dirname as _0x54e4d7,join,resolve as _0x58a23b}from'path';import{fileURLToPath as _0x5c3614}from'url';import{existsSync as _0x3286b3}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){for(const _0x461259 of[probeChrome,probeEdge,probeChromeBeta]){const _0x176ba4=_0x461259();if(_0x176ba4['channel']!==null)return _0x176ba4;}return{'channel':null};}__name(probeSystemBrowser,'probeSystemBrowser');function probeChrome(){const _0x3cf211={_0x3dc405:0x150,_0x3f3c05:0x18c},_0x4ade00=_0x190067,_0x5d48c9=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x5d48c9)return{'channel':_0x4ade00(_0x3cf211._0x3dc405),'path':_0x5d48c9,'label':_0x4ade00(_0x3cf211._0x3f3c05)};return{'channel':null};}__name(probeChrome,_0x190067(0x154));function probeEdge(){const _0x5b4d6b=_0x190067,_0x1f65e5=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x1f65e5)return{'channel':_0x5b4d6b(0x192),'path':_0x1f65e5,'label':_0x5b4d6b(0x1f4)};return{'channel':null};}__name(probeEdge,_0x190067(0x18f));function probeChromeBeta(){const _0x38b374=_0x190067,_0x215daa=firstExistingPath(CHROME_BETA_PATHS);if(_0x215daa)return{'channel':_0x38b374(0x17e),'path':_0x215daa,'label':_0x38b374(0x15e)};return{'channel':null};}__name(probeChromeBeta,_0x190067(0x161));var CHROME_PATHS=((()=>{const _0x2551ad={_0x31b982:0x1aa,_0x324a53:0x15b,_0xde0599:0x1ea,_0x4fbdae:0x14d},_0x27c870=_0x190067;switch(process[_0x27c870(0x12c)]){case'darwin':return[_0x27c870(0x1b6)];case _0x27c870(_0x2551ad._0x31b982):return[process['env'][_0x27c870(0x13d)]+_0x27c870(_0x2551ad._0x324a53),process['env']['ProgramFiles(x86)']+'\x5cGoogle\x5cChrome\x5cApplication\x5cchrome.exe',process[_0x27c870(0x1c6)]['LOCALAPPDATA']+_0x27c870(0x15b)];default:return[_0x27c870(_0x2551ad._0xde0599),'/usr/bin/google-chrome-stable','/snap/bin/google-chrome',_0x27c870(0x11c),_0x27c870(_0x2551ad._0x4fbdae)];}})()),CHROME_BIN_NAMES=[_0x190067(0x1a5),_0x190067(0x13f),_0x190067(0x200),'chromium-browser'],EDGE_PATHS=((()=>{const _0x575d58={_0x497eb7:0x12c,_0x20e17e:0x15d,_0x5e1d2a:0x1ac,_0xd543b:0x1c6,_0x1726b2:0x13d,_0x44e9bc:0x1ff},_0x176afa=_0x190067;switch(process[_0x176afa(_0x575d58._0x497eb7)]){case _0x176afa(_0x575d58._0x20e17e):return[_0x176afa(_0x575d58._0x5e1d2a)];case _0x176afa(0x1aa):return[process[_0x176afa(_0x575d58._0xd543b)][_0x176afa(_0x575d58._0x1726b2)]+_0x176afa(_0x575d58._0x44e9bc),process[_0x176afa(_0x575d58._0xd543b)][_0x176afa(0x147)]+_0x176afa(0x1ff)];default:return['/usr/bin/microsoft-edge','/usr/bin/microsoft-edge-stable'];}})()),EDGE_BIN_NAMES=[_0x190067(0x16b),_0x190067(0x14c)],CHROME_BETA_PATHS=((()=>{const _0x5bbaf6={_0x16ffe5:0x12c,_0x3a09aa:0x15d,_0x31e69a:0x11e,_0x2f4218:0x13d,_0x2bc5d5:0x1f2},_0x3eb440=_0x190067;switch(process[_0x3eb440(_0x5bbaf6._0x16ffe5)]){case _0x3eb440(_0x5bbaf6._0x3a09aa):return[_0x3eb440(_0x5bbaf6._0x31e69a)];case _0x3eb440(0x1aa):return[process['env'][_0x3eb440(_0x5bbaf6._0x2f4218)]+'\x5cGoogle\x5cChrome\x20Beta\x5cApplication\x5cchrome.exe'];default:return[_0x3eb440(_0x5bbaf6._0x2bc5d5)];}})());function firstExistingPath(_0x59ccd8){const _0x34ae0e={_0x45ca65:0x165},_0x161856=_0x190067;for(const _0x1611e4 of _0x59ccd8){if(!_0x1611e4||_0x1611e4['startsWith'](_0x161856(_0x34ae0e._0x45ca65)))continue;if(existsSync(_0x1611e4))return _0x1611e4;}return null;}__name(firstExistingPath,_0x190067(0x1ba));function whichOf(_0x2afa64){const _0x1e1f79={_0x2a5646:0x191},_0x599435=_0x190067;if(process['platform']===_0x599435(0x1aa))return void 0x0;for(const _0x4060ef of _0x2afa64){try{const _0x2a9e8b=execFileSync('which',[_0x4060ef],{'encoding':_0x599435(0x17d)})[_0x599435(_0x1e1f79._0x2a5646)]();if(_0x2a9e8b['length']>0x0&&existsSync(_0x2a9e8b))return _0x2a9e8b;}catch{}}return void 0x0;}__name(whichOf,_0x190067(0x126));function runEnvironmentChecks(_0x10970b={}){const _0xa1939=_0x10970b['cwd']??process['cwd']();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0xa1939)];}__name(runEnvironmentChecks,'runEnvironmentChecks');function checkNodeVersion(){const _0xaf03d5={_0x12145c:0x159,_0x1ea128:0x122,_0x4eafbb:0x1eb},_0x20c788=_0x190067,_0x1515fc=process[_0x20c788(_0xaf03d5._0x12145c)][_0x20c788(_0xaf03d5._0x1ea128)],_0x39b434=Number(_0x1515fc[_0x20c788(_0xaf03d5._0x4eafbb)]('.')[0x0]);if(!Number[_0x20c788(0x19e)](_0x39b434)||_0x39b434<0x14)return{'name':'Node.js\x20version','severity':_0x20c788(0x1e0),'message':_0x20c788(0x1fc)+_0x1515fc+')','detail':_0x20c788(0x202)};return{'name':_0x20c788(0x181),'severity':'ok','message':_0x1515fc};}__name(checkNodeVersion,_0x190067(0x116));function _0x3f40(_0x5db66b,_0x5293a4){_0x5db66b=_0x5db66b-0x115;const _0x464bd4=_0x464b();let _0x3f4041=_0x464bd4[_0x5db66b];if(_0x3f40['GmSGqq']===undefined){var _0x3ab3f2=function(_0x32dbc8){const _0x56f8ec='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3107f1='',_0x54e4d7='';for(let _0x58a23b=0x0,_0x5c3614,_0x3286b3,_0x3761f3=0x0;_0x3286b3=_0x32dbc8['charAt'](_0x3761f3++);~_0x3286b3&&(_0x5c3614=_0x58a23b%0x4?_0x5c3614*0x40+_0x3286b3:_0x3286b3,_0x58a23b++%0x4)?_0x3107f1+=String['fromCharCode'](0xff&_0x5c3614>>(-0x2*_0x58a23b&0x6)):0x0){_0x3286b3=_0x56f8ec['indexOf'](_0x3286b3);}for(let _0x10ee57=0x0,_0x461259=_0x3107f1['length'];_0x10ee57<_0x461259;_0x10ee57++){_0x54e4d7+='%'+('00'+_0x3107f1['charCodeAt'](_0x10ee57)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x54e4d7);};_0x3f40['VsRJcy']=_0x3ab3f2,_0x3f40['xIBDpn']={},_0x3f40['GmSGqq']=!![];}const _0x40bedc=_0x464bd4[0x0],_0x36adf9=_0x5db66b+_0x40bedc,_0x114353=_0x3f40['xIBDpn'][_0x36adf9];return!_0x114353?(_0x3f4041=_0x3f40['VsRJcy'](_0x3f4041),_0x3f40['xIBDpn'][_0x36adf9]=_0x3f4041):_0x3f4041=_0x114353,_0x3f4041;}function checkSystemBrowser(){const _0x4d6807={_0x2f360c:0x1c9,_0x27a823:0x164},_0x34871d=_0x190067,_0x5022d0=probeSystemBrowser();if(_0x5022d0['channel']!==null)return{'name':'System\x20browser','severity':'ok','message':_0x5022d0[_0x34871d(0x172)]+_0x34871d(_0x4d6807._0x2f360c),'detail':_0x5022d0['path']};return{'name':_0x34871d(_0x4d6807._0x27a823),'severity':'warning','message':'no\x20Chrome\x20/\x20Edge\x20/\x20Chromium\x20detected','detail':'init\x20will\x20offer\x20to\x20download\x20bundled\x20Chromium\x20(~150\x20MB).\x20Alternatively,\x20install\x20Chrome\x20from\x20https://www.google.com/chrome\x20and\x20re-run.'};}__name(checkSystemBrowser,_0x190067(0x1cf));function checkWritableCwd(_0x536d6c){const _0x6bced0={_0x56f915:0x176,_0x2e8dfd:0x168,_0x234600:0x123,_0x5f27b2:0x117},_0x27a904=_0x190067;if(!_0x3286b3(_0x536d6c))return{'name':_0x27a904(0x117),'severity':_0x27a904(0x1e0),'message':_0x27a904(_0x6bced0._0x56f915)+_0x536d6c+_0x27a904(_0x6bced0._0x2e8dfd),'detail':_0x27a904(_0x6bced0._0x234600)};return{'name':_0x27a904(_0x6bced0._0x5f27b2),'severity':'ok','message':_0x536d6c};}__name(checkWritableCwd,_0x190067(0x1ad));var templates={'scenarioTemplate':_0x190067(0x13a),'agentsMd':_0x190067(0x1fd),'claudeMdBody':_0x190067(0x124),'examples':{'01-smoke.js':_0x190067(0x1af),'02-form-fill.js':'//\x20Example\x2002\x20—\x20fill\x20an\x20input\x20+\x20assert\x20the\x20app\x20reacted.\x0a//\x0a//\x20Against\x20playground.unotest.com/scenarios/big-table.\x20Demonstrates\x20getByRole\x0a//\x20for\x20a\x20labelled\x20input,\x20typed\x20input\x20via\x20fill(),\x20and\x20a\x20locator\x20method-chain\x0a//\x20(getByRole(\x27row\x27).filter({hasText}).first())\x20in\x20an\x20assertion.\x0a//\x20Run\x20with:\x20\x20npx\x20@unotest/web\x20e2e\x20examples/02-form-fill\x0a\x0afunction\x20test_form_fill_happy_path()\x20{\x0a\x20\x20step(\x22Filter\x20the\x20Big\x20Table\x20by\x20a\x20name\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27/scenarios/big-table\x27);\x0a\x20\x20\x20\x20fill(getByRole(\x27textbox\x27,\x20{name:\x20\x27Filter\x20by\x20name\x27}),\x20\x27Uma\x20Quinn\x27);\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Filtering\x20reveals\x20the\x20Clear\x20filter\x20control\x20and\x20matching\x20rows\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20assertVisible(getByRole(\x27button\x27,\x20{name:\x20\x27Clear\x20filter\x27}));\x0a\x20\x20\x20\x20assertVisible(getByRole(\x27row\x27).filter({hasText:\x20\x27Uma\x20Quinn\x27}).first());\x0a\x20\x20});\x0a}\x0a'},'secretsExample':_0x190067(0x198),'envExample':_0x190067(0x16e)};function unotestConfigMjs(_0x2cbed5){const _0x522864={_0xb46d93:0x1b2,_0x5f3818:0x130},_0x58fc9d=_0x190067,_0x591ae0=_0x2cbed5===void 0x0?'\x20\x20//\x20channel:\x20\x27chrome\x27,\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20\x27chrome\x27\x20/\x20\x27msedge\x27\x20/\x20null\x20(bundled)':'\x20\x20channel:\x20'+JSON[_0x58fc9d(0x1e6)](_0x2cbed5)+',';return _0x58fc9d(_0x522864._0xb46d93)+_0x591ae0+_0x58fc9d(_0x522864._0x5f3818);}__name(unotestConfigMjs,_0x190067(0x17f));function _0x464b(){const _0x1e22e7=['4PQGic0TyNjVD3nLCIbUB25LiokaLcbUBYbICM93C2vYignVBMzPz3vYzwqUifj1BIbVBMuGB2y6','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','y2HLy2TxCML0ywjSzun3za','icdIGkiGuNvUigfUigv4yw1WBguGywDHAw5ZDcb0AguGCgXHEwDYB3vUzdOkicaGicaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdeTC21VA2ukicdIGkiGtgLUDcb5B3vYihnJzw5HCMLVCZOkicaGicaGBNb4ieb1BM90zxn0l3DLyIbSAw50cIaG4OcIifDYAxrLigeGDgvZDdOGB3bLBIbdBgf1zguGq29KzsbOzxjLigfUzcbHC2SG4OcuigL0igzVBgXVD3mGDgHLcIaGicaGihDYAxrLlwuYzs10zxn0ihnRAwXSigfUzcbKCML2zxmGDgHLihvUB3rLC3qTD2vIie1ducbZzxj2zxiUcIaGicaGicGUBwnWlMPZB24GkYbdtefvreuUBwqVquDftLrtlM1KihDLCMuGANvZDcb3AxjLzcbMB3iGEw91lIKkicdIGkiGqwXYzwfKEsbPBNnPzguGyw4GywDLBNqGC2vZC2LVBJ8GuMvZDgfYDcbPDcaOB3iGCMvJB25Uzwn0ihzPyqOGicaGicaVBwnWksdIGjqGtunqignSAwvUDhmGBg9HzcaUBwnWlMPZB24GC2vYDMvYCYbHDcbZzxnZAw9Uihn0yxj0laOGicaGicbZBYb0AguGDw5VDgvZDc13zwiGDg9VBhmGyxbWzwfYig9UBhKGAw4GysbMCMvZAcbZzxnZAw9UlGOGiokaOIbezwj1zYb0AguGywDLBNq6igXHDw5JAcb3AxrOifvot1rfu1rFrevcvuC9msb0BYb0CMfJzsbLDMvYEqOGicaGicbHy3rPB24GDg8GDw5VDgvZDc8UzgvIDwCVywDLBNqVywn0Aw9UCY5QC29UBc4k','lY8GrxHHBxbSzsaWmsdIGjqGC21VA2u6ig5HDMLNyxrLicSGy2XPy2SGkYbvuKWGyxnZzxj0Aw9UlGOVlWOVlYbuAguGBwLUAw1HBcb0AhjLzs1ZDgvWihbHDhrLCM4UieHPDhmGCgXHEwDYB3vUzc51BM90zxn0lMnVBsbZBYbUBYbWCM9Qzwn0cI8VihnLDhvWigLZig5LzwrLzc4GuNvUihDPDgG6icbUChGGqhvUB3rLC3qVD2vIiguYzsbLEgfTCgXLCY8Wms1ZBw9RzqOkzNvUy3rPB24GDgvZDf9ZBw9Rzv9WBgf5z3jVDw5KkcKGEWOGihn0zxaOiK9Wzw4GDgHLiejPzYbuywjSzsbZy2vUyxjPBYbMCM9TihrOzsbWBgf5z3jVDw5KigLUzgv4iIWGkcKGpt4GEWOGicaGz290BYGNlYCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDSAw5RjYWGE25HBwu6icDcAwCGvgfIBguNlcbLEgfJDdOGDhj1zx0PktSkicaGigfZC2vYDfvYBcGNl3nJzw5HCMLVCY9IAwCTDgfIBguNktSkicb9ktSkFqO','icbeB3DUBg9HzcbIDw5KBgvKienOCM9TAxvTicH+mtuWie1ckt8','Dw5VDgvZDc8UC2vJCMv0CYO','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWO','icaGig5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BsaGicaGicHKB3DUBg9HzhmGyNvUzgXLzcbJAhjVBwL1BsK','AxnbCNjHEq','Dw5VDgvZDc9LmMuVx2HLBhbLCNmVlMDPDgTLzxa','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','BMv3q29UDgvUDa','Cgf1C2u','4PYtig92zxj3CM90zq','zMLYC3rfEgLZDgLUz1bHDgG','y2HVB3nLqNjVD3nLCG','ls1ICM93C2vY','BwvZC2fNzq','4PQGie5VigjYB3DZzxiGy29UzMLNDxjLzc4GuNvUig9UzsbVzIbIzwzVCMuGzMLYC3qGDgvZDdO','lM1JCc5QC29U','rw52AxjVBM1LBNq6cG','AxnuvfK','zgv0ywLS','cKnSyxvKzsbdB2rLihbLCM1PC3nPB25ZoGO','cIaGtM8GC3LZDgvTienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbKzxrLy3rLzc4k','BwvYz2vdBgf1zgviB29RCW','zw52','y3DK','BgvUz3rO','igzVDw5K','icdINjCG','zxHPDa','ywrKzwqGywXSB3CGzw50CMLLCZOG','Aw50zxjHy3rPDMu','C2TPBgWGkgDYB3vUzcK','y2HLy2TtExn0zw1cCM93C2vY','4PYxic0TyNjVD3nLCIbZExn0zw0GyNv0ig5VienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbMB3vUzcbVBIb0AgLZig1Hy2HPBMuU','ntiXmZf6te5fA20','CgvYBwLZC2LVBNm','DxbKyxrLza','WRCGC2TPChbLza','Dw5VDgvZDc9LmMuVx3rLBxbSyxrLlMPZ','yNvUzgXLza','CMvZDw1L','mJC3nte2mfn5y1vwsW','mtq3mZeYmfrvru9MrW','C3rKB3v0v3jPDgu','iokaLcb1C2LUzYbJAgfUBMvSicC','DgHLBG','cI5NAxrPz25VCMu6cG','yMLU','zw52rxHHBxbSzq','zxjYB3i','otuZmJaZEuTUr1Hc','ChvZAa','Dw5VDgvZDc13zwiGAw5PDcdIHPiG','D2fYBMLUz3m','Dw5VDgvZDc8Uzw52kG','C3rYAw5NAwz5','C3rHDhvZ','mJeZnZu1mK91C3vSrG','BMfTzq','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','C3bSAxq','Dw5VDgvZDc8Uzw52','icaGicaG','CgLWzq','u2vZC2LVBKvUza','AM9PBG','Dw5VDgvZDc8Uzw52lMv4yw1WBgu','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','CMvZB2X2zq','twLJCM9ZB2z0ievKz2u','icbVCIbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LlG','u3vIywDLBNrtDgfYDa','zM9Yy2u','icbsDw4Gyg5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BwaGDg8Gzg93BMXVywqGDgHLigj1BMrSzwqGzMfSBgjHy2SS','twnWsNnVBLbHCNnLrxjYB3i','sw5ZDhj1y3rPB25Ztg9HzgvK','cKzPBgvZoGO','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','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','y2HYB21PDw0','ywXYzwfKEs1WCMvZzw50','sw5ZDgfSBcboB2rLidiWkYb2AweGBNzTic8GzM5Tic8GDM9SDgeGyw5KihjLlxj1BI4','y2HHBM5LBdOGjW','zxHLy1bHDgG','C2XPy2u','ywDLBNrZtwq','lI4VlI4VCgfJA2fNzs5QC29U','Cgf0Aa','BwvYz2vdBgf1zgvnza','icaGigLUC3rHBgWGq2HYB21LoIaGAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','yMfZAcaIjhTdtefvrevFufjpsKvdvf9esvj9lY5JBgf1zguVAg9VA3mVBg9NlwfNzw50lNnOiIaIjhTdtefvrevFufjpsKvdvf9esvj9l3vUB3rLC3qVlMrLyNvNl2fNzw50l2fJDgLVBNmUANnVBMWI','icdIHPiGzg93BMXVywrPBMCGyNvUzgXLzcbdAhjVBwL1BsaOFJe1mcbnqINIGkyk','y29TBwfUza','icbjBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4GAw5PDc4','CgXHExDYAwDODa','B3zLCNDYB3rL','Dw5Yzwy','u3rVCa','ChjVBxb0wwvZtM8','y2HLy2ToB2rLvMvYC2LVBG','vgfYz2v0igrPCMvJDg9YEq','yxbWzw5Kzwq','zw5KC1DPDgG','mMHbr0Lwrq','CgXHExDYAwDODc9WywnRywDLlMPZB24GAgfZig5VihvZywjSzsaIyMLUiIbMAwvSza','l3vZCI9IAw4Vy2HYB21PDw0','Dw5VDgvZDc5JB25MAwCUBwPZ','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','zxHPDenVzgu','Dw5VDgvZDc13zwi','zgvMAw5LuhjVCgvYDhK','BM9Kzq','q3jLyxrLihrOzsbKAxjLy3rVCNKGB3iGCNvUigLUAxqGAw4Gyw4GzxHPC3rPBMCGChjVAMvJDcbYB290lG','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','C2nLBMfYAw9uzw1WBgf0zq','D2HPy2HpzG','C3rKzxjY','y2XHDwrLtwrcB2r5','CgfYC2vbCMDZ','C3rHCNrZv2L0Aa','y2f0y2G','CgXHDgzVCM0','icdcTYbUBYbJAgfUz2vZig5LzwrLzaO','CgXHExDYAwDODc9WywnRywDLlMPZB24','4PYtignYzwf0zwq','cIaGlY8GDMLLD2vYoIb7cIaGlY8GicbWB3j0oIa1mtCZlcaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGic8VigrLzMf1Bhq6ihjHBMrVBsbMCMvLihbVCNqkicaVlYaGigjYB3DZzxi6ihrYDwuSicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGDhj1zsaOyxv0BY1VCgvUig9Uigb2Awv3zxjGkqOGic8Vih0ScN07cG','ifT5l05Dia','cKzPEcb0AguGzxjYB3jZigfIB3zLigfUzcbYzs1YDw4UcG','Dw5VDgvZDc8UC2vJCMv0CW','ug9ZDfrVB2XvC2vgywLSDxjL','y2HHBM5LBa','icdINjmG','Bg9NlwfNzw50lNnO','ywXYzwfKEvbYzxnLBNq','lMnSyxvKzs9ZA2LSBhmVD3jPDguTztjLlxrLC3qVu0TjteWUBwq','lY8Gtw92zsaRihjLBMfTzsb0AgLZigzPBguGDg8GpgzLyxr1CMu+lZX5B3vYx25HBwu+lMPZicHLlMCUcI8Vigf1DgGVBg9NAw4UANmPigfUzcb0AguGzNvUy3rPB24GyMvSB3CGDg8GDgvZDf88Ew91CL9Uyw1LpIGPlIbty2vUyxjPB3mGBgL2zqOVlYbPBIbMzwf0DxjLihn1yMzVBgrLCNmSie5pvcb0AguGztjLihjVB3qG4OcuihrOzsbSAw50zxiGkgXPBNq6C2nLBMfYAw8TAw4TCM9VDcKklY8GCMvQzwn0CYbHihrLC3qGzMLSzsbWBgfJzwqGzgLYzwn0BhKGAw4GDw5VDgvZDc9LmMuVlIbuAguGBg9HzgvYigrLCML2zxmGDgHLcI8VigvUDhj5ig5HBwuGzNjVBsb0AguGzMLSzsbIyxnLBMfTzsdIGjqGA2vIywiTy2fZzsbKyxnOzxmGyMvJB21LihvUzgvYC2nVCMvZlGOklY8GrxzLCNKGzxHLy3v0ywjSzsbZDgvWig11C3qGC2L0igLUC2LKzsbHihn0zxaOiI4UlIiSicGPid0+ihSG4OcMih0PigjSB2nRlIbuAguklY8GDgL0BguGAxmGysbWBgfPBI1fBMDSAxnOigrLC2nYAxb0Aw9Uig9MihrOzsbNCM91CdSGDgHLihn0zxbZigLUC2LKzsbHCMuklY8GDgHLigLTCgXLBwvUDgf0Aw9UlIbhCM91CcbIEsbPBNrLBNqGkfnLDhvWic8Grw50zxiGlYbby3qGlYbbC3nLCNqGB3iklY8GD2HHDgv2zxiGCMvHzhmGD2vSBcKG4Ocuig9UzsbIBg9JAYbWzxiGBg9NAwnHBcbJAhvUAY4kcMz1BMn0Aw9UihrLC3rFEw91CL9Uyw1Lx2HLCMuOksb7cIaGC3rLCcGIu2vLzcbHigTUB3DUihvZzxiGDMLHiercic8GqvbjigzPEhr1CMvZigzYB20Gx2HLBhbLCNmViIWGkcKGpt4GEWOGicaGlY8GicaGD2LWzv9LmMvFDxnLCNmOktSkicaGic8VicaGihvZzxjFAwqGpsbZzwvKx3vZzxiOj2fSAwnLqgv4yw1WBguUy29TjYWGj3nLy3jLDcCPoWOGih0PoWOkicbZDgvWkcjtAwDUigLUigfZihrOzsbZzwvKzwqGDxnLCIiSicGPid0+ihSkicaGigDVDg8Oj2H0DhbZoI8VEw91CI1HChaUDgvZDc9SB2DPBICPoWOGicaGlY8GicaGzMLSBcHNzxrcEuXHyMvSkcDfBwfPBcCPlcaNywXPy2vazxHHBxbSzs5JB20NktSkicaGic8VicaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGj3nLy3jLDcCPoWOGicaGlY8GicaGy2XPy2SOz2v0qNLsB2XLkcDIDxr0B24Nlcb7BMfTztOGj0XVzYbPBID9ksK7cIaGFsK7cGOGihn0zxaOiKfZC2vYDcb0AguGzgfZAgjVyxjKihnOB3DZihrOzsbZAwDUzwqTAw4GDxnLCIiSicGPid0+ihSkicaGic8VicaGigfZC2vYDfvYBcGNl2rHC2HIB2fYzcCPoWOGicaGlY8GicaGyxnZzxj0vgv4DcHNzxrcEvjVBguOj2HLywrPBMCNksWGj1DLBgnVBwuSiefSAwnLjYK7cIaGicaVlYaGicbJB3vUDca9igrIuxvLCNKOj1nftevdvcbJB3vUDcGQksbguK9nihvZzxjZifDirvjfigfJDgL2zsa9ihrYDwuNktSkicaGic8VicaGigfZC2vYDfrYDwuOy291BNqGpIaWlcaNzxHWzwn0zwqGyxqGBgvHC3qGB25LigfJDgL2zsb1C2vYjYK7cIaGFsK7cN0k','y3jLyxrLza','BM9Kzv9TB2r1BgvZlW','uhjVz3jHBuzPBgvZ','C3rKAw4','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','C2TPChbLza','mZzlvMPctfK','CMvHze93BLzLCNnPB24','zgf0yq','lMnSyxvKzs9Zzxr0Aw5NCY5QC29U','icaGigLUC3rHBgWGq2HYB21LigzYB20GAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','ls1MB3jJzq','uhjVz3jHBuzPBgvZkhG4nIK','Ag9VAW','Aw5ZDgfSBenOCM9TAxvT','Aw5JBhvKzxm','lMnSyxvKzs9ZA2LSBhmVD3jPDguTztjLlxrLC3qTz3jVDw5Kl1nlsuXmlM1K','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','igv2zw50CZSGBg9NCYb0BYb1BM90zxn0lY5Kzwj1zY9Hz2vUDc8GDw5KzxiGvu5pvevtvf9erujvrYK','ywn0Aw9U','y2HYB21L','u2vZC2LVBLn0yxj0','C3LTyM9S','lI4VlI4V','ChjVyMvdAhjVBwu','B25fBMq','vxnLCLbYB21WDfn1yM1PDa','CNvUsw5PDa','zw5K','DMvYC2LVBNm','q2XHDwrLu2v0DgLUz3nqyxjZzuvYCM9Y','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','Dw5VDgvZDc8UDMLLD2vYlMXVzW','zgfYD2LU','r29Vz2XLienOCM9TzsbczxrH','ndLywhv2sgK','D3jPDgvjzKfIC2vUDa','ChjVyMvdAhjVBwvczxrH','D3jPDgvjzK5LzwrLza','ChjVyMu','u3LZDgvTigjYB3DZzxi','Dw5KzwzPBMvK','igHHCYbUBYb1C2fIBguGiNzLCNnPB24IigzPzwXK','u3vIywDLBNrtDg9W','igrVzxmGBM90igv4Axn0','zMLUAxnO','ywrKzwqGDw5VDgvZDc13zwiGzw50CNK','BwLJCM9ZB2z0lwvKz2u','q0XbvurflM1K','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','nJu5mJe1u0XMt0DR','CgfYC2u','4PQGig5VBI1PBNrLCMfJDgL2zsbZAgvSBcbHBMqGBM8GC3LZDgvTigjYB3DZzxiGzM91BMqU','BgfIzwW','icdINjmGDw5VDgvZDc5JB25MAwCUBwPZia','C29Tzq','icbvC2uGAw5ZDgfSBgvKia','DgfYz2v0ia','ixvUB3rLC3qVlMvUDI5LEgfTCgXL','B25eyxrH','lNvUB3rLC3qV','y3jLyxrLzcaUy2XHDwrLl3nLDhrPBMDZlMPZB24GkgfSBg93oIbTy3bFx3vUB3rLC3qTD2vIkq','BwnWu2vYDMvYCW','uhjLvg9VBfvZzq','DxrMoa','y2HYB21LlwjLDge','Dw5VDgvZDenVBMzPz01QCW','ywXSB3C','tM9Kzs5QCYb2zxjZAw9U','yNjVD3nLCK92zxjYAwrL','Dg9tDhjPBMC','C3rKB3v0','icdINjmGC3LZDgvTia','ihnVDxjJzsbTAxnZAw5NiokaLcbWywnRywDLigLUC3rHBgWGyNvNpW','DMvYC2LVBG','cIaG4OAsigrVD25SB2fKAw5Nigj1BMrSzwqGq2HYB21PDw3IGkyk','BNb4','icdcTYbHBhjLywr5ihbYzxnLBNqGiG','Aw5ZDgfSBa','r29Vz2XLienOCM9Tzq','zw5ZDxjLrgLY','pceTlsb1BM90zxn0oMvUzcaTlt4','ChjVyMvfzgDL','BM9Uzq','DhjPBq','BxnLzgDL','mJu2odG2mJbkrvnXEKG','Aw5KzxHpzG','cKrVBMuUie5LEhqGC3rLChm6cG','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','Dw5VDgvZDc8UDMLLD2vYlMXVy2S','iYb1BM90zxn0lxDLyIdIGjqGC2vJCMv0ihnJzw5HCMLVihzHCMLHyMXLCY4Gq3jLyxrLzcbIEsbGAw5PDgaSigDPDgLNBM9YzwqUcImkiYbtyw1LieTfwt1wquXvrsbMB3jTyxqGyxmGDw5VDgvZDc8Uzw52lcbIDxqGDMfSDwvZigHLCMuGyxjLihrYzwf0zwqGyxmkiYbtrunsrvq6ihrOzxKGyxjLig1HC2TLzcaOC2HVD24GyxmGyokaUxnLy3jLDdPlrvNIGlPGksbHBNL3AgvYzsb0AguGCNvUBMvYig9YcImGtunqigrLyNvNigXVzYb3B3vSzcbVDgHLCNDPC2uGD3jPDguGDgHLBsdIGjqGzMLSBcGPihzHBhvLCYWGvvjmCYWGzxzHBhvHDgukiYbZDhjPBMDZlIbszwzLCMvUy2uGDgHLBsbPBIbHihnJzw5HCMLVigj5ihrOzwLYigjHCMuGvvbqrvjFu05bs0uGBMfTzsWGDgHLcImGC2fTzsb3yxKGyxmGlMvUDIb2yxjPywjSzxm6cImkiYaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGueftu1DpuKqPoWOJcImGu2vJCMv0CYbHCMuGtK9uigv4Cg9YDgvKihrVihn1yNbYB2nLC3nLCYaOC2HLBgWOksKG4OcuihrOzxKGC3rHEsbPBIb0AgukiYb2yxjPywjSzsbZDg9Yzs4GqsbZDwjWCM9JzxnZihrOyxqGz2vUDwLUzwX5ig5LzwrZig9UzsaOysbSAxn0zw5LCIb3AxrOigekiYb0B2TLBIKGz2v0CYbPDcb2AweGDgHLigv4CgXPy2L0igfSBg93BgLZDcbPBIb1BM90zxn0lMnVBMzPzY4QoGOJicaGC2fUzgjVEdOGEYbLEhbVCNrtzwnYzxrZoIbBj1rps0voj10GFqOJifb1DcbUB24TC2vJCMv0ihzHBhvLCYaOvvjmCYWGzw1HAwXZlcbPzhmPigLUihvUB3rLC3qVlMvUDI4kiWOJiezmruvux0vyqu1qteukte9hsu49cLbbu1nxt1jepqPut0TftJ0k','ywrKzwq','B3zLCNjPzgu','C3rYAw5N','CMvTB3zLtgLZDgvUzxi','yxjNDG','AxngAw5PDgu','Ag9VA3m','D3jPDgu','cIaGrM91BMqG','ls1ICM93C2vYigv4CgvJDhmGC3LZDgvTFgj1BMrSzwr8BM9UzsWGz290ia','B3zLCNDYB3rLihvUB3rLC3qTD2vIigvUDhj5','ifTzl25Dia','z29Vz2XLlwnOCM9Tzq','4PYxigLUC3rHBgWTy2HYB21PDw06ia','lIbgAxGGB3iGCMvTB3zLihrOzsbMAwXLigfUzcbYzs1YDw4GAw5PDc4','pceTlsb1BM90zxn0oMjLz2LUicHTyw5Hz2vKigj5ieb1BM90zxn0l3DLyIbPBML0iokaLcbKBYbUB3qGzwrPDcbPBNnPzguPic0TpG','qhvUB3rLC3qVD2vIqa','D2LUmZi'];_0x464b=function(){return _0x1e22e7;};return _0x464b();}function promptYesNo(_0x49457c,_0x201c1b){const _0x4d028f={_0x347392:0x1a4},_0x121f0b={_0x554e40:0x178,_0x26efc3:0x184,_0x3f84eb:0x13e,_0xe5b867:0x143},_0x3fe83c=_0x190067,_0x39e077=_0x201c1b?_0x3fe83c(_0x4d028f._0x347392):_0x3fe83c(0x131);return new Promise(_0x40db68=>{const _0x49a9a2={_0x23eeee:0x19c,_0x2d5c3a:0x158,_0x4a97c1:0x1b8,_0x3b3794:0x13e,_0x3113c6:0x211},_0x2eac08=_0x3fe83c;let _0x230354=![];const _0x4356a7=__name(_0x526301=>{const _0x1c4832=_0x3f40;if(_0x230354)return;_0x230354=!![],process['stdin'][_0x1c4832(_0x49a9a2._0x23eeee)]('data',_0x440465),process['stdin'][_0x1c4832(0x19c)](_0x1c4832(_0x49a9a2._0x2d5c3a),_0x5cc4f7),process[_0x1c4832(0x13e)][_0x1c4832(_0x49a9a2._0x4a97c1)](),process[_0x1c4832(_0x49a9a2._0x3b3794)][_0x1c4832(_0x49a9a2._0x3113c6)](),_0x40db68(_0x526301);},_0x2eac08(0x169)),_0x440465=__name(_0x878e65=>{const _0x554bfe=_0x2eac08,_0x596bab=typeof _0x878e65==='string'?_0x878e65:_0x878e65['toString'](_0x554bfe(0x17d)),_0x188d28=_0x596bab[_0x554bfe(0x194)]('\x0a');if(_0x188d28<0x0)return;const _0x587d9b=_0x596bab[_0x554bfe(0x205)](0x0,_0x188d28)['trim']()['toLowerCase']();if(_0x587d9b==='')return _0x4356a7(_0x201c1b);_0x4356a7(_0x587d9b==='y'||_0x587d9b==='yes');},_0x2eac08(_0x121f0b._0x554e40)),_0x5cc4f7=__name(()=>_0x4356a7(_0x201c1b),_0x2eac08(0x155));process[_0x2eac08(_0x121f0b._0x26efc3)][_0x2eac08(0x1a0)](_0x49457c+_0x39e077),process[_0x2eac08(_0x121f0b._0x3f84eb)]['on'](_0x2eac08(_0x121f0b._0xe5b867),_0x440465),process[_0x2eac08(_0x121f0b._0x3f84eb)]['on'](_0x2eac08(0x158),_0x5cc4f7),process[_0x2eac08(0x13e)][_0x2eac08(0x1d7)]();});}__name(promptYesNo,_0x190067(0x115));import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0xdf91d0={}){const _0x3838ab={_0x4abbee:0x1da,_0x341b94:0x12e,_0x56d8b4:0x19b,_0x23ca53:0x1de,_0x525495:0x11b},_0x59a385={_0x490820:0x204,_0x16884f:0x18b,_0x41f0b6:0x1ee,_0x51a328:0x184,_0x4375e4:0x143,_0x59dd80:0x1e0,_0x23f133:0x1cb},_0x37b77c=_0x190067,_0x497c20=_0xdf91d0[_0x37b77c(_0x3838ab._0x4abbee)]??(_0x2476e4=>process[_0x37b77c(0x184)][_0x37b77c(0x1a0)](_0x2476e4)),_0x530bca=createRequire(import.meta.url),_0x309b7a=_0x530bca[_0x37b77c(0x1f3)](_0x37b77c(_0x3838ab._0x341b94)),_0x118a4f=_0x530bca(_0x309b7a),_0x24ca4d=typeof _0x118a4f['bin']===_0x37b77c(_0x3838ab._0x56d8b4)?_0x118a4f[_0x37b77c(_0x3838ab._0x23ca53)]:_0x118a4f['bin']?.[_0x37b77c(0x20f)];if(!_0x24ca4d)throw new Error(_0x37b77c(_0x3838ab._0x525495));const _0x58057a=resolve(dirname(_0x309b7a),_0x24ca4d);return new Promise((_0x50b649,_0x4c42ba)=>{const _0x23fb5f=_0x37b77c,_0xd9f875=spawn(process[_0x23fb5f(_0x59a385._0x490820)],[_0x58057a,_0x23fb5f(_0x59a385._0x16884f),_0x23fb5f(0x200)],{'stdio':['inherit','pipe',_0x23fb5f(_0x59a385._0x41f0b6)]});_0xd9f875[_0x23fb5f(_0x59a385._0x51a328)]?.['on'](_0x23fb5f(_0x59a385._0x4375e4),_0x19c8ef=>_0x497c20(_0x19c8ef[_0x23fb5f(0x183)]())),_0xd9f875[_0x23fb5f(0x127)]?.['on'](_0x23fb5f(0x143),_0x4e4c23=>_0x497c20(_0x4e4c23['toString']())),_0xd9f875['on'](_0x23fb5f(_0x59a385._0x59dd80),_0x4c42ba),_0xd9f875['on'](_0x23fb5f(_0x59a385._0x23f133),_0x433e1b=>{if(_0x433e1b===0x0)_0x50b649();else _0x4c42ba(new Error('chromium\x20download\x20exited\x20with\x20code\x20'+_0x433e1b));});});}__name(installChromium,_0x190067(0x149));async function runInstallChromiumCli(){const _0x52e2ab={_0x2ff573:0x1a6,_0x45b976:0x1bd},_0x457124=_0x190067;try{return await installChromium(),0x0;}catch(_0x1e1f3c){return process[_0x457124(0x127)][_0x457124(0x1a0)](_0x457124(_0x52e2ab._0x2ff573)+(_0x1e1f3c instanceof Error?_0x1e1f3c[_0x457124(_0x52e2ab._0x45b976)]:String(_0x1e1f3c))+'\x0a'),0x1;}}__name(runInstallChromiumCli,'runInstallChromiumCli');var invokedDirectly=process[_0x190067(0x19d)][0x1]&&fileURLToPath(import.meta.url)===process[_0x190067(0x19d)][0x1];invokedDirectly&&runInstallChromiumCli()[_0x190067(0x1dc)](_0x3ea797=>process[_0x190067(0x1cb)](_0x3ea797));async function chooseBrowser(_0x2c0ded){const _0x358627={_0x53b121:0x19a,_0x370586:0x163,_0x2d1bf1:0x185,_0x5dd528:0x163,_0x52db7c:0x1d0,_0x10110f:0x20e,_0x4a4e06:0x1d6,_0xeb1fb8:0x1cd,_0x14ed20:0x136,_0x49144b:0x163,_0x5eb026:0x163,_0x1e1833:0x1a1,_0x1bc9e1:0x172,_0x1576cd:0x175,_0x55c16e:0x1c4,_0x2f8991:0x188,_0x18bcfb:0x1be,_0x242286:0x1b3},_0x48c075=_0x190067,_0x3bb16c=_0x2c0ded[_0x48c075(0x1da)]??(_0x1b9923=>process['stdout'][_0x48c075(0x1a0)](_0x1b9923));if(_0x2c0ded[_0x48c075(_0x358627._0x53b121)]==='system'){if(_0x2c0ded[_0x48c075(_0x358627._0x370586)]['channel'])return _0x3bb16c(_0x48c075(_0x358627._0x2d1bf1)+_0x2c0ded[_0x48c075(_0x358627._0x370586)]['label']+'\x20('+_0x2c0ded[_0x48c075(_0x358627._0x5dd528)][_0x48c075(0x208)]+')\x0a'),{'channel':_0x2c0ded['probe'][_0x48c075(0x135)],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x48c075(_0x358627._0x52db7c),_0x48c075(_0x358627._0x10110f)]};}if(_0x2c0ded[_0x48c075(_0x358627._0x53b121)]===_0x48c075(_0x358627._0x4a4e06))return _0x3bb16c(_0x48c075(0x20c)),await installChromium({'stdoutWrite':_0x3bb16c}),{'channel':null,'installedBundled':!![],'warnings':[]};if(_0x2c0ded[_0x48c075(0x19a)]===_0x48c075(0x190))return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x48c075(0x1ab),_0x48c075(0x1b3),_0x48c075(0x20a)]};if(!_0x2c0ded[_0x48c075(_0x358627._0xeb1fb8)]){if(_0x2c0ded['probe'][_0x48c075(0x135)])return _0x3bb16c(_0x48c075(_0x358627._0x14ed20)+_0x2c0ded[_0x48c075(_0x358627._0x49144b)][_0x48c075(0x172)]+'\x20found\x20at\x20'+_0x2c0ded[_0x48c075(_0x358627._0x5dd528)]['path']+_0x48c075(0x1db)+_0x2c0ded[_0x48c075(0x163)][_0x48c075(0x135)]+'\x27\x0a'),{'channel':_0x2c0ded[_0x48c075(_0x358627._0x49144b)][_0x48c075(0x135)],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x48c075(0x171),_0x48c075(0x1f8),_0x48c075(0x1f5)]};}if(_0x2c0ded[_0x48c075(_0x358627._0x5eb026)][_0x48c075(0x135)]){_0x3bb16c(_0x48c075(_0x358627._0x1e1833)+_0x2c0ded[_0x48c075(0x163)][_0x48c075(_0x358627._0x1bc9e1)]+'\x20at\x20'+_0x2c0ded[_0x48c075(_0x358627._0x5dd528)][_0x48c075(0x208)]+'\x0a');const _0x559cdf=await promptYesNo(_0x48c075(_0x358627._0x1576cd)+_0x2c0ded['probe'][_0x48c075(0x172)]+'?',!![]);if(_0x559cdf)return{'channel':_0x2c0ded[_0x48c075(0x163)]['channel'],'installedBundled':![],'warnings':[]};}else _0x3bb16c(_0x48c075(_0x358627._0x55c16e));const _0x1879c3=await promptYesNo(_0x48c075(0x1b0),!![]);if(_0x1879c3)return _0x3bb16c(_0x48c075(_0x358627._0x2f8991)),await installChromium({'stdoutWrite':_0x3bb16c}),{'channel':null,'installedBundled':!![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x48c075(_0x358627._0x18bcfb),_0x48c075(_0x358627._0x242286),_0x48c075(0x145)]};}__name(chooseBrowser,_0x190067(0x1bb));var McpJsonParseError=class extends Error{static{__name(this,_0x190067(0x1f9));}constructor(_0x1c24ab){const _0x1345df={_0x32d69f:0x1f9},_0x28ee39=_0x190067;super(_0x1c24ab),this[_0x28ee39(0x1e9)]=_0x28ee39(_0x1345df._0x32d69f);}};function mergeMcpConfig(_0xc44af5,_0x22345e,_0x2edb0a,_0x2d0c7d={}){const _0x38cb4b={_0x3a87ce:0x170,_0x3849e6:0x1bd,_0x57a1bf:0x1a7,_0x3163cc:0x17b,_0x5ab92c:0x1f7,_0x1f9b64:0x17b,_0x6c41d8:0x1e6},_0x45cf2d=_0x190067;if(_0xc44af5===null){const _0x14b01e=JSON[_0x45cf2d(0x1e6)]({'mcpServers':{[_0x22345e]:_0x2edb0a}},null,0x2)+'\x0a';return{'action':_0x45cf2d(0x13b),'newContent':_0x14b01e};}let _0x1bacb6;try{_0x1bacb6=JSON[_0x45cf2d(_0x38cb4b._0x3a87ce)](_0xc44af5);}catch(_0x210201){throw new McpJsonParseError('Failed\x20to\x20parse\x20.mcp.json\x20as\x20JSON:\x20'+_0x210201[_0x45cf2d(_0x38cb4b._0x3849e6)]+_0x45cf2d(_0x38cb4b._0x57a1bf));}(!_0x1bacb6[_0x45cf2d(0x17b)]||typeof _0x1bacb6[_0x45cf2d(_0x38cb4b._0x3163cc)]!=='object')&&(_0x1bacb6['mcpServers']={});const _0x23e059=_0x22345e in _0x1bacb6[_0x45cf2d(_0x38cb4b._0x3163cc)];if(_0x23e059&&!_0x2d0c7d[_0x45cf2d(_0x38cb4b._0x5ab92c)])return{'action':_0x45cf2d(0x201),'newContent':_0xc44af5};_0x1bacb6[_0x45cf2d(_0x38cb4b._0x1f9b64)][_0x22345e]=_0x2edb0a;const _0x4687eb=JSON[_0x45cf2d(_0x38cb4b._0x6c41d8)](_0x1bacb6,null,0x2)+'\x0a';return{'action':_0x23e059?'force-overwrote':'added','newContent':_0x4687eb};}__name(mergeMcpConfig,'mergeMcpConfig');var ClaudeSettingsParseError=class extends Error{static{__name(this,_0x190067(0x15a));}constructor(_0x3472d6){const _0x520687=_0x190067;super(_0x3472d6),this['name']=_0x520687(0x15a);}};function mergeClaudeAllowEntries(_0x2e6c15,_0x103b89){const _0x553fdc={_0x2941ff:0x170,_0x43499b:0x1bd,_0x4f4714:0x1d2,_0x18bc3c:0x1e2,_0x1b8cde:0x1e2,_0x5ecfff:0x180,_0x2044bb:0x201,_0x3bfa10:0x1e6,_0x5ec3aa:0x199},_0x559209=_0x190067;if(_0x2e6c15===null){const _0x185a21=JSON['stringify']({'permissions':{'allow':[..._0x103b89]}},null,0x2)+'\x0a';return{'action':'created','newContent':_0x185a21,'added':[..._0x103b89]};}let _0x77956f;try{_0x77956f=JSON[_0x559209(_0x553fdc._0x2941ff)](_0x2e6c15);}catch(_0x4d8fc8){throw new ClaudeSettingsParseError(_0x559209(0x1fe)+_0x4d8fc8[_0x559209(_0x553fdc._0x43499b)]+_0x559209(0x1a7));}(!_0x77956f[_0x559209(_0x553fdc._0x4f4714)]||typeof _0x77956f['permissions']!=='object')&&(_0x77956f[_0x559209(0x1d2)]={});const _0x5c36dd=Array[_0x559209(0x1b4)](_0x77956f[_0x559209(0x1d2)]['allow'])?_0x77956f[_0x559209(0x1d2)][_0x559209(0x180)]:[],_0x3c2e31=[];for(const _0xeb04de of _0x103b89){!_0x5c36dd[_0x559209(0x14a)](_0xeb04de)&&(_0x5c36dd[_0x559209(_0x553fdc._0x18bc3c)](_0xeb04de),_0x3c2e31[_0x559209(_0x553fdc._0x1b8cde)](_0xeb04de));}_0x77956f[_0x559209(0x1d2)][_0x559209(_0x553fdc._0x5ecfff)]=_0x5c36dd;if(_0x3c2e31[_0x559209(0x1c8)]===0x0)return{'action':_0x559209(_0x553fdc._0x2044bb),'newContent':_0x2e6c15,'added':[]};const _0xd14a0e=JSON[_0x559209(_0x553fdc._0x3bfa10)](_0x77956f,null,0x2)+'\x0a';return{'action':_0x559209(_0x553fdc._0x5ec3aa),'newContent':_0xd14a0e,'added':_0x3c2e31};}__name(mergeClaudeAllowEntries,'mergeClaudeAllowEntries');function mergeClaudeHooks(_0x466010,_0x5a8f88,_0x4c6bcd,_0x331a93){const _0x35eb32={_0x4b4f48:0x20d,_0x28cb1a:0x1e2,_0x3b53ab:0x1c8,_0x54b639:0x1e6,_0x27b9b7:0x199},_0x50318b=_0x190067;let _0x231701;if(_0x466010===null)_0x231701={};else try{_0x231701=JSON[_0x50318b(0x170)](_0x466010);}catch(_0x5d8c8a){throw new ClaudeSettingsParseError('Failed\x20to\x20parse\x20.claude/settings.json\x20as\x20JSON:\x20'+_0x5d8c8a[_0x50318b(0x1bd)]+_0x50318b(0x1a7));}const _0x1ff785=_0x231701['hooks']&&typeof _0x231701['hooks']==='object'?_0x231701['hooks']:{},_0x40e4d3=[];for(const _0x20f56a of _0x5a8f88){const _0x5131b8=Array[_0x50318b(0x1b4)](_0x1ff785[_0x20f56a])?_0x1ff785[_0x20f56a]:[],_0x180485=_0x5131b8[_0x50318b(0x174)](_0x4e70b3=>(_0x4e70b3[_0x50318b(0x19f)]??[])['some'](_0x551c08=>(_0x551c08[_0x50318b(0x20d)]??'')[_0x50318b(0x14a)](_0x331a93)));if(_0x180485)continue;_0x5131b8['push']({'matcher':'*','hooks':[{'type':_0x50318b(_0x35eb32._0x4b4f48),'command':_0x4c6bcd}]}),_0x1ff785[_0x20f56a]=_0x5131b8,_0x40e4d3[_0x50318b(_0x35eb32._0x28cb1a)](_0x20f56a);}_0x231701['hooks']=_0x1ff785;if(_0x40e4d3[_0x50318b(_0x35eb32._0x3b53ab)]===0x0)return{'action':'already-present','newContent':_0x466010??JSON[_0x50318b(_0x35eb32._0x54b639)](_0x231701,null,0x2)+'\x0a','added':[]};return{'action':_0x50318b(_0x35eb32._0x27b9b7),'newContent':JSON[_0x50318b(_0x35eb32._0x54b639)](_0x231701,null,0x2)+'\x0a','added':_0x40e4d3};}__name(mergeClaudeHooks,_0x190067(0x1c5));var BEGIN=_0x190067(0x1a8),END=_0x190067(0x18e);function mergeClaudeMd(_0x1fdf4f,_0x1a3aa8){const _0x506ff8={_0x544ee4:0x191,_0x1bc4bd:0x194,_0x5074fd:0x118,_0xde7dbd:0x205,_0xc653f8:0x1c8,_0x56b0e2:0x201},_0x26e370=_0x190067,_0x3dde88=BEGIN+'\x0a'+_0x1a3aa8[_0x26e370(_0x506ff8._0x544ee4)]()+'\x0a'+END;if(_0x1fdf4f===null)return{'action':_0x26e370(0x13b),'newContent':_0x3dde88+'\x0a'};const _0x583fc1=_0x1fdf4f[_0x26e370(_0x506ff8._0x1bc4bd)](BEGIN);if(_0x583fc1===-0x1){const _0x54d354=_0x1fdf4f[_0x26e370(0x119)]('\x0a')?_0x1fdf4f:_0x1fdf4f+'\x0a';return{'action':_0x26e370(_0x506ff8._0x5074fd),'newContent':_0x54d354+'\x0a'+_0x3dde88+'\x0a'};}const _0x317de0=_0x1fdf4f[_0x26e370(0x194)](END,_0x583fc1);if(_0x317de0===-0x1){const _0x394197=_0x1fdf4f['endsWith']('\x0a')?_0x1fdf4f:_0x1fdf4f+'\x0a';return{'action':'appended','newContent':_0x394197+'\x0a'+_0x3dde88+'\x0a'};}const _0x56919b=_0x1fdf4f[_0x26e370(_0x506ff8._0xde7dbd)](0x0,_0x583fc1)+_0x3dde88+_0x1fdf4f['slice'](_0x317de0+END[_0x26e370(_0x506ff8._0xc653f8)]);if(_0x56919b===_0x1fdf4f)return{'action':_0x26e370(_0x506ff8._0x56b0e2),'newContent':_0x1fdf4f};return{'action':_0x26e370(0x1d3),'newContent':_0x56919b};}__name(mergeClaudeMd,_0x190067(0x209));import{appendUniqueLines}from'@unotest/core';var AGENT_LOG_HOOK_EVENTS=[_0x190067(0x151),_0x190067(0x1ef),_0x190067(0x156),_0x190067(0x17c),'PostToolUse',_0x190067(0x134),_0x190067(0x212),_0x190067(0x1f6),_0x190067(0x167),'PreCompact',_0x190067(0x1fa)];function parseArgs(_0x5a20c2){const _0x515355={_0x1a2bc8:0x1c8,_0x9b6ab4:0x146,_0x43bf86:0x1bc,_0x841223:0x12a,_0x53de09:0x182},_0x3fced2=_0x190067;let _0x539858=![],_0x348221=process[_0x3fced2(0x1c7)](),_0x44fe67;for(let _0x23ce77=0x0;_0x23ce77<_0x5a20c2[_0x3fced2(_0x515355._0x1a2bc8)];_0x23ce77++){const _0x1310e8=_0x5a20c2[_0x23ce77];if(_0x1310e8===_0x3fced2(_0x515355._0x9b6ab4)||_0x1310e8==='-f')_0x539858=!![];else{if(_0x1310e8===_0x3fced2(_0x515355._0x43bf86)){const _0x12a1ac=_0x5a20c2[++_0x23ce77];if(_0x12a1ac==='system'||_0x12a1ac===_0x3fced2(0x1d6)||_0x12a1ac===_0x3fced2(0x190))_0x44fe67=_0x12a1ac;else throw new Error(_0x3fced2(0x1a2)+String(_0x12a1ac));}else{if(!_0x1310e8[_0x3fced2(_0x515355._0x841223)]('-'))_0x348221=_0x58a23b(process[_0x3fced2(0x1c7)](),_0x1310e8);}}}const _0x983d8f={'cwd':_0x348221,'force':_0x539858};if(_0x44fe67!==void 0x0)_0x983d8f[_0x3fced2(_0x515355._0x53de09)]=_0x44fe67;return _0x983d8f;}__name(parseArgs,_0x190067(0x129));function symbol(_0x3f99fb){return _0x3f99fb==='ok'?'✓':_0x3f99fb==='warning'?'⚠':'✗';}__name(symbol,_0x190067(0x152));function readOwnVersion(){const _0x24913f={_0x2ff553:0x207,_0x33baf8:0x1c8,_0x5068a0:0x166,_0x26529e:0x187},_0x2dc7da=_0x190067,_0x568dd5=_0x54e4d7(_0x5c3614(import.meta.url)),_0x221e0c=_0x58a23b(_0x568dd5,_0x2dc7da(_0x24913f._0x2ff553)),_0x3ab877=readFileSync(_0x221e0c,'utf8'),_0x2e6d71=JSON[_0x2dc7da(0x170)](_0x3ab877);if(typeof _0x2e6d71[_0x2dc7da(0x187)]!=='string'||_0x2e6d71[_0x2dc7da(0x187)][_0x2dc7da(_0x24913f._0x33baf8)]===0x0)throw new Error('package.json\x20at\x20'+_0x221e0c+_0x2dc7da(_0x24913f._0x5068a0));return _0x2e6d71[_0x2dc7da(_0x24913f._0x26529e)];}__name(readOwnVersion,_0x190067(0x142));function ensureDir(_0x246297){if(!_0x3107f1(_0x246297))mkdirSync(_0x246297,{'recursive':!![]});}__name(ensureDir,_0x190067(0x18d));function writeIfNeeded(_0x5b713b,_0x521ad0,_0x4d9323){const _0x44307c={_0x5111c4:0x210},_0x3aafe8=_0x190067,_0x25ee84=_0x3107f1(_0x5b713b);if(_0x25ee84&&!_0x4d9323)return _0x3aafe8(0x140);return ensureDir(_0x54e4d7(_0x5b713b)),writeFileSync(_0x5b713b,_0x521ad0),_0x25ee84?_0x3aafe8(_0x44307c._0x5111c4):_0x3aafe8(0x13b);}__name(writeIfNeeded,_0x190067(0x162));function writeIfAbsent(_0x50743f,_0x50fd50){const _0x28b1eb=_0x190067;if(_0x3107f1(_0x50743f))return _0x28b1eb(0x140);return ensureDir(_0x54e4d7(_0x50743f)),writeFileSync(_0x50743f,_0x50fd50),_0x28b1eb(0x13b);}__name(writeIfAbsent,_0x190067(0x160));async function runInit(_0x48ea53){const _0x29c3bf={_0x39299b:0x1c7,_0x1b81ee:0x1c0,_0x52d258:0x1e9,_0x1281cf:0x1a0,_0x47b2e9:0x1ed,_0x15dc0b:0x127,_0x5ac49:0x132,_0x11c654:0x184,_0x4f29d7:0x1fb,_0x277240:0x1c7,_0x4f163b:0x1f7,_0x11e8f3:0x1e2,_0x2e5acd:0x1d5,_0x54674c:0x125,_0x1e9cb5:0x1b5,_0x31cd0f:0x201,_0x18f40c:0x14f,_0x205003:0x140,_0x14c1ed:0x14f,_0x253a5b:0x1f1,_0x574a2c:0x1df,_0x5410e5:0x1e2,_0x4d4237:0x1e2,_0x2e36f9:0x14b,_0x4b4732:0x1ce,_0x2b45a8:0x1e2,_0x1ecc0e:0x148,_0x17b215:0x1e7,_0x44c024:0x1e7,_0x1ad00d:0x1b9,_0x54ad33:0x140,_0x362d33:0x1d4,_0x1c4ffd:0x1e7,_0x57e40b:0x184,_0x43a9f4:0x189,_0x37845a:0x120,_0x21d657:0x16a,_0x5c541b:0x14f,_0x3cb7e8:0x1a3,_0x18653e:0x1ca,_0x523a41:0x1c3,_0x4b2ebf:0x20b,_0x26a135:0x1b7,_0x36779f:0x137,_0x496534:0x14f,_0x52aa74:0x1cc,_0x53e903:0x199,_0x49cc67:0x1f0,_0x4c45ba:0x14f,_0x13fa1d:0x1c8,_0x26b7e2:0x14e,_0x1d4bbf:0x1a0,_0x177135:0x1c7,_0x1f8920:0x179,_0x1f3b47:0x197,_0x4e9277:0x15c,_0x10a5ec:0x13c,_0x13a9ef:0x199,_0x364074:0x1c8,_0x3f4bbc:0x184,_0x209fe5:0x199,_0x4ed579:0x138,_0x34f4f4:0x1c1,_0x2b1360:0x182,_0x87a001:0x135,_0x2829d1:0x1ae},_0x509c7a={_0x2abc33:0x153,_0x3c0dcf:0x186,_0x171314:0x17d,_0x265600:0x140,_0x35d2fc:0x13b},_0x1b2421=_0x190067,_0x14d7e3=parseArgs(_0x48ea53);process[_0x1b2421(0x184)][_0x1b2421(0x1a0)](_0x1b2421(0x1e3)+_0x14d7e3[_0x1b2421(_0x29c3bf._0x39299b)]+'\x0a\x0a'),process['stdout'][_0x1b2421(0x1a0)](_0x1b2421(_0x29c3bf._0x1b81ee));const _0x5127d4=runEnvironmentChecks({'cwd':_0x14d7e3[_0x1b2421(_0x29c3bf._0x39299b)]});let _0x3d678f=![];for(const _0x3c9827 of _0x5127d4){process['stdout']['write']('\x20\x20'+symbol(_0x3c9827['severity'])+'\x20'+_0x3c9827[_0x1b2421(_0x29c3bf._0x52d258)]+':\x20'+_0x3c9827['message']+'\x0a');if(_0x3c9827['detail'])process[_0x1b2421(0x184)][_0x1b2421(_0x29c3bf._0x1281cf)](_0x1b2421(_0x29c3bf._0x47b2e9)+_0x3c9827[_0x1b2421(0x1c2)]+'\x0a');if(_0x3c9827['severity']===_0x1b2421(0x1e0))_0x3d678f=!![];}if(_0x3d678f)return process[_0x1b2421(_0x29c3bf._0x15dc0b)]['write'](_0x1b2421(_0x29c3bf._0x5ac49)),{'exitCode':0x1};process[_0x1b2421(_0x29c3bf._0x11c654)][_0x1b2421(_0x29c3bf._0x1281cf)](_0x1b2421(_0x29c3bf._0x4f29d7));const _0x5ac775=[];ensureDir(join(_0x14d7e3[_0x1b2421(_0x29c3bf._0x277240)],_0x1b2421(0x196)));for(const [_0x55ba36,_0x290d86]of Object['entries'](templates['examples'])){_0x5ac775[_0x1b2421(0x1e2)]({'path':'unotest/e2e/examples/'+_0x55ba36,'status':writeIfNeeded(join(_0x14d7e3['cwd'],'unotest/e2e/examples',_0x55ba36),_0x290d86,_0x14d7e3[_0x1b2421(_0x29c3bf._0x4f163b)])});}_0x5ac775[_0x1b2421(_0x29c3bf._0x11e8f3)]({'path':_0x1b2421(_0x29c3bf._0x2e5acd),'status':writeIfNeeded(join(_0x14d7e3['cwd'],'unotest/e2e/_template.js'),templates[_0x1b2421(_0x29c3bf._0x54674c)],_0x14d7e3[_0x1b2421(0x1f7)])}),_0x5ac775[_0x1b2421(_0x29c3bf._0x11e8f3)]({'path':_0x1b2421(0x1b5),'status':writeIfNeeded(join(_0x14d7e3[_0x1b2421(_0x29c3bf._0x277240)],_0x1b2421(_0x29c3bf._0x1e9cb5)),'',_0x14d7e3[_0x1b2421(0x1f7)])}),_0x5ac775[_0x1b2421(0x1e2)]({'path':'AGENTS.md','status':writeIfNeeded(join(_0x14d7e3[_0x1b2421(0x1c7)],'AGENTS.md'),templates[_0x1b2421(0x206)],_0x14d7e3['force'])});{const _0x1e13bb=join(_0x14d7e3['cwd'],_0x1b2421(0x16c)),_0x7add87=_0x3107f1(_0x1e13bb)?readFileSync(_0x1e13bb,_0x1b2421(0x17d)):null,_0x300609=mergeClaudeMd(_0x7add87,templates[_0x1b2421(0x128)]);_0x300609['action']!==_0x1b2421(_0x29c3bf._0x31cd0f)&&writeFileSync(_0x1e13bb,_0x300609[_0x1b2421(0x1b7)]),_0x5ac775['push']({'path':_0x1b2421(0x16c),'status':_0x300609[_0x1b2421(_0x29c3bf._0x18f40c)]==='already-present'?_0x1b2421(_0x29c3bf._0x205003):_0x300609[_0x1b2421(_0x29c3bf._0x14c1ed)]});}_0x5ac775['push']({'path':_0x1b2421(_0x29c3bf._0x253a5b),'status':writeIfNeeded(join(_0x14d7e3[_0x1b2421(0x1c7)],_0x1b2421(_0x29c3bf._0x253a5b)),templates[_0x1b2421(0x1df)],_0x14d7e3[_0x1b2421(0x1f7)])}),_0x5ac775[_0x1b2421(0x1e2)]({'path':'unotest/.env','status':writeIfAbsent(join(_0x14d7e3['cwd'],_0x1b2421(0x1ec)),templates[_0x1b2421(_0x29c3bf._0x574a2c)])}),_0x5ac775[_0x1b2421(_0x29c3bf._0x11e8f3)]({'path':_0x1b2421(0x133),'status':writeIfAbsent(join(_0x14d7e3[_0x1b2421(0x1c7)],_0x1b2421(0x133)),templates['secretsExample'])});const _0xaca684=join(_0x14d7e3[_0x1b2421(0x1c7)],'unotest.config.mjs');_0x5ac775[_0x1b2421(_0x29c3bf._0x5410e5)]({'path':_0x1b2421(0x11d),'status':writeIfNeeded(_0xaca684,unotestConfigMjs(void 0x0),_0x14d7e3[_0x1b2421(0x1f7)])});const _0x5dcbab=_0x54e4d7(_0x5c3614(import.meta.url)),_0xc9829d=__name((_0x448199,_0x2e93b6)=>{const _0x1517a2=_0x1b2421,_0x413407=_0x58a23b(_0x5dcbab,_0x1517a2(_0x509c7a._0x2abc33),_0x448199),_0x446778=join(_0x14d7e3[_0x1517a2(0x1c7)],_0x448199);if(!_0x3107f1(_0x413407))return{'path':_0x448199,'status':_0x2e93b6+_0x1517a2(_0x509c7a._0x3c0dcf)};if(_0x3107f1(_0x446778)){if(readFileSync(_0x446778,_0x1517a2(_0x509c7a._0x171314))===readFileSync(_0x413407,_0x1517a2(0x17d)))return{'path':_0x448199,'status':_0x1517a2(_0x509c7a._0x265600)};return copyFileSync(_0x413407,_0x446778),{'path':_0x448199,'status':_0x1517a2(0x1d3)};}return ensureDir(_0x54e4d7(_0x446778)),copyFileSync(_0x413407,_0x446778),{'path':_0x448199,'status':_0x1517a2(_0x509c7a._0x35d2fc)};},'copyPackageFile');_0x5ac775[_0x1b2421(_0x29c3bf._0x4d4237)](_0xc9829d(_0x1b2421(0x139),'skill'),_0xc9829d(_0x1b2421(_0x29c3bf._0x2e36f9),_0x1b2421(_0x29c3bf._0x4b4732))),_0x5ac775[_0x1b2421(_0x29c3bf._0x2b45a8)](_0xc9829d('.claude/hooks/log-agent.sh',_0x1b2421(_0x29c3bf._0x1ecc0e)));for(const _0x2ea796 of _0x5ac775){const _0x280499=_0x2ea796[_0x1b2421(_0x29c3bf._0x17b215)]==='created'?_0x1b2421(0x12f):_0x2ea796[_0x1b2421(_0x29c3bf._0x44c024)]===_0x1b2421(0x210)?_0x1b2421(_0x29c3bf._0x1ad00d):_0x2ea796[_0x1b2421(0x1e7)]===_0x1b2421(0x1d3)?'✓\x20updated':_0x2ea796['status']['startsWith'](_0x1b2421(_0x29c3bf._0x54ad33))?_0x1b2421(_0x29c3bf._0x362d33):'·\x20'+_0x2ea796[_0x1b2421(_0x29c3bf._0x1c4ffd)];process[_0x1b2421(0x184)][_0x1b2421(0x1a0)]('\x20\x20'+_0x280499+'\x20\x20'+_0x2ea796[_0x1b2421(0x208)]+'\x0a');}process[_0x1b2421(_0x29c3bf._0x57e40b)][_0x1b2421(0x1a0)]('\x0aMCP\x20config:\x0a');const _0x39a987=join(_0x14d7e3[_0x1b2421(0x1c7)],_0x1b2421(0x1bf)),_0x35e0e4=_0x3107f1(_0x39a987)?readFileSync(_0x39a987,_0x1b2421(0x17d)):null,_0x5709e3=readOwnVersion(),_0x37e550={'command':_0x1b2421(_0x29c3bf._0x43a9f4),'args':['-y',_0x1b2421(0x1a9)+_0x5709e3,'mcp']};try{const _0x86030f=mergeMcpConfig(_0x35e0e4,_0x1b2421(_0x29c3bf._0x37845a),_0x37e550,{'force':_0x14d7e3[_0x1b2421(0x1f7)]});_0x86030f[_0x1b2421(_0x29c3bf._0x18f40c)]!==_0x1b2421(0x201)&&writeFileSync(_0x39a987,_0x86030f[_0x1b2421(0x1b7)]);const _0x2e1c49=_0x86030f[_0x1b2421(0x14f)]===_0x1b2421(0x13b)?'created\x20.mcp.json':_0x86030f[_0x1b2421(0x14f)]===_0x1b2421(0x199)?_0x1b2421(_0x29c3bf._0x21d657):_0x86030f[_0x1b2421(_0x29c3bf._0x5c541b)]==='force-overwrote'?_0x1b2421(_0x29c3bf._0x3cb7e8):'already\x20present';process[_0x1b2421(0x184)]['write']('\x20\x20✓\x20'+_0x2e1c49+'\x0a');}catch(_0x25b165){if(_0x25b165 instanceof McpJsonParseError)return process[_0x1b2421(_0x29c3bf._0x15dc0b)][_0x1b2421(_0x29c3bf._0x1281cf)](_0x1b2421(_0x29c3bf._0x18653e)+_0x25b165[_0x1b2421(0x1bd)]+'\x0a'),{'exitCode':0x1};throw _0x25b165;}process[_0x1b2421(0x184)][_0x1b2421(0x1a0)](_0x1b2421(_0x29c3bf._0x523a41));const _0x1f4656=join(_0x14d7e3[_0x1b2421(_0x29c3bf._0x39299b)],_0x1b2421(0x144)),_0x432e9b=_0x3107f1(_0x1f4656)?readFileSync(_0x1f4656,_0x1b2421(0x17d)):null;try{const _0xc0d0a5=mergeClaudeAllowEntries(_0x432e9b,['mcp__unotest-web']),_0x50dad2=_0x1b2421(_0x29c3bf._0x4b2ebf),_0x52cae3=mergeClaudeHooks(_0xc0d0a5[_0x1b2421(_0x29c3bf._0x26a135)],AGENT_LOG_HOOK_EVENTS,_0x50dad2,_0x1b2421(_0x29c3bf._0x36779f));(_0xc0d0a5[_0x1b2421(0x14f)]!==_0x1b2421(0x201)||_0x52cae3[_0x1b2421(0x14f)]!==_0x1b2421(0x201))&&(ensureDir(_0x54e4d7(_0x1f4656)),writeFileSync(_0x1f4656,_0x52cae3[_0x1b2421(0x1b7)]));const _0x4385c6=_0xc0d0a5['action']===_0x1b2421(0x13b)?_0x1b2421(0x17a):_0xc0d0a5[_0x1b2421(_0x29c3bf._0x496534)]===_0x1b2421(0x199)?_0x1b2421(_0x29c3bf._0x52aa74)+_0xc0d0a5[_0x1b2421(_0x29c3bf._0x53e903)][_0x1b2421(_0x29c3bf._0x49cc67)](',\x20'):'allow\x20already\x20present';process[_0x1b2421(0x184)][_0x1b2421(0x1a0)]('\x20\x20✓\x20'+_0x4385c6+'\x0a');const _0x4538f3=_0x52cae3[_0x1b2421(_0x29c3bf._0x4c45ba)]===_0x1b2421(0x199)?'added\x20agent-trace\x20hooks\x20('+_0x52cae3[_0x1b2421(0x199)][_0x1b2421(_0x29c3bf._0x13fa1d)]+_0x1b2421(_0x29c3bf._0x26b7e2):'agent-trace\x20hooks\x20already\x20present';process[_0x1b2421(0x184)][_0x1b2421(_0x29c3bf._0x1d4bbf)]('\x20\x20✓\x20'+_0x4538f3+'\x0a');}catch(_0x3296a6){if(_0x3296a6 instanceof ClaudeSettingsParseError)return process['stderr'][_0x1b2421(0x1a0)]('\x20\x20✗\x20'+_0x3296a6[_0x1b2421(0x1bd)]+'\x0a'),{'exitCode':0x1};throw _0x3296a6;}process['stdout'][_0x1b2421(0x1a0)](_0x1b2421(0x1dd));const _0x204965=join(_0x14d7e3[_0x1b2421(_0x29c3bf._0x177135)],'.gitignore'),_0x4c8dc7=_0x3107f1(_0x204965)?readFileSync(_0x204965,'utf8'):null,_0x18f233=appendUniqueLines(_0x4c8dc7,[_0x1b2421(0x1e5),_0x1b2421(0x177),_0x1b2421(0x1b1),_0x1b2421(_0x29c3bf._0x1f8920),'unotest/.runs*/','unotest/.debug*/','unotest/.snapshots/',_0x1b2421(_0x29c3bf._0x1f3b47),_0x1b2421(_0x29c3bf._0x4e9277),_0x1b2421(_0x29c3bf._0x10a5ec)]);if(_0x18f233[_0x1b2421(_0x29c3bf._0x13a9ef)][_0x1b2421(_0x29c3bf._0x364074)]>0x0){writeFileSync(_0x204965,_0x18f233[_0x1b2421(0x1b7)]);for(const _0x3155aa of _0x18f233[_0x1b2421(0x199)]){process['stdout'][_0x1b2421(_0x29c3bf._0x1281cf)]('\x20\x20✓\x20added\x20\x22'+_0x3155aa+'\x22\x0a');}}for(const _0x5bf14c of _0x18f233[_0x1b2421(0x138)]){process[_0x1b2421(_0x29c3bf._0x3f4bbc)][_0x1b2421(0x1a0)](_0x1b2421(0x18a)+_0x5bf14c+'\x22\x0a');}_0x18f233[_0x1b2421(_0x29c3bf._0x209fe5)][_0x1b2421(0x1c8)]===0x0&&_0x18f233[_0x1b2421(_0x29c3bf._0x4ed579)][_0x1b2421(0x1c8)]===0x0&&process[_0x1b2421(0x184)][_0x1b2421(_0x29c3bf._0x1d4bbf)](_0x1b2421(0x12d));process[_0x1b2421(0x184)][_0x1b2421(0x1a0)]('\x0aBrowser:\x0a');const _0x3a3ca1=probeSystemBrowser(),_0x179341=Boolean(process[_0x1b2421(0x13e)][_0x1b2421(_0x29c3bf._0x34f4f4)])&&Boolean(process[_0x1b2421(_0x29c3bf._0x57e40b)][_0x1b2421(0x1c1)]),_0x99cae2={'probe':_0x3a3ca1,'interactive':_0x179341};if(_0x14d7e3[_0x1b2421(_0x29c3bf._0x2b1360)])_0x99cae2[_0x1b2421(0x19a)]=_0x14d7e3['browserOverride'];const _0x10e46f=await chooseBrowser(_0x99cae2);writeFileSync(_0xaca684,unotestConfigMjs(_0x10e46f[_0x1b2421(0x135)]));const _0x89df40=_0x10e46f[_0x1b2421(_0x29c3bf._0x87a001)]===void 0x0?_0x1b2421(0x16d):_0x10e46f[_0x1b2421(0x135)]===null?'channel:\x20null\x20(bundled\x20chromium)':_0x1b2421(0x203)+_0x10e46f['channel']+'\x27';process[_0x1b2421(_0x29c3bf._0x11c654)][_0x1b2421(_0x29c3bf._0x1281cf)](_0x1b2421(0x173)+_0x89df40+'\x0a'),process[_0x1b2421(_0x29c3bf._0x57e40b)][_0x1b2421(_0x29c3bf._0x1281cf)](_0x1b2421(0x195));if(_0x10e46f[_0x1b2421(0x1e4)][_0x1b2421(_0x29c3bf._0x364074)]>0x0){for(const _0x41ee3a of _0x10e46f[_0x1b2421(0x1e4)])process['stdout'][_0x1b2421(0x1a0)]('\x20\x20'+_0x41ee3a+'\x0a');process[_0x1b2421(0x184)][_0x1b2421(0x1a0)]('\x0a');}return process['stdout'][_0x1b2421(_0x29c3bf._0x1281cf)](_0x1b2421(_0x29c3bf._0x2829d1)),{'exitCode':0x0};}__name(runInit,_0x190067(0x157));var invokedDirectly2=process[_0x190067(0x19d)][0x1]&&_0x5c3614(import.meta.url)===process['argv'][0x1];invokedDirectly2&&runInit(process[_0x190067(0x19d)][_0x190067(0x205)](0x2))[_0x190067(0x1dc)](({exitCode:_0x27a103})=>{const _0x49c999={_0x3d57ef:0x11f},_0x298e75=_0x190067;process[_0x298e75(_0x49c999._0x3d57ef)]=_0x27a103;})[_0x190067(0x12b)](_0x38f92b=>{const _0x2ab5e5={_0x4ced9f:0x127},_0x3e5db3=_0x190067;process[_0x3e5db3(_0x2ab5e5._0x4ced9f)][_0x3e5db3(0x1a0)]('init:\x20'+(_0x38f92b instanceof Error?_0x38f92b[_0x3e5db3(0x1bd)]:String(_0x38f92b))+'\x0a'),process[_0x3e5db3(0x11f)]=0x1;});export{runInit};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4bacd5=_0x3650;(function(_0x1032ad,_0x37e7ea){const _0x5ad697={_0x4cf532:0xc0,_0x3b478d:0xcd,_0x24216f:0xcc,_0x164e1a:0xc5,_0x26d503:0xc2,_0x1d2e2c:0xb3,_0x581f8c:0xbf,_0xa7bffd:0xc7},_0x3cfdb9=_0x3650,_0x325e0a=_0x1032ad();while(!![]){try{const _0x5af447=-parseInt(_0x3cfdb9(0xbb))/0x1*(-parseInt(_0x3cfdb9(_0x5ad697._0x4cf532))/0x2)+-parseInt(_0x3cfdb9(_0x5ad697._0x3b478d))/0x3+parseInt(_0x3cfdb9(_0x5ad697._0x24216f))/0x4*(parseInt(_0x3cfdb9(_0x5ad697._0x164e1a))/0x5)+-parseInt(_0x3cfdb9(_0x5ad697._0x26d503))/0x6+parseInt(_0x3cfdb9(_0x5ad697._0x1d2e2c))/0x7+-parseInt(_0x3cfdb9(_0x5ad697._0x581f8c))/0x8*(parseInt(_0x3cfdb9(0xb9))/0x9)+parseInt(_0x3cfdb9(_0x5ad697._0xa7bffd))/0xa;if(_0x5af447===_0x37e7ea)break;else _0x325e0a['push'](_0x325e0a['shift']());}catch(_0x411359){_0x325e0a['push'](_0x325e0a['shift']());}}}(_0x3913,0x94389));function _0x3913(){const _0x32fd5f=['yMLU','mZvwvNbZv3K','zxjYB3i','zgf0yq','CNvUsw5ZDgfSBenOCM9TAxvTq2XP','ndG2mda4s0zruKTn','nJqXnZbWD05eEwu','Aw5ZDgfSBenOCM9TAxvT','nZC2nde4B2zACvbR','C3rKB3v0','zxHLy1bHDgG','nwjhthDKCW','CMvZB2X2zq','odqZndaYmejoAKjxDa','Dg9tDhjPBMC','zxHPDa','Aw5OzxjPDa','Aw5ZDgfSBa','mJeZmdC0ofPJDfnRAa','mZqZndG3nejAB0XJsW','CgLWzq','DgHLBG','C3rKB3v0v3jPDgu','mZmZmtq5nLDevfv5qG','zgvMAw5LuhjVCgvYDhK','CgXHExDYAwDODa','C3rKzxjY','D3jPDgu','4PYxigLUC3rHBgWTy2HYB21PDw06ia','mtyYuxvytw5g'];_0x3913=function(){return _0x32fd5f;};return _0x3913();}var __defProp=Object[_0x4bacd5(0xb4)],__name=(_0x2008a3,_0x559c3e)=>__defProp(_0x2008a3,'name',{'value':_0x559c3e,'configurable':!![]});function _0x3650(_0x5319ab,_0x89e5d7){_0x5319ab=_0x5319ab-0xb1;const _0x391358=_0x3913();let _0x3650ef=_0x391358[_0x5319ab];if(_0x3650['OcxDJh']===undefined){var _0x5343b1=function(_0x5f001d){const _0x104723='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2008a3='',_0x559c3e='';for(let _0x53da0f=0x0,_0x10507a,_0x1d905d,_0x29b37e=0x0;_0x1d905d=_0x5f001d['charAt'](_0x29b37e++);~_0x1d905d&&(_0x10507a=_0x53da0f%0x4?_0x10507a*0x40+_0x1d905d:_0x1d905d,_0x53da0f++%0x4)?_0x2008a3+=String['fromCharCode'](0xff&_0x10507a>>(-0x2*_0x53da0f&0x6)):0x0){_0x1d905d=_0x104723['indexOf'](_0x1d905d);}for(let _0x131fad=0x0,_0x515242=_0x2008a3['length'];_0x131fad<_0x515242;_0x131fad++){_0x559c3e+='%'+('00'+_0x2008a3['charCodeAt'](_0x131fad)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x559c3e);};_0x3650['mKTEHn']=_0x5343b1,_0x3650['QTLBtx']={},_0x3650['OcxDJh']=!![];}const _0x56554c=_0x391358[0x0],_0x27e1bf=_0x5319ab+_0x56554c,_0x2af37e=_0x3650['QTLBtx'][_0x27e1bf];return!_0x2af37e?(_0x3650ef=_0x3650['mKTEHn'](_0x3650ef),_0x3650['QTLBtx'][_0x27e1bf]=_0x3650ef):_0x3650ef=_0x2af37e,_0x3650ef;}import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x53da0f={}){const _0x2d7a36={_0x382add:0xb2,_0x1b2db5:0xc6,_0x325d36:0xba},_0x2bdaaa={_0x5ccca2:0xcb,_0x5bcaf1:0xca,_0x1dbfc3:0xce,_0x30d81b:0xb6,_0xadfc85:0xbd},_0x23f258=_0x4bacd5,_0x10507a=_0x53da0f[_0x23f258(_0x2d7a36._0x382add)]??(_0x4637da=>process['stdout'][_0x23f258(0xb7)](_0x4637da)),_0x1d905d=createRequire(import.meta.url),_0x29b37e=_0x1d905d[_0x23f258(_0x2d7a36._0x1b2db5)]('playwright/package.json'),_0x131fad=_0x1d905d(_0x29b37e),_0x515242=typeof _0x131fad[_0x23f258(_0x2d7a36._0x325d36)]==='string'?_0x131fad[_0x23f258(_0x2d7a36._0x325d36)]:_0x131fad[_0x23f258(0xba)]?.[_0x23f258(0xb5)];if(!_0x515242)throw new Error('playwright/package.json\x20has\x20no\x20usable\x20\x22bin\x22\x20field');const _0x2932de=resolve(dirname(_0x29b37e),_0x515242);return new Promise((_0x17a2f2,_0x2ac076)=>{const _0x3237f9=_0x23f258,_0x330b36=spawn(process[_0x3237f9(0xc4)],[_0x2932de,_0x3237f9(_0x2bdaaa._0x5ccca2),'chromium'],{'stdio':[_0x3237f9(_0x2bdaaa._0x5bcaf1),_0x3237f9(0xce),_0x3237f9(_0x2bdaaa._0x1dbfc3)]});_0x330b36[_0x3237f9(0xc3)]?.['on']('data',_0x1819dd=>_0x10507a(_0x1819dd['toString']())),_0x330b36[_0x3237f9(_0x2bdaaa._0x30d81b)]?.['on'](_0x3237f9(_0x2bdaaa._0xadfc85),_0x16105d=>_0x10507a(_0x16105d[_0x3237f9(0xc8)]())),_0x330b36['on'](_0x3237f9(0xbc),_0x2ac076),_0x330b36['on'](_0x3237f9(0xc9),_0x132319=>{if(_0x132319===0x0)_0x17a2f2();else _0x2ac076(new Error('chromium\x20download\x20exited\x20with\x20code\x20'+_0x132319));});});}__name(installChromium,_0x4bacd5(0xc1));async function runInstallChromiumCli(){const _0xb28e83=_0x4bacd5;try{return await installChromium(),0x0;}catch(_0xe7422e){return process[_0xb28e83(0xb6)][_0xb28e83(0xb7)](_0xb28e83(0xb8)+(_0xe7422e instanceof Error?_0xe7422e['message']:String(_0xe7422e))+'\x0a'),0x1;}}__name(runInstallChromiumCli,_0x4bacd5(0xbe));var invokedDirectly=process['argv'][0x1]&&fileURLToPath(import.meta.url)===process['argv'][0x1];invokedDirectly&&runInstallChromiumCli()[_0x4bacd5(0xb1)](_0x4c1cac=>process[_0x4bacd5(0xc9)](_0x4c1cac));export{installChromium,runInstallChromiumCli};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x1edeb2=_0x5f40;(function(_0x3c9382,_0x36b0d7){const _0x3cbfab={_0x357204:0xed,_0x206c09:0xb1,_0x9bfb78:0xdb,_0x3c0322:0xbd,_0x2d103d:0xe9},_0x4cfb9b=_0x5f40,_0x589718=_0x3c9382();while(!![]){try{const _0x22ed64=parseInt(_0x4cfb9b(0xa5))/0x1+-parseInt(_0x4cfb9b(_0x3cbfab._0x357204))/0x2*(parseInt(_0x4cfb9b(0xc2))/0x3)+parseInt(_0x4cfb9b(_0x3cbfab._0x206c09))/0x4*(-parseInt(_0x4cfb9b(0xbc))/0x5)+-parseInt(_0x4cfb9b(_0x3cbfab._0x9bfb78))/0x6+-parseInt(_0x4cfb9b(0xe3))/0x7*(-parseInt(_0x4cfb9b(_0x3cbfab._0x3c0322))/0x8)+-parseInt(_0x4cfb9b(_0x3cbfab._0x2d103d))/0x9*(-parseInt(_0x4cfb9b(0x9f))/0xa)+-parseInt(_0x4cfb9b(0x102))/0xb;if(_0x22ed64===_0x36b0d7)break;else _0x589718['push'](_0x589718['shift']());}catch(_0x41f0f6){_0x589718['push'](_0x589718['shift']());}}}(_0x2f3e,0x49a93));var __defProp=Object[_0x1edeb2(0xb3)],__name=(_0x323aab,_0x5d74d2)=>__defProp(_0x323aab,'name',{'value':_0x5d74d2,'configurable':!![]});import{writeFileSync as _0x316ae0}from'fs';import{join as _0x2551fb}from'path';import{fileURLToPath}from'url';function _0x2f3e(){const _0x265ee1=['y29TCg9ZzuzPEfbYB21WDa','ycdIGjqG','C29YDa','mZm5odK2n29VuLrsua','icdINjmG','iYmJifn0ywnRcMbGyaO','DMLKzw9qyxrO','ycaOy29UzMLKzw5JztOG','BMfTzq','Dw5RBM93BG','y29UC29SzuXPBwL0','DhjHy2u','cMbGyaO','vgLTzw91DevYCM9Y','AgfZ','C2nLBMfYAw9qyxrO','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','y3DK','cK5LEhq6ihbHC3rLigvHy2GGzML4lxbYB21WDc5TzcbPBNrVihLVDxiGteXnignSAwvUDcaOq2XHDwrLienVzguGlWPdDxjZB3iGlYbLDgmUks4GvgHLieXmtsbYzxr1CM5ZigeGDw5PzMLLzcbKAwzMoYbYzxzPzxCGAxqGyw5KigfWCgX5cM1HBNvHBgX5lIbxzsbUzxzLCIbHDxrVlwfWCgX5icHelti1ks4k','ywrKlxDHAxrMB3i','Bgv2zwW','ndbly0HNuvm','lcbJB2WG','tg9JyxrVCKvYCM9Y','BMv0D29YAY5QC29U','D3jPDgu','DMLKzw8UD2vIBq','mZy5ntyXBLrsvLPq','DgLTzxn0yw1W','Bg93','BMv0D29YAW','yaOTicOQu3rLCcbPBMrLEcOQoIa','DxrMoa','AM9PBG','y29UzMLKzw5Jzq','C2nYzwvUC2HVDfbHDgG','C3rHCNrZv2L0Aa','DgvZDezU','Dg9mB3DLCKnHC2u','mtmYndi4BKfAELbK','C3rLCeLUzgv4','zgvMAw5LuhjVCgvYDhK','Dgv4Da','xYHUBYbZzw1HBNrPyY1KB20GC25HChnOB3qGy2fWDhvYzwqGzM9YihrOAxmGzMfPBhvYzsLF','yNvUzgXLrgLY','AgfYugf0Aa','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','y2XHC3nPzNK','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','kqOk','nuvZsK1ZDq','odbTq3jHv2K','cI0GkIPfCNjVCIOQoIbG','CgfYC2u','ChvZAa','ChjVBxb0twfYA2rVD24','nLzLrMHrBq','C2v0','icb+','C291CMnLCW','y2vPBa','yxbWCM94vg9Rzw5Z','zMfPBhvYzs5QC29U','zMLSDgvY','C2XPy2u','zxjY','cKnHChr1CMvKoIa','BwvZC2fNzq','zxHPDa','zMfPBhvYzxnsB290','DgvZDa','ChjLCgfYzs1MAxG6ignVBxbVC2LUzYbMAxGGChjVBxb0CYbMB3iG','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','y29UC29Szq','zgvMyxvSDezHAwX1CMvZuM9VDa','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','CNvUswq','C3bSAxq','CMv3CML0zs1ZzwXLy3rVCG','DxjS','C25HChnOB3q','mJiYmta1nMryvfzytW','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','CNvUuhjLCgfYzuzPEa','C3vNz2vZDgvKqwn0Aw9U','lNvUB3rLC3q','y2HHBMDLlwfZC2vYDgLVBG','yxjNDG','vvjmoIa','mJy2mti2CLDHs21H','yNvPBgrqCM9TChrnyxjRzg93BG','B3v0','BwfW','phnJzw5HCMLVigzPBguGBM8GBg9Uz2vYig9UigrPC2S+','C3rHy2S','mtiWmZuWn1HeDg5cua','iIaOBg9VA2vKigLUia','C2nYzwvUC2HVDevYCM9Y','DMfSDwvZ','mJCWnJm4C1riCunh','BwvKAxvT','BgvUz3rO','zxjYB3i','Aw5JBhvKzxm','CMvHzezHAwX1CMvcDw5KBgu','qxnZzxj0Aw9UrxjYB3i','zMfPBhvYzxm','AgLNAa','icaGicaG','ihrLC3qOCYKGkeqTmJuPcGO','AxneAxjLy3rVCNK','zML4lxbYB21WDc5Tza','rxjYB3i','CgfKu3rHCNq','y2fWDhvYzwrbDa','icdINjCG','C2nYzwvUC2HVDc1LCNjVCI50Ehq'];_0x2f3e=function(){return _0x265ee1;};return _0x2f3e();}import{readFileSync as _0x28b338,existsSync as _0x2cb81a}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';function readFailureBundle(_0x247e91){const _0x241f67={_0x330d77:0xc8,_0x152e03:0xbf,_0x299538:0xaa,_0x2023cd:0xa2,_0x1a0e9c:0xda,_0x362c3a:0xad,_0x3e3237:0xfe,_0x35c940:0xeb,_0x3b68b8:0xb7,_0x3995db:0x105},_0x4bc253=_0x1edeb2;if(!existsSync(_0x247e91))return null;const _0x247530=join(_0x247e91,_0x4bc253(_0x241f67._0x330d77));if(!existsSync(_0x247530))return null;const _0x5ad7a7=JSON['parse'](readFileSync(_0x247530,_0x4bc253(0xaa))),_0x42ec6a=join(_0x247e91,'console.json'),_0x14d5ab=existsSync(_0x42ec6a)?JSON[_0x4bc253(_0x241f67._0x152e03)](readFileSync(_0x42ec6a,_0x4bc253(_0x241f67._0x299538))):[],_0x4f05df=join(_0x247e91,'snapshot.json'),_0x3076f9=existsSync(_0x4f05df)?JSON['parse'](readFileSync(_0x4f05df,_0x4bc253(0xaa))):void 0x0,_0x40f0d3={'trace':_0x5ad7a7,'console':_0x14d5ab},_0x1391d2=join(_0x247e91,_0x4bc253(_0x241f67._0x2023cd));existsSync(_0x1391d2)&&(_0x40f0d3[_0x4bc253(0xa8)]=JSON[_0x4bc253(0xbf)](readFileSync(_0x1391d2,_0x4bc253(_0x241f67._0x299538))));if(_0x3076f9!==void 0x0)_0x40f0d3[_0x4bc253(_0x241f67._0x1a0e9c)]=_0x3076f9;const _0x5dc1b7=join(_0x247e91,'screenshot.png');if(existsSync(_0x5dc1b7))_0x40f0d3[_0x4bc253(_0x241f67._0x362c3a)]=_0x5dc1b7;else{const _0x32289a=join(_0x247e91,_0x4bc253(_0x241f67._0x3e3237));existsSync(_0x32289a)&&(_0x40f0d3[_0x4bc253(_0x241f67._0x35c940)]=readFileSync(_0x32289a,_0x4bc253(0xaa)));}const _0x2ab270=join(_0x247e91,'har.json');if(existsSync(_0x2ab270))_0x40f0d3[_0x4bc253(_0x241f67._0x3b68b8)]=_0x2ab270;const _0x16bb9f=join(_0x247e91,_0x4bc253(0xa4));if(existsSync(_0x16bb9f))_0x40f0d3[_0x4bc253(_0x241f67._0x3995db)]=_0x16bb9f;return _0x40f0d3;}__name(readFailureBundle,_0x1edeb2(0xf2));function listFailures(_0x374879){const _0x19ba89={_0x29ac30:0xf8,_0x49cda4:0xbf,_0x1e922a:0xc0,_0x3fef74:0xaf,_0x4abf3c:0x101},_0x56ab43=_0x1edeb2;if(!existsSync(_0x374879))return[];const _0x1b7e10=[];for(const _0x17cf29 of readdirSync(_0x374879)){const _0x190561=join(_0x374879,_0x17cf29);if(!statSync(_0x190561)[_0x56ab43(_0x19ba89._0x29ac30)]())continue;for(const _0x5a7038 of readdirSync(_0x190561)){const _0xd975a9=join(_0x190561,_0x5a7038);if(!statSync(_0xd975a9)[_0x56ab43(0xf8)]())continue;const _0x3099ee=join(_0xd975a9,'failure.json');if(!existsSync(_0x3099ee))continue;try{const _0x31e083=JSON[_0x56ab43(_0x19ba89._0x49cda4)](readFileSync(_0x3099ee,_0x56ab43(0xaa)));_0x1b7e10[_0x56ab43(_0x19ba89._0x1e922a)]({'runId':_0x17cf29,'testFn':_0x31e083[_0x56ab43(_0x19ba89._0x3fef74)],'scenarioPath':_0x31e083[_0x56ab43(0x98)],'dir':_0xd975a9,'timestamp':_0x31e083[_0x56ab43(0xa6)]});}catch{}}}return _0x1b7e10[_0x56ab43(_0x19ba89._0x4abf3c)]((_0xace2c9,_0x331e3c)=>_0x331e3c[_0x56ab43(0xa6)]['localeCompare'](_0xace2c9[_0x56ab43(0xa6)])),_0x1b7e10;}__name(listFailures,'listFailures');function defaultFailuresRoot(_0x1f3ad9=process[_0x1edeb2(0x9b)]()){const _0x18206a={_0xe055be:0xdf},_0x1ad91e=_0x1edeb2;return join(_0x1f3ad9,_0x1ad91e(_0x18206a._0xe055be),_0x1ad91e(0xf4));}__name(defaultFailuresRoot,_0x1edeb2(0xd4));function resolveBundleDir(_0x1d68c1,_0x46fee3){if(existsSync(_0x1d68c1)&&statSync(_0x1d68c1)['isDirectory']())return _0x1d68c1;return join(_0x46fee3,_0x1d68c1);}__name(resolveBundleDir,'resolveBundleDir');function composeFixPrompt(_0x2649fc,_0x2ede7f={}){const _0x829f0d={_0x412b9e:0xcf,_0x400d7a:0x9b,_0x251aef:0x9b,_0x57e0dc:0x94,_0x4b3043:0x93,_0x351880:0x94,_0x35e91e:0xc6,_0x5ab834:0xd3,_0x5855ad:0xda},_0x157a7a=_0x1edeb2,_0xe47409=_0x2ede7f[_0x157a7a(_0x829f0d._0x412b9e)]??defaultFailuresRoot(),_0x3c4f7f=resolveBundleDir(_0x2649fc,_0xe47409),_0x4e55db=readFailureBundle(_0x3c4f7f);if(!_0x4e55db)throw new Error(_0x157a7a(0xb8)+_0x2649fc+_0x157a7a(0xea)+_0x3c4f7f+')');const _0x5e7144=_0x2ede7f[_0x157a7a(_0x829f0d._0x400d7a)]??process[_0x157a7a(_0x829f0d._0x251aef)](),_0x412bf6=_0x2cb81a(_0x4e55db[_0x157a7a(_0x829f0d._0x57e0dc)][_0x157a7a(0x98)])?_0x28b338(_0x4e55db[_0x157a7a(_0x829f0d._0x57e0dc)][_0x157a7a(0x98)],'utf8'):_0x157a7a(0xe7),_0x5b99db=_0x2ede7f[_0x157a7a(_0x829f0d._0x4b3043)]??0x19,_0x4880af=_0x4e55db[_0x157a7a(0xd3)][_0x157a7a(0xca)](-_0x5b99db),{suggestedAction:_0x42a0af,confidence:_0x4c1d49}=classify(_0x4e55db),_0x29ef8d=buildPromptMarkdown({'bundle':_0x4e55db,'scenarioSource':_0x412bf6,'scenarioRelative':relative(_0x5e7144,_0x4e55db[_0x157a7a(_0x829f0d._0x351880)]['scenarioPath']),'consoleTail':_0x4880af,'suggestedAction':_0x42a0af,'confidence':_0x4c1d49}),_0x59c034=Math[_0x157a7a(_0x829f0d._0x35e91e)](_0x29ef8d[_0x157a7a(0xef)]/0x4);return{'promptMarkdown':_0x29ef8d,'suggestedAction':_0x42a0af,'confidence':_0x4c1d49,'sources':{'bundleDir':_0x3c4f7f,'scenarioPath':_0x4e55db[_0x157a7a(0x94)]['scenarioPath'],'consoleEntries':_0x4e55db[_0x157a7a(_0x829f0d._0x5ab834)][_0x157a7a(0xef)],'hasSnapshot':!!_0x4e55db[_0x157a7a(_0x829f0d._0x5855ad)]},'approxTokens':_0x59c034};}__name(composeFixPrompt,_0x1edeb2(0xff));function classify(_0x569973){const _0x5e8b9c={_0x260da6:0x94,_0x4628d1:0xf0,_0x1efa16:0xb0,_0x2f2d08:0x92,_0x4fc65d:0xa7,_0x3fd999:0xd8,_0xa25056:0x9d,_0xd7d78a:0xee,_0x242d63:0xd0,_0x5012e3:0xf5},_0x5aef81=_0x1edeb2,_0x130e75=_0x569973[_0x5aef81(_0x5e8b9c._0x260da6)][_0x5aef81(_0x5e8b9c._0x4628d1)]['message'][_0x5aef81(_0x5e8b9c._0x1efa16)](),_0x5e394f=_0x569973[_0x5aef81(_0x5e8b9c._0x260da6)]['error']['name']??'';let _0x1a484e=_0x5aef81(_0x5e8b9c._0x2f2d08),_0x40b0c7=_0x5aef81(_0x5e8b9c._0x4fc65d);if(_0x5e394f==='LocatorError'||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i[_0x5aef81(0xd0)](_0x130e75))_0x1a484e=_0x5aef81(_0x5e8b9c._0x3fd999),_0x40b0c7=_0x5e394f===_0x5aef81(0xa1)?_0x5aef81(0xf5):'medium';else{if(_0x5e394f===_0x5aef81(0x96)||/timeout|waiting for/i[_0x5aef81(0xd0)](_0x130e75))_0x1a484e=_0x5aef81(_0x5e8b9c._0xa25056),_0x40b0c7=_0x5e394f===_0x5aef81(0x96)?'high':_0x5aef81(_0x5e8b9c._0xd7d78a);else(_0x5e394f===_0x5aef81(0xf3)||/asserttext|assertvisible|expected.*got/i[_0x5aef81(_0x5e8b9c._0x242d63)](_0x130e75))&&(_0x1a484e=_0x5aef81(0xe0),_0x40b0c7=_0x5e394f===_0x5aef81(0xf3)?_0x5aef81(_0x5e8b9c._0x5012e3):_0x5aef81(0xee));}return{'suggestedAction':_0x1a484e,'confidence':_0x40b0c7};}__name(classify,_0x1edeb2(0xb9));function buildPromptMarkdown(_0x4877c4){const _0x460474={_0x20ee62:0xd7,_0x362539:0xd5,_0x541697:0xe6,_0xc3d3bf:0xda,_0x2704d1:0xd9,_0x506606:0xcc,_0x5e1a3b:0x9a,_0x189254:0xa9,_0x2be612:0x94,_0x10b002:0xb2,_0x1c25d5:0xd2,_0x3b5b7e:0xa0,_0x13d38f:0xbe,_0x41a8e8:0xfa,_0x313ff2:0x100,_0xb321bc:0xcd,_0x1195c3:0x106,_0x5985f5:0x94,_0x371d3e:0x94,_0x345863:0xf0,_0x1491a1:0xe8,_0x21e514:0xdc,_0x3297b3:0x99},_0x464444=_0x1edeb2,{bundle:_0x3e4a9d,scenarioSource:_0x18afff,scenarioRelative:_0x26cb27,consoleTail:_0x2b4276,suggestedAction:_0x57201b,confidence:_0x181a79}=_0x4877c4,_0x258c5d=_0x18afff[_0x464444(_0x460474._0x20ee62)]('\x0a')['map']((_0x2f7b59,_0x5ce914)=>String(_0x5ce914+0x1)[_0x464444(0xfb)](0x3,'\x20')+'\x20\x20'+_0x2f7b59)['join']('\x0a'),_0x32ed5c=_0x2b4276[_0x464444(0xef)]===0x0?_0x464444(_0x460474._0x362539):_0x2b4276[_0x464444(_0x460474._0x541697)](_0x51a915=>'['+_0x51a915[_0x464444(0xa6)]+']\x20'+_0x51a915[_0x464444(0x9e)]['toUpperCase']()+':\x20'+_0x51a915[_0x464444(0xb4)])[_0x464444(0xab)]('\x0a'),_0x5579b4=_0x3e4a9d['snapshot']?_0x464444(0xe2)+_0x3e4a9d[_0x464444(_0x460474._0xc3d3bf)][_0x464444(_0x460474._0x2704d1)]+_0x464444(_0x460474._0x506606)+_0x3e4a9d[_0x464444(0xda)][_0x464444(0xfc)]+_0x464444(0xba):_0x464444(0xb5);return _0x464444(_0x460474._0x5e1a3b)+_0x3e4a9d[_0x464444(0x94)][_0x464444(0xaf)]+'`\x20in\x20`'+_0x26cb27+_0x464444(_0x460474._0x189254)+(_0x3e4a9d[_0x464444(_0x460474._0x2be612)][_0x464444(_0x460474._0x10b002)]??'?')+_0x464444(_0x460474._0x1c25d5)+_0x3e4a9d[_0x464444(_0x460474._0x2be612)]['line']+_0x464444(_0x460474._0x3b5b7e)+_0x3e4a9d[_0x464444(0x94)]['col']+_0x464444(_0x460474._0x13d38f)+(_0x3e4a9d[_0x464444(0x94)]['error'][_0x464444(0x91)]??_0x464444(_0x460474._0x41a8e8))+_0x464444(_0x460474._0x313ff2)+_0x3e4a9d['trace']['error'][_0x464444(_0x460474._0xb321bc)]+'\x0a-\x20**Suggested\x20action**:\x20`'+_0x57201b+_0x464444(_0x460474._0x1195c3)+_0x181a79+_0x464444(0xbb)+(_0x3e4a9d[_0x464444(_0x460474._0x5985f5)]['error'][_0x464444(0xe8)]?_0x464444(0x104)+_0x3e4a9d[_0x464444(_0x460474._0x371d3e)][_0x464444(_0x460474._0x345863)][_0x464444(_0x460474._0x1491a1)]+_0x464444(0x95):'')+_0x464444(_0x460474._0x21e514)+_0x258c5d+'\x0a```\x0a\x0a##\x20Last\x20console\x20entries\x0a\x0a```\x0a'+_0x32ed5c+'\x0a```\x0a\x0a##\x20Semantic-DOM\x20snapshot\x0a\x0a'+_0x5579b4+_0x464444(_0x460474._0x3297b3);}function _0x5f40(_0x4cfe48,_0x5073aa){_0x4cfe48=_0x4cfe48-0x91;const _0x2f3e42=_0x2f3e();let _0x5f40ca=_0x2f3e42[_0x4cfe48];if(_0x5f40['EDnuyN']===undefined){var _0x4612fe=function(_0x4602ac){const _0x10737c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x316ae0='',_0x2551fb='';for(let _0x28b338=0x0,_0x2cb81a,_0x323aab,_0x5d74d2=0x0;_0x323aab=_0x4602ac['charAt'](_0x5d74d2++);~_0x323aab&&(_0x2cb81a=_0x28b338%0x4?_0x2cb81a*0x40+_0x323aab:_0x323aab,_0x28b338++%0x4)?_0x316ae0+=String['fromCharCode'](0xff&_0x2cb81a>>(-0x2*_0x28b338&0x6)):0x0){_0x323aab=_0x10737c['indexOf'](_0x323aab);}for(let _0x247e91=0x0,_0x247530=_0x316ae0['length'];_0x247e91<_0x247530;_0x247e91++){_0x2551fb+='%'+('00'+_0x316ae0['charCodeAt'](_0x247e91)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2551fb);};_0x5f40['OYOMgw']=_0x4612fe,_0x5f40['tVJxpG']={},_0x5f40['EDnuyN']=!![];}const _0x298437=_0x2f3e42[0x0],_0x8c736c=_0x4cfe48+_0x298437,_0x5596b2=_0x5f40['tVJxpG'][_0x8c736c];return!_0x5596b2?(_0x5f40ca=_0x5f40['OYOMgw'](_0x5f40ca),_0x5f40['tVJxpG'][_0x8c736c]=_0x5f40ca):_0x5f40ca=_0x5596b2,_0x5f40ca;}__name(buildPromptMarkdown,_0x1edeb2(0xe4));function runPrepareFix(_0x3e6cb0,_0x1be1d3={}){const _0x4b83d4={_0x5b0860:0x9b,_0x2f9575:0xc9,_0x205fd4:0xef,_0x432cd2:0xaf,_0x194ff4:0xe6,_0x1e8ec0:0xef,_0x2db7a8:0xa3,_0x1539c8:0xc1,_0x14bdef:0x103,_0xf05d2a:0xa3,_0x2cbf51:0xa3,_0x3b9898:0xde,_0x4dff83:0xac,_0x36e1ee:0xc7,_0x30f2bf:0xcd,_0x2c485f:0x9c},_0x49ca3a=_0x1edeb2,_0x2042f8=_0x1be1d3[_0x49ca3a(0xe5)]??process['stdout'],_0x138be5=_0x1be1d3[_0x49ca3a(0xcb)]??process['stderr'],_0x2c6157=_0x1be1d3[_0x49ca3a(0x9b)]??process[_0x49ca3a(_0x4b83d4._0x5b0860)](),_0x1dd470=_0x3e6cb0[_0x49ca3a(0xf1)]('--failing');let _0x39d9b0=_0x3e6cb0[_0x49ca3a(_0x4b83d4._0x2f9575)](_0xa410dd=>!_0xa410dd[_0x49ca3a(0xae)]('-'));if(_0x1dd470||_0x39d9b0['length']===0x0){const _0x250f74=listFailures(defaultFailuresRoot(_0x2c6157));if(_0x250f74[_0x49ca3a(_0x4b83d4._0x205fd4)]===0x0)return _0x138be5['write']('prepare-fix:\x20no\x20failure\x20bundles\x20found\x20under\x20.unotest/failures/.\x20Run\x20a\x20failing\x20test\x20first;\x20the\x20bundle\x20is\x20written\x20automatically.\x0a'),0x1;if(_0x39d9b0['length']===0x0){const _0x5a41f7=new Map();for(const _0x41dd9f of _0x250f74){if(!_0x5a41f7[_0x49ca3a(0x97)](_0x41dd9f[_0x49ca3a(0xaf)]))_0x5a41f7[_0x49ca3a(0xc3)](_0x41dd9f[_0x49ca3a(_0x4b83d4._0x432cd2)],_0x41dd9f);}_0x39d9b0=[..._0x5a41f7[_0x49ca3a(0xec)]()][_0x49ca3a(_0x4b83d4._0x194ff4)](_0x194f33=>_0x194f33[_0x49ca3a(0xd6)]+'/'+_0x194f33[_0x49ca3a(0xaf)]);}}if(_0x39d9b0[_0x49ca3a(_0x4b83d4._0x1e8ec0)]===0x0)return _0x138be5[_0x49ca3a(0xa3)]('prepare-fix:\x20no\x20testId\x20provided\x20and\x20no\x20failing\x20tests\x20found.\x0a'),0x1;_0x2042f8[_0x49ca3a(_0x4b83d4._0x2db7a8)](_0x49ca3a(0xd1)+_0x39d9b0[_0x49ca3a(0xef)]+_0x49ca3a(0xf7));const _0x5b7236=defaultFailuresRoot(_0x2c6157);for(const _0x3d610a of _0x39d9b0){try{const _0x19aef0=composeFixPrompt(_0x3d610a,{'cwd':_0x2c6157,'failuresRoot':_0x5b7236}),_0x1b11fd=_0x2551fb(_0x19aef0[_0x49ca3a(0xc5)][_0x49ca3a(0xb6)],_0x49ca3a(0xf9));_0x316ae0(_0x1b11fd,_0x19aef0[_0x49ca3a(_0x4b83d4._0x1539c8)]),_0x2042f8['write'](_0x49ca3a(_0x4b83d4._0x14bdef)+_0x3d610a+'\x0a'),_0x2042f8[_0x49ca3a(_0x4b83d4._0xf05d2a)](_0x49ca3a(0xf6)+_0x1b11fd+'\x0a'),_0x2042f8[_0x49ca3a(_0x4b83d4._0x2cbf51)]('\x20\x20\x20\x20\x20\x20suggestedAction='+_0x19aef0[_0x49ca3a(_0x4b83d4._0x3b9898)]+'\x20\x20confidence='+_0x19aef0[_0x49ca3a(_0x4b83d4._0x4dff83)]+_0x49ca3a(0xc4)+_0x19aef0[_0x49ca3a(_0x4b83d4._0x36e1ee)]+'t\x0a');}catch(_0x287b40){_0x138be5[_0x49ca3a(0xa3)](_0x49ca3a(0xfd)+_0x3d610a+':\x20'+(_0x287b40 instanceof Error?_0x287b40[_0x49ca3a(_0x4b83d4._0x30f2bf)]:String(_0x287b40))+'\x0a');}}return _0x2042f8['write'](_0x49ca3a(_0x4b83d4._0x2c485f)),0x0;}__name(runPrepareFix,_0x1edeb2(0xdd));var invokedDirectly=process[_0x1edeb2(0xe1)][0x1]&&fileURLToPath(import.meta.url)===process[_0x1edeb2(0xe1)][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x1edeb2(0xe1)][_0x1edeb2(0xca)](0x2));process[_0x1edeb2(0xce)](code);}export{runPrepareFix};
|
|
1
|
+
const _0x2d6e80=_0x234a;(function(_0x9b5062,_0x13bbfb){const _0xf61550={_0x45a0d4:0x196,_0x1f58dd:0x19b,_0x446268:0x1e4,_0x2e400a:0x187,_0x1def18:0x1d1,_0x5b6d3e:0x1d6},_0x29fe69=_0x234a,_0x101476=_0x9b5062();while(!![]){try{const _0x8c42c8=parseInt(_0x29fe69(0x1ab))/0x1*(-parseInt(_0x29fe69(_0xf61550._0x45a0d4))/0x2)+parseInt(_0x29fe69(0x1bb))/0x3*(parseInt(_0x29fe69(0x1e2))/0x4)+parseInt(_0x29fe69(_0xf61550._0x1f58dd))/0x5+-parseInt(_0x29fe69(0x1cb))/0x6+parseInt(_0x29fe69(_0xf61550._0x446268))/0x7*(parseInt(_0x29fe69(0x189))/0x8)+parseInt(_0x29fe69(_0xf61550._0x2e400a))/0x9*(parseInt(_0x29fe69(_0xf61550._0x1def18))/0xa)+-parseInt(_0x29fe69(_0xf61550._0x5b6d3e))/0xb;if(_0x8c42c8===_0x13bbfb)break;else _0x101476['push'](_0x101476['shift']());}catch(_0x5cd671){_0x101476['push'](_0x101476['shift']());}}}(_0x20eb,0xe3135));var __defProp=Object[_0x2d6e80(0x1a5)],__name=(_0x3fc487,_0x388928)=>__defProp(_0x3fc487,_0x2d6e80(0x1b9),{'value':_0x388928,'configurable':!![]});import{writeFileSync as _0x1e2cf8}from'fs';import{join as _0x168772}from'path';import{fileURLToPath}from'url';function _0x234a(_0x470ec1,_0x522593){_0x470ec1=_0x470ec1-0x17c;const _0x20ebce=_0x20eb();let _0x234ae2=_0x20ebce[_0x470ec1];if(_0x234a['InTsfV']===undefined){var _0xcdf763=function(_0x5bbc74){const _0xccb3ad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1e2cf8='',_0x168772='';for(let _0x40ff95=0x0,_0x11b20e,_0x3fc487,_0x388928=0x0;_0x3fc487=_0x5bbc74['charAt'](_0x388928++);~_0x3fc487&&(_0x11b20e=_0x40ff95%0x4?_0x11b20e*0x40+_0x3fc487:_0x3fc487,_0x40ff95++%0x4)?_0x1e2cf8+=String['fromCharCode'](0xff&_0x11b20e>>(-0x2*_0x40ff95&0x6)):0x0){_0x3fc487=_0xccb3ad['indexOf'](_0x3fc487);}for(let _0x8c87d8=0x0,_0x4d2e7b=_0x1e2cf8['length'];_0x8c87d8<_0x4d2e7b;_0x8c87d8++){_0x168772+='%'+('00'+_0x1e2cf8['charCodeAt'](_0x8c87d8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x168772);};_0x234a['PWoyfQ']=_0xcdf763,_0x234a['qMqnds']={},_0x234a['InTsfV']=!![];}const _0x4ffcb7=_0x20ebce[0x0],_0xff83ef=_0x470ec1+_0x4ffcb7,_0x20131b=_0x234a['qMqnds'][_0xff83ef];return!_0x20131b?(_0x234ae2=_0x234a['PWoyfQ'](_0x234ae2),_0x234a['qMqnds'][_0xff83ef]=_0x234ae2):_0x234ae2=_0x20131b,_0x234ae2;}import{readFileSync as _0x40ff95,existsSync as _0x11b20e}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';function readFailureBundle(_0x8c87d8){const _0xe30000={_0x21410b:0x1ea,_0x476048:0x1c9,_0x389f3c:0x198,_0x4991a9:0x1c9,_0x59fc80:0x1b0,_0x224ccb:0x1dd,_0x2fa10e:0x1bf,_0x19d4b0:0x1d5,_0x3873a8:0x1ec,_0x588964:0x1ed,_0x46eef1:0x1a4},_0x400d41=_0x2d6e80;if(!existsSync(_0x8c87d8))return null;const _0x4d2e7b=join(_0x8c87d8,_0x400d41(_0xe30000._0x21410b));if(!existsSync(_0x4d2e7b))return null;const _0x25e69f=JSON[_0x400d41(0x1c9)](readFileSync(_0x4d2e7b,'utf8')),_0x50d4bb=join(_0x8c87d8,_0x400d41(0x1a0)),_0x439129=existsSync(_0x50d4bb)?JSON[_0x400d41(_0xe30000._0x476048)](readFileSync(_0x50d4bb,'utf8')):[],_0x49f49c=join(_0x8c87d8,'snapshot.json'),_0x1513b0=existsSync(_0x49f49c)?JSON[_0x400d41(0x1c9)](readFileSync(_0x49f49c,_0x400d41(0x1bf))):void 0x0,_0x34956={'trace':_0x25e69f,'console':_0x439129},_0x1c806f=join(_0x8c87d8,_0x400d41(0x17d));existsSync(_0x1c806f)&&(_0x34956[_0x400d41(_0xe30000._0x389f3c)]=JSON[_0x400d41(_0xe30000._0x4991a9)](readFileSync(_0x1c806f,'utf8')));if(_0x1513b0!==void 0x0)_0x34956[_0x400d41(_0xe30000._0x59fc80)]=_0x1513b0;const _0x4825d4=join(_0x8c87d8,_0x400d41(0x1de));if(existsSync(_0x4825d4))_0x34956[_0x400d41(0x1c2)]=_0x4825d4;else{const _0x3e0776=join(_0x8c87d8,'screenshot-error.txt');existsSync(_0x3e0776)&&(_0x34956[_0x400d41(_0xe30000._0x224ccb)]=readFileSync(_0x3e0776,_0x400d41(_0xe30000._0x2fa10e)));}const _0x159afc=join(_0x8c87d8,_0x400d41(_0xe30000._0x19d4b0));if(existsSync(_0x159afc))_0x34956[_0x400d41(_0xe30000._0x3873a8)]=_0x159afc;const _0x1cf3e7=join(_0x8c87d8,_0x400d41(_0xe30000._0x588964));if(existsSync(_0x1cf3e7))_0x34956[_0x400d41(_0xe30000._0x46eef1)]=_0x1cf3e7;return _0x34956;}__name(readFailureBundle,_0x2d6e80(0x1eb));function _0x20eb(){const _0x4e57fd=['CgfYC2u','y29UC29SzuXPBwL0','mteWodmYndjfCMTvA3G','CNvUuhjLCgfYzuzPEa','DgvZDa','CgfKu3rHCNq','ywrKlxDHAxrMB3i','DxjS','nZuZnZbAweTTD2q','DgLTzxn0yw1W','C3rKzxjY','AxneAxjLy3rVCNK','AgfYlMPZB24','mtyYmtGWmJztC2vnA0K','BgvUz3rO','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','rxjYB3i','y2XHC3nPzNK','BwfW','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','C2nYzwvUC2HVDevYCM9Y','C2nYzwvUC2HVDc5WBMC','CMv3CML0zs1ZzwXLy3rVCG','y29TCg9ZzuzPEfbYB21WDa','zMfPBhvYzxnsB290','mJbUtuzWsM4','tg9JyxrVCKvYCM9Y','mtu2mwrlqvnlqW','y3DK','C3bSAxq','ihrLC3qOCYKGkeqTmJuPcGO','y29S','xYHUBYbZzw1HBNrPyY1KB20GC25HChnOB3qGy2fWDhvYzwqGzM9YihrOAxmGzMfPBhvYzsLF','zMfPBhvYzs5QC29U','CMvHzezHAwX1CMvcDw5KBgu','AgfYugf0Aa','DMLKzw8UD2vIBq','yNvPBgrqCM9TChrnyxjRzg93BG','BMv0D29YAY5QC29U','C3rHCNrZv2L0Aa','zML4lxbYB21WDc5Tza','C2v0','B3v0','DhjHy2u','cI0GkIPfCNjVCIOQoIbG','Aw5JBhvKzxm','ycdIGjqG','ChjLCgfYzs1MAxG6ig5VigzHAwX1CMuGyNvUzgXLCYbMB3vUzcb1BMrLCIaUDw5VDgvZDc9MywLSDxjLCY8Uifj1BIbHigzHAwXPBMCGDgvZDcbMAxjZDdSGDgHLigj1BMrSzsbPCYb3CML0DgvUigf1Dg9TyxrPy2fSBhKUcG','mJeXnuXbwMLdzW','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','nti4ndbQsfzkCM8','yxjNDG','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','BgLZDezHAwX1CMvZ','C291CMnLCW','CNvUswq','cK5LEhq6ihbHC3rLigvHy2GGzML4lxbYB21WDc5TzcbPBNrVihLVDxiGteXnignSAwvUDcaOq2XHDwrLienVzguGlWPdDxjZB3iGlYbLDgmUks4GvgHLieXmtsbYzxr1CM5ZigeGDw5PzMLLzcbKAwzMoYbYzxzPzxCGAxqGyw5KigfWCgX5cM1HBNvHBgX5lIbxzsbUzxzLCIbHDxrVlwfWCgX5icHelti1ks4k','Dw5RBM93BG','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','cMbGyaO','zxjYB3i','mty0mZuWrNbpCuvO','Dg9vChbLCKnHC2u','BMv0D29YAW','C3rHy2S','DMfSDwvZ','mZyXnJCWDgPiugfX','lcbJB2WG','vvjmoIa','y29UzMLKzw5Jzq','ChjVBxb0twfYA2rVD24','y29UC29Szs5QC29U','Bg9JywXLq29TCgfYzq','BwvKAxvT','C29YDa','DMLKzw9qyxrO','zgvMAw5LuhjVCgvYDhK','vgLTzw91DevYCM9Y','Dg9mB3DLCKnHC2u','AgLNAa','phnJzw5HCMLVigzPBguGBM8GBg9Uz2vYig9UigrPC2S+','yNvUzgXLrgLY','mtf2zfH4tMS','icb+','AM9PBG','zMfPBhvYzxm','zgvMyxvSDezHAwX1CMvZuM9VDa','C25HChnOB3q','y2HHBMDLlwfZC2vYDgLVBG','Dgv4Da','icbJB25MAwrLBMnLpq','iYmJifn0ywnRcMbGyaO','CMvZB2X2zuj1BMrSzurPCG','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','DgvZDezU','iIaOBg9VA2vKigLUia','BMfTzq','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','mteWmZq5m0jlwKjfDG','C2XPy2u','icdINjmG','y2fWDhvYzwrbDa','DxrMoa','zxjY','Bgv2zwW','C2nYzwvUC2HVDfbHDgG','BwvZC2fNzq','D3jPDgu','Bg93','C2nLBMfYAw9qyxrO','AgfZ','y29UC29Szq'];_0x20eb=function(){return _0x4e57fd;};return _0x20eb();}function listFailures(_0x120f72){const _0x821df0={_0x417cfd:0x1ea,_0x4213e1:0x1c9},_0x3e36f1=_0x2d6e80;if(!existsSync(_0x120f72))return[];const _0x2457ec=[];for(const _0x57e832 of readdirSync(_0x120f72)){const _0x5204f9=join(_0x120f72,_0x57e832);if(!statSync(_0x5204f9)[_0x3e36f1(0x1d4)]())continue;for(const _0x54dcad of readdirSync(_0x5204f9)){const _0x5801ab=join(_0x5204f9,_0x54dcad);if(!statSync(_0x5801ab)[_0x3e36f1(0x1d4)]())continue;const _0x3a91a1=join(_0x5801ab,_0x3e36f1(_0x821df0._0x417cfd));if(!existsSync(_0x3a91a1))continue;try{const _0x37f390=JSON[_0x3e36f1(_0x821df0._0x4213e1)](readFileSync(_0x3a91a1,'utf8'));_0x2457ec['push']({'runId':_0x57e832,'testFn':_0x37f390['testFn'],'scenarioPath':_0x37f390['scenarioPath'],'dir':_0x5801ab,'timestamp':_0x37f390['timestamp']});}catch{}}}return _0x2457ec[_0x3e36f1(0x1a3)]((_0x2bb93b,_0x34904a)=>_0x34904a[_0x3e36f1(0x1d2)][_0x3e36f1(0x1a1)](_0x2bb93b[_0x3e36f1(0x1d2)])),_0x2457ec;}__name(listFailures,_0x2d6e80(0x18e));function defaultFailuresRoot(_0x4cb15e=process[_0x2d6e80(0x1e5)]()){const _0x5880d3={_0x4baeb6:0x1ae},_0x4c267a=_0x2d6e80;return join(_0x4cb15e,'.unotest',_0x4c267a(_0x5880d3._0x4baeb6));}__name(defaultFailuresRoot,_0x2d6e80(0x1af));function resolveBundleDir(_0x2bc35c,_0x50e6d7){const _0xd52a41={_0x36380f:0x1d4},_0x4a3cd1=_0x2d6e80;if(existsSync(_0x2bc35c)&&statSync(_0x2bc35c)[_0x4a3cd1(_0xd52a41._0x36380f)]())return _0x2bc35c;return join(_0x50e6d7,_0x2bc35c);}__name(resolveBundleDir,_0x2d6e80(0x1b5));function composeFixPrompt(_0x413027,_0x45db8e={}){const _0x42f947={_0x1906a6:0x1e1,_0x2c70a1:0x1d8,_0x1620ea:0x1b8,_0x16b763:0x1e5,_0x3deec6:0x1e5,_0x4b7b3e:0x182,_0xc2d246:0x1a9,_0x3e529a:0x1c8,_0x31e278:0x1c6,_0x7795d2:0x1d7},_0x3ca1e5=_0x2d6e80,_0x16618a=_0x45db8e[_0x3ca1e5(_0x42f947._0x1906a6)]??defaultFailuresRoot(),_0x1f29a8=resolveBundleDir(_0x413027,_0x16618a),_0x5aac73=readFailureBundle(_0x1f29a8);if(!_0x5aac73)throw new Error(_0x3ca1e5(_0x42f947._0x2c70a1)+_0x413027+_0x3ca1e5(_0x42f947._0x1620ea)+_0x1f29a8+')');const _0x254a71=_0x45db8e[_0x3ca1e5(_0x42f947._0x16b763)]??process[_0x3ca1e5(_0x42f947._0x3deec6)](),_0x3b5eee=_0x11b20e(_0x5aac73[_0x3ca1e5(_0x42f947._0x4b7b3e)]['scenarioPath'])?_0x40ff95(_0x5aac73['trace'][_0x3ca1e5(0x1c6)],_0x3ca1e5(0x1bf)):_0x3ca1e5(_0x42f947._0xc2d246),_0x1c3d9d=_0x45db8e[_0x3ca1e5(0x1ca)]??0x19,_0x30c554=_0x5aac73[_0x3ca1e5(_0x42f947._0x3e529a)][_0x3ca1e5(0x1bc)](-_0x1c3d9d),{suggestedAction:_0x198b1d,confidence:_0x5397ef}=classify(_0x5aac73),_0x15ab6d=buildPromptMarkdown({'bundle':_0x5aac73,'scenarioSource':_0x3b5eee,'scenarioRelative':relative(_0x254a71,_0x5aac73[_0x3ca1e5(_0x42f947._0x4b7b3e)][_0x3ca1e5(0x1c6)]),'consoleTail':_0x30c554,'suggestedAction':_0x198b1d,'confidence':_0x5397ef}),_0x2f7875=Math['ceil'](_0x15ab6d[_0x3ca1e5(0x1d7)]/0x4);return{'promptMarkdown':_0x15ab6d,'suggestedAction':_0x198b1d,'confidence':_0x5397ef,'sources':{'bundleDir':_0x1f29a8,'scenarioPath':_0x5aac73['trace'][_0x3ca1e5(_0x42f947._0x31e278)],'consoleEntries':_0x5aac73['console'][_0x3ca1e5(_0x42f947._0x7795d2)],'hasSnapshot':!!_0x5aac73[_0x3ca1e5(0x1b0)]},'approxTokens':_0x2f7875};}__name(composeFixPrompt,_0x2d6e80(0x1e0));function classify(_0x1f4bf1){const _0x377bd4={_0x1fb35c:0x182,_0x13f209:0x1a7,_0x3a09d3:0x195,_0xd17d35:0x1cd,_0x22a646:0x1df,_0x18942b:0x1a6,_0x4fd45e:0x1a8,_0x1724ac:0x1cd,_0x4f38b2:0x1a2},_0x52f4ae=_0x2d6e80,_0x51a693=_0x1f4bf1[_0x52f4ae(_0x377bd4._0x1fb35c)][_0x52f4ae(0x195)][_0x52f4ae(0x1c3)][_0x52f4ae(_0x377bd4._0x13f209)](),_0x1a0222=_0x1f4bf1[_0x52f4ae(0x182)][_0x52f4ae(_0x377bd4._0x3a09d3)][_0x52f4ae(0x1b9)]??'';let _0x3d4d23=_0x52f4ae(0x192),_0x180323=_0x52f4ae(0x1c5);if(_0x1a0222===_0x52f4ae(0x1e3)||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i[_0x52f4ae(_0x377bd4._0xd17d35)](_0x51a693))_0x3d4d23=_0x52f4ae(_0x377bd4._0x22a646),_0x180323=_0x1a0222===_0x52f4ae(0x1e3)?_0x52f4ae(0x1a8):_0x52f4ae(0x1a2);else{if(_0x1a0222===_0x52f4ae(_0x377bd4._0x18942b)||/timeout|waiting for/i[_0x52f4ae(0x1cd)](_0x51a693))_0x3d4d23=_0x52f4ae(0x1cf),_0x180323=_0x1a0222==='TimeoutError'?_0x52f4ae(_0x377bd4._0x4fd45e):_0x52f4ae(0x1a2);else(_0x1a0222==='AssertionError'||/asserttext|assertvisible|expected.*got/i[_0x52f4ae(_0x377bd4._0x1724ac)](_0x51a693))&&(_0x3d4d23=_0x52f4ae(0x1b1),_0x180323=_0x1a0222==='AssertionError'?'high':_0x52f4ae(_0x377bd4._0x4f38b2));}return{'suggestedAction':_0x3d4d23,'confidence':_0x180323};}__name(classify,_0x2d6e80(0x1da));function buildPromptMarkdown(_0x4c5d32){const _0xf6a2f3={_0x1704aa:0x1e6,_0x19e1c3:0x1db,_0x484a98:0x1d7,_0x2b41ca:0x1db,_0x360381:0x1be,_0x23ad93:0x18d,_0x442f34:0x19c,_0x4b9665:0x195,_0x4c02f8:0x1d9,_0x248f32:0x185,_0x1c98e3:0x182,_0x34b6cc:0x195,_0x25777b:0x1c3,_0x47704a:0x195,_0xfb6528:0x199,_0x22bdf4:0x188,_0x2b3dca:0x18b},_0x501804=_0x2d6e80,{bundle:_0x35679e,scenarioSource:_0x8696b9,scenarioRelative:_0x337b69,consoleTail:_0x5a7336,suggestedAction:_0x384a0e,confidence:_0x47578c}=_0x4c5d32,_0xa2f69a=_0x8696b9[_0x501804(_0xf6a2f3._0x1704aa)]('\x0a')[_0x501804(_0xf6a2f3._0x19e1c3)]((_0x36923e,_0x30445c)=>String(_0x30445c+0x1)[_0x501804(0x1ce)](0x3,'\x20')+'\x20\x20'+_0x36923e)[_0x501804(0x1ad)]('\x0a'),_0x581e17=_0x5a7336[_0x501804(_0xf6a2f3._0x484a98)]===0x0?_0x501804(0x1b6):_0x5a7336[_0x501804(_0xf6a2f3._0x2b41ca)](_0x52e446=>'['+_0x52e446[_0x501804(0x1d2)]+']\x20'+_0x52e446[_0x501804(0x1c1)][_0x501804(0x197)]()+':\x20'+_0x52e446[_0x501804(0x1b2)])['join']('\x0a'),_0x4436b6=_0x35679e[_0x501804(0x1b0)]?_0x501804(0x19d)+_0x35679e['snapshot'][_0x501804(0x1d0)]+'\x0aCaptured:\x20'+_0x35679e[_0x501804(0x1b0)][_0x501804(_0xf6a2f3._0x360381)]+_0x501804(_0xf6a2f3._0x23ad93):_0x501804(0x1e9);return'#\x20Test\x20fix\x20request\x0a\x0a##\x20Failure\x20context\x0a\x0a-\x20**Test**:\x20`'+_0x35679e[_0x501804(0x182)][_0x501804(0x1b7)]+'`\x20in\x20`'+_0x337b69+'`\x0a-\x20**Step\x20index**:\x20'+(_0x35679e['trace']['stepIndex']??'?')+_0x501804(0x18c)+_0x35679e[_0x501804(0x182)]['line']+_0x501804(_0xf6a2f3._0x442f34)+_0x35679e[_0x501804(0x182)][_0x501804(0x1e8)]+_0x501804(0x183)+(_0x35679e['trace'][_0x501804(_0xf6a2f3._0x4b9665)][_0x501804(0x1b9)]??_0x501804(_0xf6a2f3._0x4c02f8))+_0x501804(_0xf6a2f3._0x248f32)+_0x35679e[_0x501804(_0xf6a2f3._0x1c98e3)][_0x501804(_0xf6a2f3._0x34b6cc)][_0x501804(_0xf6a2f3._0x25777b)]+_0x501804(0x1dc)+_0x384a0e+'`\x20(confidence:\x20'+_0x47578c+')\x0a\x0a'+(_0x35679e[_0x501804(0x182)][_0x501804(_0xf6a2f3._0x47704a)][_0x501804(_0xf6a2f3._0xfb6528)]?_0x501804(0x1b4)+_0x35679e[_0x501804(_0xf6a2f3._0x1c98e3)][_0x501804(_0xf6a2f3._0x4b9665)][_0x501804(_0xf6a2f3._0xfb6528)]+_0x501804(0x194):'')+_0x501804(_0xf6a2f3._0x22bdf4)+_0xa2f69a+_0x501804(0x1ba)+_0x581e17+_0x501804(_0xf6a2f3._0x2b3dca)+_0x4436b6+'\x0a\x0a##\x20What\x20we\x20need\x0a\x0aProduce\x20a\x20**unified\x20diff**\x20that\x20fixes\x20the\x20test.\x20Constraints:\x0a\x0a1.\x20Keep\x20the\x20same\x20test_*()\x20function\x20name\x20and\x20the\x20same\x20overall\x20flow\x20—\x20change\x20the\x0a\x20\x20\x20minimum\x20required\x20to\x20make\x20the\x20failing\x20step\x20succeed.\x0a2.\x20Prefer\x20the\x20D-22\x20selector\x20hierarchy:\x20`getByTestId`\x20→\x20`getByRole({name})`\x0a\x20\x20\x20→\x20`getByLabel`\x20→\x20`getByText`\x20→\x20`locator(css)`\x20(last\x20resort).\x0a3.\x20If\x20adding\x20a\x20wait,\x20prefer\x20`waitFor(loc)`\x20/\x20`waitForUrl(pattern)`\x20over\x20`pause(ms)`.\x0a4.\x20No\x20imports\x20—\x20DSL\x20functions\x20resolve\x20through\x20the\x20runtime\x20registry\x20by\x20name.\x0a5.\x20No\x20`async`/`await`\x20—\x20the\x20executor\x20handles\x20async\x20internally.\x0a6.\x20Output\x20ONLY\x20the\x20unified\x20diff\x20between\x20fences\x20```diff\x20…\x20```.\x20The\x20user\x0a\x20\x20\x20reviews\x20+\x20applies\x20it\x20manually\x20(D-25\x20—\x20we\x20never\x20auto-apply).\x0a';}__name(buildPromptMarkdown,_0x2d6e80(0x17c));function runPrepareFix(_0x5dca98,_0x37b7c0={}){const _0x5a38ea={_0x592ebb:0x1c0,_0x4df76e:0x184,_0x481e8c:0x1d7,_0x1c2c6f:0x1c4,_0x5365c1:0x186,_0x52de7c:0x1c7,_0x219fc5:0x1b7,_0x3c329e:0x180,_0x189f1f:0x1aa,_0x4e8bb8:0x17f,_0x47a447:0x19f,_0x549fdd:0x1bd,_0x595248:0x19e,_0x121e80:0x1ac},_0x5d4611=_0x2d6e80,_0x2eba37=_0x37b7c0[_0x5d4611(0x181)]??process['stdout'],_0x32b822=_0x37b7c0[_0x5d4611(_0x5a38ea._0x592ebb)]??process[_0x5d4611(0x1d3)],_0x23920b=_0x37b7c0[_0x5d4611(0x1e5)]??process['cwd'](),_0x5ac21c=_0x5dca98[_0x5d4611(_0x5a38ea._0x4df76e)]('--failing');let _0x2703e7=_0x5dca98['filter'](_0x5385dc=>!_0x5385dc[_0x5d4611(0x17e)]('-'));if(_0x5ac21c||_0x2703e7[_0x5d4611(_0x5a38ea._0x481e8c)]===0x0){const _0x422478=listFailures(defaultFailuresRoot(_0x23920b));if(_0x422478[_0x5d4611(0x1d7)]===0x0)return _0x32b822[_0x5d4611(_0x5a38ea._0x1c2c6f)](_0x5d4611(_0x5a38ea._0x5365c1)),0x1;if(_0x2703e7['length']===0x0){const _0x12f07a=new Map();for(const _0x4f7800 of _0x422478){if(!_0x12f07a[_0x5d4611(_0x5a38ea._0x52de7c)](_0x4f7800[_0x5d4611(_0x5a38ea._0x219fc5)]))_0x12f07a[_0x5d4611(_0x5a38ea._0x3c329e)](_0x4f7800[_0x5d4611(0x1b7)],_0x4f7800);}_0x2703e7=[..._0x12f07a[_0x5d4611(0x19a)]()][_0x5d4611(0x1db)](_0x576379=>_0x576379[_0x5d4611(0x190)]+'/'+_0x576379[_0x5d4611(0x1b7)]);}}if(_0x2703e7['length']===0x0)return _0x32b822['write']('prepare-fix:\x20no\x20testId\x20provided\x20and\x20no\x20failing\x20tests\x20found.\x0a'),0x1;_0x2eba37[_0x5d4611(0x1c4)]('prepare-fix:\x20composing\x20fix\x20prompts\x20for\x20'+_0x2703e7[_0x5d4611(0x1d7)]+_0x5d4611(0x1e7));const _0x245a23=defaultFailuresRoot(_0x23920b);for(const _0x1d5dbc of _0x2703e7){try{const _0x15a153=composeFixPrompt(_0x1d5dbc,{'cwd':_0x23920b,'failuresRoot':_0x245a23}),_0x33d453=_0x168772(_0x15a153[_0x5d4611(0x18f)][_0x5d4611(_0x5a38ea._0x189f1f)],_0x5d4611(_0x5a38ea._0x4e8bb8));_0x1e2cf8(_0x33d453,_0x15a153[_0x5d4611(_0x5a38ea._0x47a447)]),_0x2eba37[_0x5d4611(0x1c4)](_0x5d4611(_0x5a38ea._0x549fdd)+_0x1d5dbc+'\x0a'),_0x2eba37['write']('\x20\x20\x20\x20\x20\x20'+_0x33d453+'\x0a'),_0x2eba37[_0x5d4611(0x1c4)](_0x5d4611(0x193)+_0x15a153['suggestedAction']+_0x5d4611(0x1b3)+_0x15a153[_0x5d4611(_0x5a38ea._0x595248)]+_0x5d4611(_0x5a38ea._0x121e80)+_0x15a153['approxTokens']+'t\x0a');}catch(_0x338630){_0x32b822[_0x5d4611(_0x5a38ea._0x1c2c6f)]('\x20\x20✗\x20'+_0x1d5dbc+':\x20'+(_0x338630 instanceof Error?_0x338630['message']:String(_0x338630))+'\x0a');}}return _0x2eba37['write'](_0x5d4611(0x191)),0x0;}__name(runPrepareFix,_0x2d6e80(0x1cc));var invokedDirectly=process['argv'][0x1]&&fileURLToPath(import.meta.url)===process[_0x2d6e80(0x18a)][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x2d6e80(0x18a)]['slice'](0x2));process['exit'](code);}export{runPrepareFix};
|