@unotest/web 0.14.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/write-e2e-test/SKILL.md +16 -1
- package/.claude/skills/write-e2e-test-ground/SKILL.md +16 -1
- package/CHANGELOG.md +128 -0
- package/dist/config/schema.d.ts +12 -12
- package/dist/config/schema.js +1 -1
- package/dist/driver/index.d.ts +2 -2
- package/dist/driver/index.js +1 -1
- package/dist/dsl/index.d.ts +2 -2
- package/dist/dsl/index.js +1 -1
- package/dist/dsl/web-dsl-language-service.js +1 -1
- package/dist/inspection/page-inject.d.ts +1 -1
- package/dist/inspection/page-inject.js +5 -0
- package/dist/{interfaces-BaVF0jV-.d.ts → interfaces-elRn0llQ.d.ts} +18 -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 +89 -0
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x1652b3=_0x2436;(function(_0x50fd38,_0x6d5467){const _0x3efbc5={_0x364347:0x191,_0x497d97:0x194},_0x4f4fc2=_0x2436,_0x454d1c=_0x50fd38();while(!![]){try{const _0x3e1281=parseInt(_0x4f4fc2(_0x3efbc5._0x364347))/0x1*(parseInt(_0x4f4fc2(0x199))/0x2)+-parseInt(_0x4f4fc2(0x185))/0x3*(parseInt(_0x4f4fc2(0x18e))/0x4)+-parseInt(_0x4f4fc2(0x1af))/0x5+parseInt(_0x4f4fc2(0x189))/0x6*(parseInt(_0x4f4fc2(0x195))/0x7)+parseInt(_0x4f4fc2(_0x3efbc5._0x497d97))/0x8*(-parseInt(_0x4f4fc2(0x196))/0x9)+parseInt(_0x4f4fc2(0x1a2))/0xa+-parseInt(_0x4f4fc2(0x1a8))/0xb*(-parseInt(_0x4f4fc2(0x18d))/0xc);if(_0x3e1281===_0x6d5467)break;else _0x454d1c['push'](_0x454d1c['shift']());}catch(_0x57a573){_0x454d1c['push'](_0x454d1c['shift']());}}}(_0x3e2a,0xb462a));function _0x3e2a(){const _0x71d7ae=['l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','nJq5nZy0mhL3r3vPsq','uhjVz3jHBuzPBgvZkhG4nIK','te9dquXbufbeqvrb','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','zgvMAw5LuhjVCgvYDhK','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','mtuWmJu1nJbYzuvnrfm','D2HPy2G','r29Vz2XLienOCM9Tzq','D2LUmZi','BxnLzgDL','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','D2HPy2HpzG','mZGYmJKZnwrSu25dAq','uhjVz3jHBuzPBgvZ','BgvUz3rO','BMfTzq','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','C3rHCNrZv2L0Aa','nLD4u0TZCW','z29Vz2XLlwnOCM9Tzq','zw52','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','ntyXnMXhy3jQwG','CgXHDgzVCM0','ChjVyMvdAhjVBwvczxrH','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','mtj2swresum','nJm4nty0v2TRwMfq','zMLYC3rfEgLZDgLUz1bHDgG','y2HHBM5LBa','mNjrAKzhEq','twLJCM9ZB2z0ievKz2u','y2HYB21PDw0','odu2ndK2ohLWB1jSAa','mtq0mK1Iy3LZBa','ovjZq1vcwa','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','nJG0oda4CxbSy3bK','ChjVyMvfzgDL','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','zgfYD2LU','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','y2HYB21L','Dw5KzwzPBMvK'];_0x3e2a=function(){return _0x71d7ae;};return _0x3e2a();}var __defProp=Object[_0x1652b3(0x1a6)],__name=(_0x27df10,_0x1b7e19)=>__defProp(_0x27df10,_0x1652b3(0x182),{'value':_0x1b7e19,'configurable':!![]});import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){const _0x406800=_0x1652b3;for(const _0x1ac21f of[probeChrome,probeEdge,probeChromeBeta]){const _0x3218ae=_0x1ac21f();if(_0x3218ae[_0x406800(0x190)]!==null)return _0x3218ae;}return{'channel':null};}__name(probeSystemBrowser,'probeSystemBrowser');function probeChrome(){const _0x793dd3={_0x36d0c3:0x19f},_0x35ec7a=_0x1652b3,_0x3d0a62=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x3d0a62)return{'channel':_0x35ec7a(_0x793dd3._0x36d0c3),'path':_0x3d0a62,'label':_0x35ec7a(0x1aa)};return{'channel':null};}__name(probeChrome,'probeChrome');function probeEdge(){const _0x5c0587=_0x1652b3,_0x158ae2=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x158ae2)return{'channel':_0x5c0587(0x1ac),'path':_0x158ae2,'label':_0x5c0587(0x192)};return{'channel':null};}__name(probeEdge,_0x1652b3(0x19a));function probeChromeBeta(){const _0x3ae16f=firstExistingPath(CHROME_BETA_PATHS);if(_0x3ae16f)return{'channel':'chrome-beta','path':_0x3ae16f,'label':'Google\x20Chrome\x20Beta'};return{'channel':null};}function _0x2436(_0x4d13df,_0x4128f8){_0x4d13df=_0x4d13df-0x180;const _0x3e2acc=_0x3e2a();let _0x24361b=_0x3e2acc[_0x4d13df];if(_0x2436['qEKywa']===undefined){var _0x21774a=function(_0x381d19){const _0x796ef6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x27df10='',_0x1b7e19='';for(let _0x1ac21f=0x0,_0x3218ae,_0x3d0a62,_0x158ae2=0x0;_0x3d0a62=_0x381d19['charAt'](_0x158ae2++);~_0x3d0a62&&(_0x3218ae=_0x1ac21f%0x4?_0x3218ae*0x40+_0x3d0a62:_0x3d0a62,_0x1ac21f++%0x4)?_0x27df10+=String['fromCharCode'](0xff&_0x3218ae>>(-0x2*_0x1ac21f&0x6)):0x0){_0x3d0a62=_0x796ef6['indexOf'](_0x3d0a62);}for(let _0x3ae16f=0x0,_0x3b7d62=_0x27df10['length'];_0x3ae16f<_0x3b7d62;_0x3ae16f++){_0x1b7e19+='%'+('00'+_0x27df10['charCodeAt'](_0x3ae16f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b7e19);};_0x2436['jorojR']=_0x21774a,_0x2436['BFoyxT']={},_0x2436['qEKywa']=!![];}const _0x8365fd=_0x3e2acc[0x0],_0x3d194=_0x4d13df+_0x8365fd,_0x180bb4=_0x2436['BFoyxT'][_0x3d194];return!_0x180bb4?(_0x24361b=_0x2436['jorojR'](_0x24361b),_0x2436['BFoyxT'][_0x3d194]=_0x24361b):_0x24361b=_0x180bb4,_0x24361b;}__name(probeChromeBeta,_0x1652b3(0x18b));var CHROME_PATHS=((()=>{const _0x44807d={_0x33a293:0x1ab,_0x3f495e:0x187,_0x2f8102:0x1a4,_0x1346e7:0x198,_0x1dd5c8:0x1ad,_0x315541:0x197},_0x5b8bb9=_0x1652b3;switch(process['platform']){case _0x5b8bb9(0x19c):return[_0x5b8bb9(0x188)];case _0x5b8bb9(_0x44807d._0x33a293):return[process[_0x5b8bb9(0x187)]['ProgramFiles']+_0x5b8bb9(0x183),process[_0x5b8bb9(_0x44807d._0x3f495e)][_0x5b8bb9(0x1a3)]+_0x5b8bb9(0x183),process['env'][_0x5b8bb9(_0x44807d._0x2f8102)]+_0x5b8bb9(0x183)];default:return[_0x5b8bb9(_0x44807d._0x1346e7),'/usr/bin/google-chrome-stable',_0x5b8bb9(_0x44807d._0x1dd5c8),'/usr/bin/chromium',_0x5b8bb9(_0x44807d._0x315541)];}})()),CHROME_BIN_NAMES=[_0x1652b3(0x186),'google-chrome-stable',_0x1652b3(0x193),'chromium-browser'],EDGE_PATHS=((()=>{const _0x24043b={_0x46a8e0:0x18a,_0x518030:0x1ab,_0x50cbe4:0x180,_0x4d4dde:0x187,_0x537a97:0x1a3,_0x7e495a:0x19b,_0xc0172f:0x19e},_0xe5dccb=_0x1652b3;switch(process[_0xe5dccb(_0x24043b._0x46a8e0)]){case _0xe5dccb(0x19c):return[_0xe5dccb(0x1a7)];case _0xe5dccb(_0x24043b._0x518030):return[process['env'][_0xe5dccb(_0x24043b._0x50cbe4)]+_0xe5dccb(0x19b),process[_0xe5dccb(_0x24043b._0x4d4dde)][_0xe5dccb(_0x24043b._0x537a97)]+_0xe5dccb(_0x24043b._0x7e495a)];default:return[_0xe5dccb(_0x24043b._0xc0172f),_0xe5dccb(0x1a1)];}})()),EDGE_BIN_NAMES=['microsoft-edge','microsoft-edge-stable'],CHROME_BETA_PATHS=((()=>{const _0x35b070={_0x680119:0x18a,_0x4bd6dc:0x19c,_0x5c3beb:0x187,_0x2c8fb0:0x19d},_0x5ee581=_0x1652b3;switch(process[_0x5ee581(_0x35b070._0x680119)]){case _0x5ee581(_0x35b070._0x4bd6dc):return[_0x5ee581(0x1a5)];case _0x5ee581(0x1ab):return[process[_0x5ee581(_0x35b070._0x5c3beb)][_0x5ee581(0x180)]+_0x5ee581(0x18c)];default:return[_0x5ee581(_0x35b070._0x2c8fb0)];}})());function firstExistingPath(_0x3b7d62){const _0x2a76b6={_0x44c85e:0x1a0},_0x3d1564=_0x1652b3;for(const _0x3dec5c of _0x3b7d62){if(!_0x3dec5c||_0x3dec5c[_0x3d1564(0x184)](_0x3d1564(_0x2a76b6._0x44c85e)))continue;if(existsSync(_0x3dec5c))return _0x3dec5c;}return null;}__name(firstExistingPath,_0x1652b3(0x18f));function whichOf(_0x304754){const _0x746e5e=_0x1652b3;if(process[_0x746e5e(0x18a)]===_0x746e5e(0x1ab))return void 0x0;for(const _0x4597d8 of _0x304754){try{const _0x1d5a04=execFileSync(_0x746e5e(0x1a9),[_0x4597d8],{'encoding':'utf8'})['trim']();if(_0x1d5a04[_0x746e5e(0x181)]>0x0&&existsSync(_0x1d5a04))return _0x1d5a04;}catch{}}return void 0x0;}__name(whichOf,_0x1652b3(0x1ae));export{probeSystemBrowser};
|
package/dist/runner/init.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function _0x64b2(_0x29e094,_0x2f7b95){_0x29e094=_0x29e094-0x166;const _0x3f9723=_0x3f97();let _0x64b28d=_0x3f9723[_0x29e094];if(_0x64b2['xeLspr']===undefined){var _0x36f363=function(_0xf22976){const _0x311d58='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x422609='',_0x2417c2='';for(let _0x175d1c=0x0,_0x5b2105,_0x310b6b,_0x47ebf9=0x0;_0x310b6b=_0xf22976['charAt'](_0x47ebf9++);~_0x310b6b&&(_0x5b2105=_0x175d1c%0x4?_0x5b2105*0x40+_0x310b6b:_0x310b6b,_0x175d1c++%0x4)?_0x422609+=String['fromCharCode'](0xff&_0x5b2105>>(-0x2*_0x175d1c&0x6)):0x0){_0x310b6b=_0x311d58['indexOf'](_0x310b6b);}for(let _0xc849c1=0x0,_0x46ce7d=_0x422609['length'];_0xc849c1<_0x46ce7d;_0xc849c1++){_0x2417c2+='%'+('00'+_0x422609['charCodeAt'](_0xc849c1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2417c2);};_0x64b2['qauWqa']=_0x36f363,_0x64b2['qKAuyP']={},_0x64b2['xeLspr']=!![];}const _0x474d31=_0x3f9723[0x0],_0x5dc87e=_0x29e094+_0x474d31,_0x214129=_0x64b2['qKAuyP'][_0x5dc87e];return!_0x214129?(_0x64b28d=_0x64b2['qauWqa'](_0x64b28d),_0x64b2['qKAuyP'][_0x5dc87e]=_0x64b28d):_0x64b28d=_0x214129,_0x64b28d;}const _0x385b15=_0x64b2;(function(_0x5196d5,_0x214df9){const _0x5895ba={_0x21eb3b:0x1eb,_0x44ba54:0x1f0,_0x792919:0x1e8,_0x557c93:0x1cf,_0x33f238:0x1ed,_0x2e903b:0x223},_0x2bce0b=_0x64b2,_0x23ecc3=_0x5196d5();while(!![]){try{const _0x3341fc=-parseInt(_0x2bce0b(_0x5895ba._0x21eb3b))/0x1+parseInt(_0x2bce0b(0x1b0))/0x2*(parseInt(_0x2bce0b(_0x5895ba._0x44ba54))/0x3)+-parseInt(_0x2bce0b(_0x5895ba._0x792919))/0x4*(-parseInt(_0x2bce0b(_0x5895ba._0x557c93))/0x5)+-parseInt(_0x2bce0b(0x25e))/0x6+-parseInt(_0x2bce0b(0x256))/0x7+-parseInt(_0x2bce0b(_0x5895ba._0x33f238))/0x8+-parseInt(_0x2bce0b(0x17d))/0x9*(-parseInt(_0x2bce0b(_0x5895ba._0x2e903b))/0xa);if(_0x3341fc===_0x214df9)break;else _0x23ecc3['push'](_0x23ecc3['shift']());}catch(_0x8afc50){_0x23ecc3['push'](_0x23ecc3['shift']());}}}(_0x3f97,0x8ff37));var __defProp=Object[_0x385b15(0x234)],__name=(_0x47ebf9,_0xc849c1)=>__defProp(_0x47ebf9,_0x385b15(0x197),{'value':_0xc849c1,'configurable':!![]});import{copyFileSync,existsSync as _0x422609,mkdirSync,readFileSync,writeFileSync}from'fs';import{dirname as _0x2417c2,join,resolve as _0x175d1c}from'path';import{fileURLToPath as _0x5b2105}from'url';import{existsSync as _0x310b6b}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){for(const _0x46ce7d of[probeChrome,probeEdge,probeChromeBeta]){const _0x2b48a7=_0x46ce7d();if(_0x2b48a7['channel']!==null)return _0x2b48a7;}return{'channel':null};}__name(probeSystemBrowser,_0x385b15(0x244));function probeChrome(){const _0x52aa63={_0x10f27f:0x184},_0x159363=_0x385b15,_0xeba7a8=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0xeba7a8)return{'channel':_0x159363(_0x52aa63._0x10f27f),'path':_0xeba7a8,'label':'Google\x20Chrome'};return{'channel':null};}__name(probeChrome,_0x385b15(0x192));function probeEdge(){const _0x3842c0={_0x44a9de:0x249},_0x5c45bd=_0x385b15,_0x5a6d7a=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x5a6d7a)return{'channel':_0x5c45bd(0x1cc),'path':_0x5a6d7a,'label':_0x5c45bd(_0x3842c0._0x44a9de)};return{'channel':null};}__name(probeEdge,_0x385b15(0x1e9));function probeChromeBeta(){const _0x262d5e={_0x2ce422:0x233},_0x31fa73=_0x385b15,_0x170da4=firstExistingPath(CHROME_BETA_PATHS);if(_0x170da4)return{'channel':_0x31fa73(_0x262d5e._0x2ce422),'path':_0x170da4,'label':'Google\x20Chrome\x20Beta'};return{'channel':null};}__name(probeChromeBeta,_0x385b15(0x191));var CHROME_PATHS=((()=>{const _0x26918b={_0x34d84b:0x1de,_0x21308e:0x18c,_0x21dd3a:0x1ad,_0x245b9d:0x1ae,_0x25492c:0x168,_0x596479:0x1ec},_0x2a6445=_0x385b15;switch(process['platform']){case'darwin':return[_0x2a6445(_0x26918b._0x34d84b)];case'win32':return[process[_0x2a6445(0x1ad)][_0x2a6445(_0x26918b._0x21308e)]+_0x2a6445(0x1d3),process[_0x2a6445(_0x26918b._0x21dd3a)][_0x2a6445(_0x26918b._0x245b9d)]+_0x2a6445(0x1d3),process['env']['LOCALAPPDATA']+_0x2a6445(0x1d3)];default:return[_0x2a6445(0x26a),_0x2a6445(_0x26918b._0x25492c),_0x2a6445(0x263),_0x2a6445(_0x26918b._0x596479),_0x2a6445(0x1dc)];}})()),CHROME_BIN_NAMES=[_0x385b15(0x24b),_0x385b15(0x218),_0x385b15(0x259),_0x385b15(0x24f)],EDGE_PATHS=((()=>{const _0x136abc={_0x1bb036:0x21e,_0x51663e:0x22d,_0x1c094a:0x1a2,_0x300884:0x217,_0x6fadd4:0x253},_0x4de57d=_0x385b15;switch(process['platform']){case _0x4de57d(_0x136abc._0x1bb036):return[_0x4de57d(0x19b)];case _0x4de57d(_0x136abc._0x51663e):return[process[_0x4de57d(0x1ad)][_0x4de57d(0x18c)]+_0x4de57d(_0x136abc._0x1c094a),process[_0x4de57d(0x1ad)][_0x4de57d(0x1ae)]+_0x4de57d(_0x136abc._0x1c094a)];default:return[_0x4de57d(_0x136abc._0x300884),_0x4de57d(_0x136abc._0x6fadd4)];}})()),EDGE_BIN_NAMES=[_0x385b15(0x1ff),'microsoft-edge-stable'],CHROME_BETA_PATHS=((()=>{const _0x421d2a={_0x95ae10:0x18c},_0x27dbe2=_0x385b15;switch(process['platform']){case _0x27dbe2(0x21e):return[_0x27dbe2(0x1fb)];case'win32':return[process[_0x27dbe2(0x1ad)][_0x27dbe2(_0x421d2a._0x95ae10)]+_0x27dbe2(0x1d6)];default:return[_0x27dbe2(0x1ac)];}})());function firstExistingPath(_0x2bb289){const _0x5d7444={_0x47077d:0x21a,_0x3d6f5d:0x1d4},_0x4f8be7=_0x385b15;for(const _0x1c8250 of _0x2bb289){if(!_0x1c8250||_0x1c8250[_0x4f8be7(_0x5d7444._0x47077d)](_0x4f8be7(_0x5d7444._0x3d6f5d)))continue;if(existsSync(_0x1c8250))return _0x1c8250;}return null;}__name(firstExistingPath,_0x385b15(0x1fe));function whichOf(_0xadc315){const _0x25d46f={_0x2c39db:0x209,_0x4d102e:0x166},_0x2bbfe9=_0x385b15;if(process['platform']===_0x2bbfe9(0x22d))return void 0x0;for(const _0x1f9742 of _0xadc315){try{const _0x18771a=execFileSync(_0x2bbfe9(_0x25d46f._0x2c39db),[_0x1f9742],{'encoding':_0x2bbfe9(0x260)})[_0x2bbfe9(_0x25d46f._0x4d102e)]();if(_0x18771a[_0x2bbfe9(0x18f)]>0x0&&existsSync(_0x18771a))return _0x18771a;}catch{}}return void 0x0;}__name(whichOf,_0x385b15(0x1a9));function runEnvironmentChecks(_0x10c258={}){const _0x49770a={_0x4c2fa8:0x1ab},_0x3d706b=_0x385b15,_0xe6b7f3=_0x10c258[_0x3d706b(0x1ab)]??process[_0x3d706b(_0x49770a._0x4c2fa8)]();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0xe6b7f3)];}__name(runEnvironmentChecks,_0x385b15(0x1df));function checkNodeVersion(){const _0x1715a1={_0x2396bf:0x19a,_0x16b9aa:0x225},_0x2eaa7d=_0x385b15,_0x261b68=process[_0x2eaa7d(_0x1715a1._0x2396bf)][_0x2eaa7d(0x17f)],_0x548832=Number(_0x261b68[_0x2eaa7d(_0x1715a1._0x16b9aa)]('.')[0x0]);if(!Number[_0x2eaa7d(0x1f5)](_0x548832)||_0x548832<0x14)return{'name':_0x2eaa7d(0x1c7),'severity':_0x2eaa7d(0x18a),'message':_0x2eaa7d(0x251)+_0x261b68+')','detail':'Install\x20Node\x2020+\x20via\x20nvm\x20/\x20fnm\x20/\x20volta\x20and\x20re-run.'};return{'name':_0x2eaa7d(0x1c7),'severity':'ok','message':_0x261b68};}__name(checkNodeVersion,_0x385b15(0x22a));function checkSystemBrowser(){const _0x2e13d1={_0xb62300:0x16a},_0x3852e4=_0x385b15,_0x52f093=probeSystemBrowser();if(_0x52f093[_0x3852e4(0x1bb)]!==null)return{'name':_0x3852e4(0x25c),'severity':'ok','message':_0x52f093[_0x3852e4(0x21b)]+_0x3852e4(0x232),'detail':_0x52f093['path']};return{'name':'System\x20browser','severity':_0x3852e4(_0x2e13d1._0xb62300),'message':_0x3852e4(0x24d),'detail':_0x3852e4(0x222)};}__name(checkSystemBrowser,_0x385b15(0x1bc));function checkWritableCwd(_0x485841){const _0x3eb0d2={_0x513d6b:0x213,_0x193e6a:0x190},_0x2fdc15=_0x385b15;if(!_0x310b6b(_0x485841))return{'name':_0x2fdc15(_0x3eb0d2._0x513d6b),'severity':_0x2fdc15(0x18a),'message':_0x2fdc15(0x1f8)+_0x485841+_0x2fdc15(_0x3eb0d2._0x193e6a),'detail':'Create\x20the\x20directory\x20or\x20run\x20init\x20in\x20an\x20existing\x20project\x20root.'};return{'name':'Target\x20directory','severity':'ok','message':_0x485841};}__name(checkWritableCwd,_0x385b15(0x1b1));var templates={'scenarioTemplate':_0x385b15(0x16f),'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':_0x385b15(0x1c3),'examples':{'01-smoke.js':_0x385b15(0x1c2),'02-form-fill.js':_0x385b15(0x212)},'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 _0x3f97(){const _0xdbd655=['CgfYC2vbCMDZ','tM9Kzs5QCYb2zxjZAw9U','BwvYz2vdBgf1zgvnza','yxjNDG','EwvZ','CMvZB2X2zq','BxnLzgDL','C3LZDgvT','u3vIywDLBNrtDgfYDa','mZvOCM5Wque','B3zLCNDYB3rLihvUB3rLC3qTD2vIigvUDhj5','ChjVBxb0wwvZtM8','icbvC2uGAw5ZDgfSBgvKia','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','Dw5KzwzPBMvK','C2XPy2u','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','CgXHExDYAwDODc9WywnRywDLlMPZB24','Aw5KzxHpzG','B25fBMq','Aw5ZDgfSBenOCM9TAxvT','CNvUsw5ZDgfSBenOCM9TAxvTq2XP','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','zM9Yy2u','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','CNvUrw52AxjVBM1LBNrdAgvJA3m','uhjLq29TCgfJDa','lMnSyxvKzs9ZA2LSBhmVD3jPDguTztjLlxrLC3qTz3jVDw5Kl1nlsuXmlM1K','C3rYAw5N','ywrKzwqGywDLBNqTDhjHy2uGAg9VA3mGka','C2TPBgWGkgDYB3vUzcK','icaGigLUC3rHBgWGq2HYB21LigzYB20GAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','ihnVDxjJzsbTAxnZAw5NiokaLcbWywnRywDLigLUC3rHBgWGyNvNpW','Dw5VDgvZDc8UC2vJCMv0CW','mJmZoda0Dg5Ksun0','ChjVyMvfzgDL','B3zLCNDYB3rL','mtG2ntLRuKjkzNu','l3vZCI9IAw4Vy2HYB21PDw0','nZuXnJm1mLvlBLPnAW','C3rKzxjY','B25eyxrH','mtj3ALvoveq','zgv0ywLS','icbsDw4Gyg5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BwaGDg8Gzg93BMXVywqGDgHLigj1BMrSzwqGzMfSBgjHy2SS','zxHPDa','lMDPDgLNBM9Yzq','AxngAw5PDgu','Dw5VDgvZDc5JB25MAwCUBwPZ','Dw5VDgvZDc13zwiGAw5PDcdIHPiG','DgfYz2v0ia','C3rKB3v0v3jPDgu','zMLUAxnO','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','y3jLyxrLza','ywrKzwq','zMLYC3rfEgLZDgLUz1bHDgG','BwLJCM9ZB2z0lwvKz2u','D2fYBMLUz3m','icdINjmGywrKzwqGiG','C2nLBMfYAw9uzw1WBgf0zq','ywXYzwfKEsbWCMvZzw50','ls1MB3jJzq','BM9Uzq','ifTzl25Dia','y2HHBM5LBdOGjW','C3rYAw5NAwz5','D2HPy2G','lI4VlI4V','DMvYC2LVBG','B3zLCNjPzgu','Dw5VDgvZDc13zwi','lNvUB3rLC3qV','zgf0yq','BwvYz2vny3bdB25MAwC','BMv3q29UDgvUDa','lY8GrxHHBxbSzsaWmIdIGjqGzMLSBcbHBIbPBNb1DcaRigfZC2vYDcb0AguGyxbWihjLywn0zwqUcI8VcI8ViefNywLUC3qGCgXHEwDYB3vUzc51BM90zxn0lMnVBs9Zy2vUyxjPB3mVyMLNlxrHyMXLlIbezw1VBNn0CMf0zxmGz2v0qNLsB2XLcI8VigzVCIbHigXHyMvSBgvKigLUChv0lcb0ExbLzcbPBNb1Dcb2AweGzMLSBcGPlcbHBMqGysbSB2nHDg9Yig1LDgHVzc1JAgfPBGOVlYaOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhr9ks5MAxjZDcGPksbPBIbHBIbHC3nLCNrPB24UcI8Vifj1BIb3AxrOoIaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdiTzM9YBs1MAwXScGPMDw5JDgLVBIb0zxn0x2zVCM1FzMLSBf9OyxbWEv9WyxrOkcKGEWOGihn0zxaOiKzPBhrLCIb0AguGqMLNifrHyMXLigj5igeGBMfTzsiSicGPid0+ihSkicaGigDVDg8OjY9Zy2vUyxjPB3mVyMLNlxrHyMXLjYK7cIaGicbMAwXSkgDLDej5uM9SzsGNDgv4DgjVEcCSihTUyw1LoIaNrMLSDgvYigj5ig5HBwuNFsKSicDvBweGuxvPBM4NktSkicb9ktSkcIaGC3rLCcGIrMLSDgvYAw5NihjLDMvHBhmGDgHLienSzwfYigzPBhrLCIbJB250CM9SigfUzcbTyxrJAgLUzYbYB3DZiIWGkcKGpt4GEWOGicaGyxnZzxj0vMLZAwjSzsHNzxrcEvjVBguOj2j1DhrVBICSihTUyw1LoIaNq2XLyxiGzMLSDgvYj30PktSkicaGigfZC2vYDfzPC2LIBguOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhq6icDvBweGuxvPBM4NFsKUzMLYC3qOksK7cIaGFsK7cN0k','vgfYz2v0igrPCMvJDg9YEq','icdINjmG','y3jLyxrLzcaUBwnWlMPZB24','ChvZAa','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','zw50CMLLCW','C3rHCNrZv2L0Aa','BgfIzwW','q2XHDwrLu2v0DgLUz3nqyxjZzuvYCM9Y','igf0ia','zgfYD2LU','BwnWu2vYDMvYCW','cI5NAxrPz25VCMu6cG','ywXYzwfKEvbYzxnLBNq','Aw5PDcb3AwXSig9MzMvYihrVigrVD25SB2fKigj1BMrSzwqGq2HYB21PDw0Gkh4XntaGtuiPlIbbBhrLCM5HDgL2zwX5lcbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4U','mZbWsKjuDfi','cKnSyxvKzsbdB2rLihbLCM1PC3nPB25ZoGO','C3bSAxq','uhjLvg9VBfvZzq','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWO','BwvYz2vdBgf1zgvbBgXVD0vUDhjPzxm','DgHLBG','y2HLy2ToB2rLvMvYC2LVBG','zw52rxHHBxbSzq','u2vZC2LVBLn0yxj0','D2LUmZi','y3jLyxrLzcaUy2XHDwrLl3nLDhrPBMDZlMPZB24GkgfSBg93oIbTy3bFx3vUB3rLC3qTD2vIkq','yMLU','Dw5VDgvZDc9LmMuVx2HLBhbLCNmVlMDPDgTLzxa','Dg9mB3DLCKnHC2u','igzVDw5K','y2HYB21LlwjLDge','zgvMAw5LuhjVCgvYDhK','u2vZC2LVBKvUza','qhvUB3rLC3qVD2vIqa','ls1ICM93C2vYigv4CgvJDhmGC3LZDgvTFgj1BMrSzwr8BM9UzsWGz290ia','igHHCYbUBYb1C2fIBguGiNzLCNnPB24IigzPzwXK','zw5ZDxjLrgLY','CgXHExDYAwDODa','icbjBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4GAw5PDc4','4PQGie5VigjYB3DZzxiGy29UzMLNDxjLzc4GuNvUig9UzsbVzIbIzwzVCMuGzMLYC3qGDgvZDdO','icaGigLUC3rHBgWGq2HYB21LoIaGAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','DxbKyxrLza','y2f0y2G','CNvUsw5PDa','Cgf0Aa','ywXSB3C','Dw5VDgvZDc8UC25HChnOB3rZlW','ChjVyMvtExn0zw1cCM93C2vY','BwvYz2vdBgf1zgviB29RCW','ug9ZDfrVB2XvC2vgywLSDxjL','4PYxigLUC3rHBgWTy2HYB21PDw06ia','icdINjmGDw5VDgvZDc5JB25MAwCUBwPZia','twLJCM9ZB2z0ievKz2u','ywn0Aw9U','z29Vz2XLlwnOCM9Tzq','sw5ZDhj1y3rPB25Ztg9HzgvK','BM8Gq2HYB21Lic8GrwrNzsaVienOCM9TAxvTigrLDgvJDgvK','D3jPDgvjzKfIC2vUDa','y2HYB21PDw0TyNjVD3nLCG','BwnW','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','y29WEvbHy2THz2vgAwXL','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','C3LTyM9S','q0XbvurflM1K','ntaWodeWmujyBNbVwq','zxHPDenVzgu','y2XHDwrLtwrcB2r5','y2HYB21PDw0','u3rVCa','BNb4','u3LZDgvTigjYB3DZzxi','cIaGtM8GC3LZDgvTienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbKzxrLy3rLzc4k','ntK5mda0nM9iEvP1sW','Dw5VDgvZDenVBMzPz01QCW','DxrMoa','CgLWzq','yMfZAcaIjhTdtefvrevFufjpsKvdvf9esvj9lY5JBgf1zguVAg9VA3mVBg9NlwfNzw50lNnOiIaIjhTdtefvrevFufjpsKvdvf9esvj9l3vUB3rLC3qVlMrLyNvNl2fNzw50l2fJDgLVBNmUANnVBMWI','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','lMnSyxvKzs9ZA2LSBhmVD3jPDguTztjLlxrLC3qVu0TjteWUBwq','twnWsNnVBLbHCNnLrxjYB3i','ug9ZDfrVB2XvC2u','y2HVB3nLqNjVD3nLCG','Dw5VDgvZDc9LmMuVx3rLBxbSyxrLlMPZ','C3rHDhvZ','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','Dw5VDgvZDc8UCNvUCYOV','4PYxic0TyNjVD3nLCIbZExn0zw0GyNv0ig5VienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbMB3vUzcbVBIb0AgLZig1Hy2HPBMuU','DhjPBq','BwvZC2fNzq','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1ZDgfIBgu','y2HHBM5LBdOGBNvSBcaOyNvUzgXLzcbJAhjVBwL1BsK','D2fYBMLUzW','CMvTB3zLtgLZDgvUzxi','Dw5VDgvZDc8Uzw52kG','BM9Kzv9TB2r1BgvZlW','pceTlsb1BM90zxn0oMvUzcaTlt4','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','ifT5l05Dia','Ag9VAW','C3rKB3v0','BM8Gy2HHBM5LBcbZzxqGkgj1BMrSzwqGzMfSBgjHy2SGywz0zxiGAw5ZDgfSBc1JAhjVBwL1BsK','lIbgAxGGB3iGCMvTB3zLihrOzsbMAwXLigfUzcbYzs1YDw4GAw5PDc4','cKzPBgvZoGO','vxnLCLbYB21WDfn1yM1PDa','ywDLBNqTDhjHy2uGAg9VA3mGywXYzwfKEsbWCMvZzw50','4PQGig5VBI1PBNrLCMfJDgL2zsbZAgvSBcbHBMqGBM8GC3LZDgvTigjYB3DZzxiGzM91BMqU','cIaGrM91BMqG','Dw5VDgvZDc8UzgvIDwCQlW','Dw5VDgvZDc9LmMuVzxHHBxbSzxmV','nZqWmZq2m0HrA3fdwG','Bg9NlwfNzw50lNnO','BM9Kzq','igzVDw5Kigf0ia','ixvUB3rLC3qVlMvUDI5LEgfTCgXL','quDftLrtlM1K','pceTlsb1BM90zxn0oMjLz2LUicHTyw5Hz2vKigj5ieb1BM90zxn0l3DLyIbPBML0iokaLcbKBYbUB3qGzwrPDcbPBNnPzguPic0TpG','y2HYB21L','CgvYBwLZC2LVBNm','4PYtihvWzgf0zwq','CMvHze93BLzLCNnPB24','icaGig5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BsaGicaGicHKB3DUBg9HzhmGyNvUzgXLzcbJAhjVBwL1BsK','igv2zw50CZSGBg9NCYb0BYb1BM90zxn0lY5Kzwj1zY9Hz2vUDc8GDw5KzxiGvu5pvevtvf9erujvrYK','zxjYB3i','Ag9VA3m','uhjVz3jHBuzPBgvZ','y29TBwfUza','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','BgvUz3rO','igrVzxmGBM90igv4Axn0','ChjVyMvdAhjVBwvczxrH','ChjVyMvdAhjVBwu','ywXYzwfKEs1WCMvZzw50','icbVCIbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LlG','C2TPChbLza','AxnbCNjHEq','BMfTzq','yxbWzw5Kzwq','Cgf1C2u','DMvYC2LVBNm','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','zw5KC1DPDgG','iokaLcb1C2LUzYbJAgfUBMvSicC','icdINjmGC3LZDgvTia','Dw5VDgvZDc8Uzw52','C2v2zxjPDhK','icdcTYbHBhjLywr5ihbYzxnLBNqGiG','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','yNjVD3nLCK92zxjYAwrL','rw52AxjVBM1LBNq6cG','cIaGlY8GDMLLD2vYoIb7cIaGlY8GicbWB3j0oIa1mtCZlcaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGic8VigrLzMf1Bhq6ihjHBMrVBsbMCMvLihbVCNqkicaVlYaGigjYB3DZzxi6ihrYDwuSicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGDhj1zsaOyxv0BY1VCgvUig9Uigb2Awv3zxjGkqOGic8Vih0ScN07cG','CgfYC2u','zw5K','lI4VlI4VCgfJA2fNzs5QC29U','D2HPy2HpzG','C29Tzq','y3DK','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','zw52','uhjVz3jHBuzPBgvZkhG4nIK','Dg9tDhjPBMC','mtKYmZe2q0vUBLrm','y2HLy2TxCML0ywjSzun3za','Aw5JBhvKzxm','ChjVyMu','icdINjCG','cIaG4OAsigrVD25SB2fKAw5Nigj1BMrSzwqGq2HYB21PDw3IGkyk','WRCGC2TPChbLza','CgfJA2fNzs5QC29Uigf0ia','rMfPBgvKihrVihbHCNnLic5JBgf1zguVC2v0DgLUz3mUANnVBIbHCYbku09ooIa','C2TPBgW','C3rKAw4','y2HHBM5LBa','y2HLy2TtExn0zw1cCM93C2vY','D3jPDgu','Dw5VDgvZDc8Uzw52lMv4yw1WBgu','yNvUzgXLza','B2jQzwn0','zM9Yy2uTB3zLCNDYB3rL','lY8GrxHHBxbSzsaWmsdIGjqGC21VA2u6ig5HDMLNyxrLicSGy2XPy2SGkYbvuKWGyxnZzxj0Aw9UlGOVlWOVlYbuAguGBwLUAw1HBcb0AhjLzs1ZDgvWihbHDhrLCM4UieHPDhmGCgXHEwDYB3vUzc51BM90zxn0lMnVBsbZBYbUBYbWCM9Qzwn0cI8VihnLDhvWigLZig5LzwrLzc4GuNvUihDPDgG6icbUChGGqhvUB3rLC3qVD2vIiguYzsbLEgfTCgXLCY8Wms1ZBw9RzqOkzNvUy3rPB24GDgvZDf9ZBw9Rzv9WBgf5z3jVDw5KkcKGEWOGihn0zxaOiK9Wzw4GDgHLiejPzYbuywjSzsbZy2vUyxjPBYbMCM9TihrOzsbWBgf5z3jVDw5KigLUzgv4iIWGkcKGpt4GEWOGicaGz290BYGNlYCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDSAw5RjYWGE25HBwu6icDcAwCGvgfIBguNlcbLEgfJDdOGDhj1zx0PktSkicaGigfZC2vYDfvYBcGNl3nJzw5HCMLVCY9IAwCTDgfIBguNktSkicb9ktSkFqO','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','u3vIywDLBNrtDg9W','Aw5PDdOG'];_0x3f97=function(){return _0xdbd655;};return _0x3f97();}function unotestConfigMjs(_0x5488b1){const _0x278236={_0x26305b:0x208,_0x3a6fa1:0x227},_0x1a11a0=_0x385b15,_0x18d7b4=_0x5488b1===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[_0x1a11a0(_0x278236._0x26305b)](_0x5488b1)+',';return _0x1a11a0(_0x278236._0x3a6fa1)+_0x18d7b4+_0x1a11a0(0x1a5);}__name(unotestConfigMjs,_0x385b15(0x25f));function promptYesNo(_0x1d9cf3,_0x518142){const _0x3f3348={_0x536a2e:0x1fa,_0x670080:0x1bd,_0x1b5645:0x1a7},_0x32d366=_0x385b15,_0x5af8c1=_0x518142?_0x32d366(0x206):_0x32d366(0x171);return new Promise(_0x21424c=>{const _0xce5e7a={_0x50a492:0x1e2,_0x22c86b:0x1d8,_0x3c57d2:0x1d5,_0x59694c:0x231},_0x50d4c9={_0x53bfff:0x1ba,_0x530628:0x16b,_0x51ed9e:0x1a7,_0x35fb5f:0x199},_0x47da5d=_0x32d366;let _0xdfef81=![];const _0x1f0ae9=__name(_0x31dcfc=>{const _0x37ec67=_0x64b2;if(_0xdfef81)return;_0xdfef81=!![],process[_0x37ec67(_0x50d4c9._0x53bfff)]['removeListener']('data',_0x9ff5d3),process[_0x37ec67(0x1ba)][_0x37ec67(_0x50d4c9._0x530628)](_0x37ec67(_0x50d4c9._0x51ed9e),_0x1c74d3),process[_0x37ec67(0x1ba)][_0x37ec67(_0x50d4c9._0x35fb5f)](),process['stdin']['unref'](),_0x21424c(_0x31dcfc);},_0x47da5d(_0x3f3348._0x536a2e)),_0x9ff5d3=__name(_0x4f8d92=>{const _0x1baaac=_0x47da5d,_0x51b65f=typeof _0x4f8d92===_0x1baaac(_0xce5e7a._0x50a492)?_0x4f8d92:_0x4f8d92['toString']('utf8'),_0x4b47e8=_0x51b65f[_0x1baaac(_0xce5e7a._0x22c86b)]('\x0a');if(_0x4b47e8<0x0)return;const _0x33053c=_0x51b65f[_0x1baaac(_0xce5e7a._0x3c57d2)](0x0,_0x4b47e8)[_0x1baaac(0x166)]()[_0x1baaac(_0xce5e7a._0x59694c)]();if(_0x33053c==='')return _0x1f0ae9(_0x518142);_0x1f0ae9(_0x33053c==='y'||_0x33053c===_0x1baaac(0x1ca));},_0x47da5d(0x1ef)),_0x1c74d3=__name(()=>_0x1f0ae9(_0x518142),_0x47da5d(0x1d9));process['stdout'][_0x47da5d(_0x3f3348._0x670080)](_0x1d9cf3+_0x5af8c1),process['stdin']['on'](_0x47da5d(0x20f),_0x9ff5d3),process[_0x47da5d(0x1ba)]['on'](_0x47da5d(_0x3f3348._0x1b5645),_0x1c74d3),process[_0x47da5d(0x1ba)]['resume']();});}__name(promptYesNo,_0x385b15(0x1d1));import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x151497={}){const _0xa85d3d={_0x5c794c:0x1cb,_0x29a918:0x1e2,_0x3bb94d:0x22f,_0x3e2be1:0x23a},_0x17b0e8={_0x359c8a:0x261,_0x4e83eb:0x20f,_0x553181:0x20f,_0x2e99dc:0x1f3},_0x56d9cc=_0x385b15,_0x56779f=_0x151497[_0x56d9cc(0x1f9)]??(_0x2b4a3d=>process['stdout'][_0x56d9cc(0x1bd)](_0x2b4a3d)),_0x52bd72=createRequire(import.meta.url),_0x25949f=_0x52bd72[_0x56d9cc(_0xa85d3d._0x5c794c)](_0x56d9cc(0x1d7)),_0x1ddf28=_0x52bd72(_0x25949f),_0x1394f5=typeof _0x1ddf28[_0x56d9cc(0x22f)]===_0x56d9cc(_0xa85d3d._0x29a918)?_0x1ddf28[_0x56d9cc(0x22f)]:_0x1ddf28[_0x56d9cc(_0xa85d3d._0x3bb94d)]?.[_0x56d9cc(_0xa85d3d._0x3e2be1)];if(!_0x1394f5)throw new Error('playwright/package.json\x20has\x20no\x20usable\x20\x22bin\x22\x20field');const _0x3d3eef=resolve(dirname(_0x25949f),_0x1394f5);return new Promise((_0x25d959,_0x42db1c)=>{const _0x571aa0=_0x56d9cc,_0xf5c60a=spawn(process['execPath'],[_0x3d3eef,'install','chromium'],{'stdio':['inherit',_0x571aa0(_0x17b0e8._0x359c8a),_0x571aa0(0x261)]});_0xf5c60a['stdout']?.['on'](_0x571aa0(_0x17b0e8._0x4e83eb),_0x26d955=>_0x56779f(_0x26d955[_0x571aa0(0x1af)]())),_0xf5c60a['stderr']?.['on'](_0x571aa0(_0x17b0e8._0x553181),_0x48ed3f=>_0x56779f(_0x48ed3f[_0x571aa0(0x1af)]())),_0xf5c60a['on']('error',_0x42db1c),_0xf5c60a['on'](_0x571aa0(_0x17b0e8._0x2e99dc),_0x55d15c=>{if(_0x55d15c===0x0)_0x25d959();else _0x42db1c(new Error('chromium\x20download\x20exited\x20with\x20code\x20'+_0x55d15c));});});}__name(installChromium,_0x385b15(0x1da));async function runInstallChromiumCli(){const _0x16f2c2={_0x1a0805:0x1bd},_0x2b2cea=_0x385b15;try{return await installChromium(),0x0;}catch(_0xd8f4f0){return process['stderr'][_0x2b2cea(_0x16f2c2._0x1a0805)](_0x2b2cea(0x247)+(_0xd8f4f0 instanceof Error?_0xd8f4f0[_0x2b2cea(0x167)]:String(_0xd8f4f0))+'\x0a'),0x1;}}__name(runInstallChromiumCli,_0x385b15(0x1db));var invokedDirectly=process['argv'][0x1]&&fileURLToPath(import.meta.url)===process[_0x385b15(0x1c9)][0x1];invokedDirectly&&runInstallChromiumCli()[_0x385b15(0x229)](_0x2796f5=>process[_0x385b15(0x1f3)](_0x2796f5));async function chooseBrowser(_0x2e56ec){const _0xbde290={_0xcaaf59:0x20c,_0x478813:0x1bb,_0x36baae:0x1b3,_0x4f4d9e:0x26c,_0x4024a8:0x23b,_0x58179e:0x205,_0x213f3b:0x23d,_0x248354:0x180,_0xc88df7:0x1b3,_0x55faf4:0x179,_0x1af59e:0x194,_0x579e23:0x1b3,_0x54c4d7:0x21b,_0x4b05c1:0x21d,_0x41dbc4:0x1d2,_0x1f9968:0x1b5},_0x56b01c=_0x385b15,_0x327eba=_0x2e56ec[_0x56b01c(0x1f9)]??(_0x1b249f=>process[_0x56b01c(0x173)][_0x56b01c(0x1bd)](_0x1b249f));if(_0x2e56ec[_0x56b01c(_0xbde290._0xcaaf59)]===_0x56b01c(0x1cd)){if(_0x2e56ec['probe'][_0x56b01c(_0xbde290._0x478813)])return _0x327eba(_0x56b01c(0x19e)+_0x2e56ec['probe'][_0x56b01c(0x21b)]+'\x20('+_0x2e56ec[_0x56b01c(_0xbde290._0x36baae)]['path']+')\x0a'),{'channel':_0x2e56ec['probe'][_0x56b01c(0x1bb)],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x56b01c(_0xbde290._0x4f4d9e),_0x56b01c(_0xbde290._0x4024a8)]};}if(_0x2e56ec['override']===_0x56b01c(0x1bf))return _0x327eba('\x20\x20→\x20downloading\x20bundled\x20Chromium\x20(~150\x20MB)…\x0a'),await installChromium({'stdoutWrite':_0x327eba}),{'channel':null,'installedBundled':!![],'warnings':[]};if(_0x2e56ec[_0x56b01c(0x20c)]===_0x56b01c(_0xbde290._0x58179e))return{'channel':void 0x0,'installedBundled':![],'warnings':['⚠\x20--browser\x20none\x20—\x20no\x20browser\x20configured.\x20Run\x20one\x20of:',_0x56b01c(0x188),_0x56b01c(_0xbde290._0x213f3b)]};if(!_0x2e56ec['interactive']){if(_0x2e56ec['probe'][_0x56b01c(0x1bb)])return _0x327eba(_0x56b01c(0x214)+_0x2e56ec['probe']['label']+_0x56b01c(_0xbde290._0x248354)+_0x2e56ec[_0x56b01c(0x1b3)]['path']+_0x56b01c(0x19d)+_0x2e56ec['probe'][_0x56b01c(0x1bb)]+'\x27\x0a'),{'channel':_0x2e56ec[_0x56b01c(_0xbde290._0xc88df7)]['channel'],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x56b01c(_0xbde290._0x55faf4),_0x56b01c(0x1f2),_0x56b01c(_0xbde290._0x1af59e)]};}if(_0x2e56ec['probe'][_0x56b01c(0x1bb)]){_0x327eba(_0x56b01c(0x17a)+_0x2e56ec[_0x56b01c(_0xbde290._0x579e23)][_0x56b01c(_0xbde290._0x54c4d7)]+_0x56b01c(_0xbde290._0x4b05c1)+_0x2e56ec[_0x56b01c(0x1b3)][_0x56b01c(0x241)]+'\x0a');const _0x24c771=await promptYesNo(_0x56b01c(_0xbde290._0x41dbc4)+_0x2e56ec[_0x56b01c(0x1b3)][_0x56b01c(_0xbde290._0x54c4d7)]+'?',!![]);if(_0x24c771)return{'channel':_0x2e56ec[_0x56b01c(0x1b3)][_0x56b01c(_0xbde290._0x478813)],'installedBundled':![],'warnings':[]};}else _0x327eba(_0x56b01c(0x25d));const _0x14faf5=await promptYesNo('\x20\x20Download\x20bundled\x20Chromium\x20(~150\x20MB)?',!![]);if(_0x14faf5)return _0x327eba(_0x56b01c(_0xbde290._0x1f9968)),await installChromium({'stdoutWrite':_0x327eba}),{'channel':null,'installedBundled':!![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x56b01c(0x23c),_0x56b01c(0x188),_0x56b01c(0x1e5)]};}__name(chooseBrowser,_0x385b15(0x267));var McpJsonParseError=class extends Error{static{__name(this,_0x385b15(0x265));}constructor(_0x3b4905){const _0x9a6095={_0x3bb317:0x265},_0x5ee615=_0x385b15;super(_0x3b4905),this[_0x5ee615(0x197)]=_0x5ee615(_0x9a6095._0x3bb317);}};function mergeMcpConfig(_0x1b6bc0,_0x24a340,_0x36de04,_0x582cc3={}){const _0x1b2991={_0x426f86:0x1a6,_0x59b15a:0x175,_0x2c1893:0x21f,_0x29917d:0x21f,_0x53c00f:0x208},_0x51d258=_0x385b15;if(_0x1b6bc0===null){const _0x50683b=JSON[_0x51d258(0x208)]({'mcpServers':{[_0x24a340]:_0x36de04}},null,0x2)+'\x0a';return{'action':'created','newContent':_0x50683b};}let _0x3dc141;try{_0x3dc141=JSON[_0x51d258(_0x1b2991._0x426f86)](_0x1b6bc0);}catch(_0x4f5285){throw new McpJsonParseError('Failed\x20to\x20parse\x20.mcp.json\x20as\x20JSON:\x20'+_0x4f5285[_0x51d258(0x167)]+_0x51d258(_0x1b2991._0x59b15a));}(!_0x3dc141[_0x51d258(0x21f)]||typeof _0x3dc141[_0x51d258(_0x1b2991._0x2c1893)]!==_0x51d258(0x1c0))&&(_0x3dc141[_0x51d258(0x21f)]={});const _0x410abd=_0x24a340 in _0x3dc141[_0x51d258(_0x1b2991._0x29917d)];if(_0x410abd&&!_0x582cc3[_0x51d258(0x1dd)])return{'action':_0x51d258(0x193),'newContent':_0x1b6bc0};_0x3dc141['mcpServers'][_0x24a340]=_0x36de04;const _0x24c399=JSON[_0x51d258(_0x1b2991._0x53c00f)](_0x3dc141,null,0x2)+'\x0a';return{'action':_0x410abd?_0x51d258(0x1c1):_0x51d258(0x1fd),'newContent':_0x24c399};}__name(mergeMcpConfig,_0x385b15(0x210));var ClaudeSettingsParseError=class extends Error{static{__name(this,_0x385b15(0x21c));}constructor(_0x11c3c0){const _0x317076={_0x106f71:0x197},_0x26aeaf=_0x385b15;super(_0x11c3c0),this[_0x26aeaf(_0x317076._0x106f71)]=_0x26aeaf(0x21c);}};function mergeClaudeAllowEntries(_0x436d2c,_0x2c33f3){const _0x4e990c={_0x5de375:0x208,_0x2ffae0:0x1b8,_0x25d9a5:0x175,_0x13b1c8:0x1c0,_0x10c7bf:0x185,_0xde667a:0x1b2,_0x4668aa:0x216,_0x138430:0x185,_0x1201b1:0x18f},_0x47f294=_0x385b15;if(_0x436d2c===null){const _0x49ef1b=JSON[_0x47f294(_0x4e990c._0x5de375)]({'permissions':{'allow':[..._0x2c33f3]}},null,0x2)+'\x0a';return{'action':_0x47f294(0x1fc),'newContent':_0x49ef1b,'added':[..._0x2c33f3]};}let _0x2362d6;try{_0x2362d6=JSON['parse'](_0x436d2c);}catch(_0x224e19){throw new ClaudeSettingsParseError(_0x47f294(_0x4e990c._0x2ffae0)+_0x224e19['message']+_0x47f294(_0x4e990c._0x25d9a5));}(!_0x2362d6['permissions']||typeof _0x2362d6[_0x47f294(0x185)]!==_0x47f294(_0x4e990c._0x13b1c8))&&(_0x2362d6[_0x47f294(_0x4e990c._0x10c7bf)]={});const _0x35b978=Array[_0x47f294(0x196)](_0x2362d6[_0x47f294(_0x4e990c._0x10c7bf)]['allow'])?_0x2362d6[_0x47f294(_0x4e990c._0x10c7bf)]['allow']:[],_0x26693a=[];for(const _0x1caeb0 of _0x2c33f3){!_0x35b978[_0x47f294(_0x4e990c._0xde667a)](_0x1caeb0)&&(_0x35b978[_0x47f294(0x216)](_0x1caeb0),_0x26693a[_0x47f294(_0x4e990c._0x4668aa)](_0x1caeb0));}_0x2362d6[_0x47f294(_0x4e990c._0x138430)][_0x47f294(0x242)]=_0x35b978;if(_0x26693a[_0x47f294(_0x4e990c._0x1201b1)]===0x0)return{'action':'already-present','newContent':_0x436d2c,'added':[]};const _0x3d6049=JSON[_0x47f294(_0x4e990c._0x5de375)](_0x2362d6,null,0x2)+'\x0a';return{'action':'added','newContent':_0x3d6049,'added':_0x26693a};}__name(mergeClaudeAllowEntries,_0x385b15(0x228));function mergeClaudeHooks(_0x2b382b,_0x37d1ca,_0x1186b9,_0x267baf){const _0x535328={_0x240aa6:0x1a6,_0x46ba44:0x1b8,_0x3ba81d:0x167,_0xddad32:0x18b,_0x36e8ac:0x18b,_0x28c822:0x196,_0x1b6c8e:0x1aa,_0x2ab109:0x216,_0x4f4a15:0x216,_0x2c64f0:0x1fd,_0x9d7a91:0x208},_0x5bb084=_0x385b15;let _0xd6ae58;if(_0x2b382b===null)_0xd6ae58={};else try{_0xd6ae58=JSON[_0x5bb084(_0x535328._0x240aa6)](_0x2b382b);}catch(_0x2446a1){throw new ClaudeSettingsParseError(_0x5bb084(_0x535328._0x46ba44)+_0x2446a1[_0x5bb084(_0x535328._0x3ba81d)]+'.\x20Fix\x20or\x20remove\x20the\x20file\x20and\x20re-run\x20init.');}const _0x427546=_0xd6ae58[_0x5bb084(_0x535328._0xddad32)]&&typeof _0xd6ae58[_0x5bb084(0x18b)]===_0x5bb084(0x1c0)?_0xd6ae58[_0x5bb084(_0x535328._0x36e8ac)]:{},_0x11b573=[];for(const _0x3a83fe of _0x37d1ca){const _0x1258d0=Array[_0x5bb084(_0x535328._0x28c822)](_0x427546[_0x3a83fe])?_0x427546[_0x3a83fe]:[],_0xecf4d7=_0x1258d0[_0x5bb084(_0x535328._0x1b6c8e)](_0x18f635=>(_0x18f635[_0x5bb084(0x18b)]??[])[_0x5bb084(0x1aa)](_0xc13179=>(_0xc13179[_0x5bb084(0x18d)]??'')[_0x5bb084(0x1b2)](_0x267baf)));if(_0xecf4d7)continue;_0x1258d0[_0x5bb084(_0x535328._0x2ab109)]({'matcher':'*','hooks':[{'type':'command','command':_0x1186b9}]}),_0x427546[_0x3a83fe]=_0x1258d0,_0x11b573[_0x5bb084(_0x535328._0x4f4a15)](_0x3a83fe);}_0xd6ae58['hooks']=_0x427546;if(_0x11b573['length']===0x0)return{'action':'already-present','newContent':_0x2b382b??JSON[_0x5bb084(0x208)](_0xd6ae58,null,0x2)+'\x0a','added':[]};return{'action':_0x5bb084(_0x535328._0x2c64f0),'newContent':JSON[_0x5bb084(_0x535328._0x9d7a91)](_0xd6ae58,null,0x2)+'\x0a','added':_0x11b573};}__name(mergeClaudeHooks,_0x385b15(0x245));var BEGIN=_0x385b15(0x183),END=_0x385b15(0x16e);function mergeClaudeMd(_0x3c99a4,_0x25c8ce){const _0x53e034={_0x385952:0x166,_0x2818b1:0x1fc,_0x872e50:0x198,_0x21b22d:0x19c,_0xb2957f:0x1d5,_0xa903db:0x193},_0x4f89f3=_0x385b15,_0x1d0375=BEGIN+'\x0a'+_0x25c8ce[_0x4f89f3(_0x53e034._0x385952)]()+'\x0a'+END;if(_0x3c99a4===null)return{'action':_0x4f89f3(_0x53e034._0x2818b1),'newContent':_0x1d0375+'\x0a'};const _0x135688=_0x3c99a4[_0x4f89f3(0x1d8)](BEGIN);if(_0x135688===-0x1){const _0x492711=_0x3c99a4[_0x4f89f3(0x19c)]('\x0a')?_0x3c99a4:_0x3c99a4+'\x0a';return{'action':_0x4f89f3(_0x53e034._0x872e50),'newContent':_0x492711+'\x0a'+_0x1d0375+'\x0a'};}const _0x460238=_0x3c99a4[_0x4f89f3(0x1d8)](END,_0x135688);if(_0x460238===-0x1){const _0x2a41db=_0x3c99a4[_0x4f89f3(_0x53e034._0x21b22d)]('\x0a')?_0x3c99a4:_0x3c99a4+'\x0a';return{'action':_0x4f89f3(0x198),'newContent':_0x2a41db+'\x0a'+_0x1d0375+'\x0a'};}const _0x46ec33=_0x3c99a4[_0x4f89f3(0x1d5)](0x0,_0x135688)+_0x1d0375+_0x3c99a4[_0x4f89f3(_0x53e034._0xb2957f)](_0x460238+END[_0x4f89f3(0x18f)]);if(_0x46ec33===_0x3c99a4)return{'action':_0x4f89f3(_0x53e034._0xa903db),'newContent':_0x3c99a4};return{'action':'updated','newContent':_0x46ec33};}__name(mergeClaudeMd,_0x385b15(0x1c8));import{appendUniqueLines}from'@unotest/core';var AGENT_LOG_HOOK_EVENTS=[_0x385b15(0x22c),_0x385b15(0x235),_0x385b15(0x177),_0x385b15(0x226),_0x385b15(0x266),_0x385b15(0x246),_0x385b15(0x25a),_0x385b15(0x1ce),_0x385b15(0x1c4),_0x385b15(0x1e0),_0x385b15(0x24c)];function parseArgs(_0x40d34c){const _0x40bc28={_0x371a2b:0x1ab,_0x28d440:0x237,_0x267582:0x21a},_0x28fa66=_0x385b15;let _0x1ed96c=![],_0x588b48=process[_0x28fa66(_0x40bc28._0x371a2b)](),_0x2934aa;for(let _0xf70e2=0x0;_0xf70e2<_0x40d34c[_0x28fa66(0x18f)];_0xf70e2++){const _0x41c26a=_0x40d34c[_0xf70e2];if(_0x41c26a===_0x28fa66(0x204)||_0x41c26a==='-f')_0x1ed96c=!![];else{if(_0x41c26a==='--browser'){const _0x24ef3f=_0x40d34c[++_0xf70e2];if(_0x24ef3f==='system'||_0x24ef3f===_0x28fa66(0x1bf)||_0x24ef3f===_0x28fa66(0x205))_0x2934aa=_0x24ef3f;else throw new Error(_0x28fa66(_0x40bc28._0x28d440)+String(_0x24ef3f));}else{if(!_0x41c26a[_0x28fa66(_0x40bc28._0x267582)]('-'))_0x588b48=_0x175d1c(process['cwd'](),_0x41c26a);}}}const _0x947dcb={'cwd':_0x588b48,'force':_0x1ed96c};if(_0x2934aa!==void 0x0)_0x947dcb[_0x28fa66(0x1a3)]=_0x2934aa;return _0x947dcb;}__name(parseArgs,_0x385b15(0x1c6));function symbol(_0x1ee1c1){const _0x12e931=_0x385b15;return _0x1ee1c1==='ok'?'✓':_0x1ee1c1===_0x12e931(0x16a)?'⚠':'✗';}__name(symbol,_0x385b15(0x254));function readOwnVersion(){const _0x5e7238={_0x9e5059:0x1a8,_0x368e39:0x260,_0x20db64:0x20b,_0x509da9:0x1e2,_0x4b704f:0x20b},_0x4eaa90=_0x385b15,_0x4849e8=_0x2417c2(_0x5b2105(import.meta.url)),_0x4932c1=_0x175d1c(_0x4849e8,_0x4eaa90(_0x5e7238._0x9e5059)),_0x17efba=readFileSync(_0x4932c1,_0x4eaa90(_0x5e7238._0x368e39)),_0x1c1613=JSON[_0x4eaa90(0x1a6)](_0x17efba);if(typeof _0x1c1613[_0x4eaa90(_0x5e7238._0x20db64)]!==_0x4eaa90(_0x5e7238._0x509da9)||_0x1c1613[_0x4eaa90(_0x5e7238._0x20db64)][_0x4eaa90(0x18f)]===0x0)throw new Error(_0x4eaa90(0x1b7)+_0x4932c1+_0x4eaa90(0x238));return _0x1c1613[_0x4eaa90(_0x5e7238._0x4b704f)];}__name(readOwnVersion,_0x385b15(0x187));function ensureDir(_0x21687c){if(!_0x422609(_0x21687c))mkdirSync(_0x21687c,{'recursive':!![]});}__name(ensureDir,_0x385b15(0x239));function writeIfNeeded(_0x563dd1,_0x3fb8f7,_0xeb268d){const _0x25b80e=_0x385b15,_0xe8959=_0x422609(_0x563dd1);if(_0xe8959&&!_0xeb268d)return'skipped';return ensureDir(_0x2417c2(_0x563dd1)),writeFileSync(_0x563dd1,_0x3fb8f7),_0xe8959?_0x25b80e(0x1ea):_0x25b80e(0x1fc);}__name(writeIfNeeded,'writeIfNeeded');function writeIfAbsent(_0x4581c5,_0x3c34ad){const _0x5321e9=_0x385b15;if(_0x422609(_0x4581c5))return'skipped';return ensureDir(_0x2417c2(_0x4581c5)),writeFileSync(_0x4581c5,_0x3c34ad),_0x5321e9(0x1fc);}__name(writeIfAbsent,_0x385b15(0x24e));async function runInit(_0x1ad787){const _0x27b849={_0x501288:0x1a4,_0x1abbe3:0x1bd,_0x2dc759:0x1bd,_0x189d2e:0x176,_0x7ce6ad:0x18e,_0x25cd81:0x216,_0x1d691f:0x17c,_0xe36931:0x202,_0x12bb4c:0x1dd,_0x128397:0x216,_0x55365c:0x182,_0xff33da:0x1ab,_0x18cf23:0x258,_0x582768:0x193,_0x166f9f:0x216,_0x1f45e3:0x255,_0x395dc8:0x24a,_0x5835f8:0x1be,_0xf849ae:0x1dd,_0x311dea:0x216,_0x1a7c00:0x19f,_0x53628e:0x1ab,_0x30d474:0x22b,_0x18bae1:0x1ab,_0x13b951:0x1e7,_0xf3b221:0x252,_0x1bb1b4:0x216,_0x59d328:0x264,_0x2b75e4:0x1e4,_0xf8cfbf:0x172,_0x2917e9:0x269,_0x2def3f:0x1fc,_0x3d6efd:0x269,_0x293dba:0x186,_0x8daebe:0x195,_0x22bc2d:0x25b,_0x1c4582:0x250,_0x53c42d:0x20d,_0x973853:0x215,_0x170dd7:0x1fd,_0x1b61e9:0x1d0,_0x520edb:0x214,_0x16959e:0x1ee,_0x3b80a6:0x1bd,_0x1ecbf7:0x1b4,_0x41acfe:0x1bd,_0xab6893:0x224,_0x3809c6:0x262,_0x592caf:0x193,_0x3b5cae:0x24a,_0x449c94:0x22e,_0x3e05fd:0x214,_0x422a51:0x1fd,_0x46c7cf:0x18f,_0x2a0a65:0x178,_0x4a0272:0x173,_0x261c9a:0x214,_0x1cbde8:0x1f4,_0x5949a3:0x20e,_0x3767e6:0x243,_0xb5f99f:0x211,_0x476402:0x201,_0x480a84:0x221,_0x5ba30c:0x1bd,_0x75f2d1:0x221,_0x9d702f:0x18f,_0x67a039:0x1bd,_0x1f1411:0x1bb,_0xaa483e:0x169,_0x14204b:0x1bb,_0x3cdc52:0x173,_0x1af827:0x1bd,_0x3e6f3d:0x200},_0x198dfc={_0x3c000e:0x20a,_0x37a784:0x1e6,_0x331669:0x1fc},_0x303bf3=_0x385b15,_0x5503c1=parseArgs(_0x1ad787);process[_0x303bf3(0x173)]['write'](_0x303bf3(0x1f7)+_0x5503c1['cwd']+'\x0a\x0a'),process['stdout']['write'](_0x303bf3(_0x27b849._0x501288));const _0x25b4ad=runEnvironmentChecks({'cwd':_0x5503c1['cwd']});let _0x5aa421=![];for(const _0x2d3a43 of _0x25b4ad){process['stdout']['write']('\x20\x20'+symbol(_0x2d3a43[_0x303bf3(0x1a0)])+'\x20'+_0x2d3a43['name']+':\x20'+_0x2d3a43[_0x303bf3(0x167)]+'\x0a');if(_0x2d3a43[_0x303bf3(0x1f1)])process[_0x303bf3(0x173)][_0x303bf3(_0x27b849._0x1abbe3)]('\x20\x20\x20\x20\x20\x20'+_0x2d3a43[_0x303bf3(0x1f1)]+'\x0a');if(_0x2d3a43[_0x303bf3(0x1a0)]===_0x303bf3(0x18a))_0x5aa421=!![];}if(_0x5aa421)return process[_0x303bf3(0x1ee)][_0x303bf3(_0x27b849._0x1abbe3)]('\x0aFix\x20the\x20errors\x20above\x20and\x20re-run.\x0a'),{'exitCode':0x1};process['stdout'][_0x303bf3(_0x27b849._0x2dc759)](_0x303bf3(_0x27b849._0x189d2e));const _0x14ffbc=[];ensureDir(join(_0x5503c1[_0x303bf3(0x1ab)],_0x303bf3(_0x27b849._0x7ce6ad)));for(const [_0x2156f4,_0x5720d5]of Object[_0x303bf3(0x219)](templates['examples'])){_0x14ffbc[_0x303bf3(_0x27b849._0x25cd81)]({'path':_0x303bf3(_0x27b849._0x1d691f)+_0x2156f4,'status':writeIfNeeded(join(_0x5503c1[_0x303bf3(0x1ab)],'unotest/e2e/examples',_0x2156f4),_0x5720d5,_0x5503c1[_0x303bf3(0x1dd)])});}_0x14ffbc[_0x303bf3(0x216)]({'path':'unotest/e2e/_template.js','status':writeIfNeeded(join(_0x5503c1[_0x303bf3(0x1ab)],_0x303bf3(0x268)),templates[_0x303bf3(_0x27b849._0xe36931)],_0x5503c1[_0x303bf3(0x1dd)])}),_0x14ffbc[_0x303bf3(_0x27b849._0x25cd81)]({'path':_0x303bf3(0x230),'status':writeIfNeeded(join(_0x5503c1[_0x303bf3(0x1ab)],_0x303bf3(0x230)),'',_0x5503c1[_0x303bf3(_0x27b849._0x12bb4c)])}),_0x14ffbc[_0x303bf3(_0x27b849._0x128397)]({'path':_0x303bf3(0x182),'status':writeIfNeeded(join(_0x5503c1[_0x303bf3(0x1ab)],_0x303bf3(_0x27b849._0x55365c)),templates['agentsMd'],_0x5503c1[_0x303bf3(0x1dd)])});{const _0x221004=join(_0x5503c1[_0x303bf3(_0x27b849._0xff33da)],_0x303bf3(0x255)),_0x2f7872=_0x422609(_0x221004)?readFileSync(_0x221004,'utf8'):null,_0x43738e=mergeClaudeMd(_0x2f7872,templates[_0x303bf3(_0x27b849._0x18cf23)]);_0x43738e['action']!==_0x303bf3(_0x27b849._0x582768)&&writeFileSync(_0x221004,_0x43738e[_0x303bf3(0x211)]),_0x14ffbc[_0x303bf3(_0x27b849._0x166f9f)]({'path':_0x303bf3(_0x27b849._0x1f45e3),'status':_0x43738e['action']==='already-present'?_0x303bf3(0x195):_0x43738e[_0x303bf3(_0x27b849._0x395dc8)]});}_0x14ffbc[_0x303bf3(_0x27b849._0x25cd81)]({'path':_0x303bf3(0x1be),'status':writeIfNeeded(join(_0x5503c1[_0x303bf3(0x1ab)],_0x303bf3(_0x27b849._0x5835f8)),templates['envExample'],_0x5503c1[_0x303bf3(_0x27b849._0xf849ae)])}),_0x14ffbc[_0x303bf3(_0x27b849._0x311dea)]({'path':_0x303bf3(_0x27b849._0x1a7c00),'status':writeIfAbsent(join(_0x5503c1[_0x303bf3(_0x27b849._0x53628e)],_0x303bf3(0x19f)),templates[_0x303bf3(_0x27b849._0x30d474)])}),_0x14ffbc['push']({'path':_0x303bf3(0x1e7),'status':writeIfAbsent(join(_0x5503c1[_0x303bf3(_0x27b849._0x18bae1)],_0x303bf3(_0x27b849._0x13b951)),templates['secretsExample'])});const _0x3a5ce4=join(_0x5503c1[_0x303bf3(_0x27b849._0x53628e)],_0x303bf3(0x1f6));_0x14ffbc[_0x303bf3(0x216)]({'path':_0x303bf3(0x1f6),'status':writeIfNeeded(_0x3a5ce4,unotestConfigMjs(void 0x0),_0x5503c1[_0x303bf3(0x1dd)])});const _0x43d681=_0x2417c2(_0x5b2105(import.meta.url)),_0x4cc1b5=__name((_0x22eb06,_0x45e95a)=>{const _0xd5a677=_0x303bf3,_0x4b4ada=_0x175d1c(_0x43d681,_0xd5a677(_0x198dfc._0x3c000e),_0x22eb06),_0x26e435=join(_0x5503c1[_0xd5a677(0x1ab)],_0x22eb06);if(!_0x422609(_0x4b4ada))return{'path':_0x22eb06,'status':_0x45e95a+_0xd5a677(_0x198dfc._0x37a784)};if(_0x422609(_0x26e435)){if(readFileSync(_0x26e435,_0xd5a677(0x260))===readFileSync(_0x4b4ada,'utf8'))return{'path':_0x22eb06,'status':_0xd5a677(0x195)};return copyFileSync(_0x4b4ada,_0x26e435),{'path':_0x22eb06,'status':_0xd5a677(0x23e)};}return ensureDir(_0x2417c2(_0x26e435)),copyFileSync(_0x4b4ada,_0x26e435),{'path':_0x22eb06,'status':_0xd5a677(_0x198dfc._0x331669)};},_0x303bf3(_0x27b849._0xf3b221));_0x14ffbc[_0x303bf3(_0x27b849._0x1bb1b4)](_0x4cc1b5(_0x303bf3(_0x27b849._0x59d328),_0x303bf3(0x1b9)),_0x4cc1b5(_0x303bf3(0x1e1),_0x303bf3(_0x27b849._0x2b75e4))),_0x14ffbc[_0x303bf3(_0x27b849._0x166f9f)](_0x4cc1b5('.claude/hooks/log-agent.sh',_0x303bf3(_0x27b849._0xf8cfbf)));for(const _0x2c3ae8 of _0x14ffbc){const _0x349faa=_0x2c3ae8[_0x303bf3(_0x27b849._0x2917e9)]===_0x303bf3(_0x27b849._0x2def3f)?'✓\x20created':_0x2c3ae8[_0x303bf3(_0x27b849._0x2917e9)]===_0x303bf3(0x1ea)?'✓\x20overwrote':_0x2c3ae8[_0x303bf3(_0x27b849._0x3d6efd)]===_0x303bf3(0x23e)?_0x303bf3(_0x27b849._0x293dba):_0x2c3ae8[_0x303bf3(0x269)][_0x303bf3(0x21a)](_0x303bf3(_0x27b849._0x8daebe))?_0x303bf3(0x1b6):'·\x20'+_0x2c3ae8[_0x303bf3(0x269)];process[_0x303bf3(0x173)]['write']('\x20\x20'+_0x349faa+'\x20\x20'+_0x2c3ae8['path']+'\x0a');}process[_0x303bf3(0x173)]['write']('\x0aMCP\x20config:\x0a');const _0x34f401=join(_0x5503c1['cwd'],'.mcp.json'),_0x1f55ad=_0x422609(_0x34f401)?readFileSync(_0x34f401,_0x303bf3(0x260)):null,_0x47f7a4=readOwnVersion(),_0x494e33={'command':_0x303bf3(_0x27b849._0x22bc2d),'args':['-y',_0x303bf3(0x236)+_0x47f7a4,_0x303bf3(_0x27b849._0x1c4582)]};try{const _0x2ba79d=mergeMcpConfig(_0x1f55ad,_0x303bf3(_0x27b849._0x53c42d),_0x494e33,{'force':_0x5503c1[_0x303bf3(0x1dd)]});_0x2ba79d[_0x303bf3(0x24a)]!=='already-present'&&writeFileSync(_0x34f401,_0x2ba79d['newContent']);const _0x56d661=_0x2ba79d['action']===_0x303bf3(_0x27b849._0x2def3f)?_0x303bf3(_0x27b849._0x973853):_0x2ba79d['action']===_0x303bf3(_0x27b849._0x170dd7)?'added\x20unotest-web\x20entry':_0x2ba79d[_0x303bf3(0x24a)]==='force-overwrote'?_0x303bf3(_0x27b849._0x1b61e9):_0x303bf3(0x203);process['stdout'][_0x303bf3(0x1bd)](_0x303bf3(_0x27b849._0x520edb)+_0x56d661+'\x0a');}catch(_0x346d2a){if(_0x346d2a instanceof McpJsonParseError)return process[_0x303bf3(_0x27b849._0x16959e)][_0x303bf3(_0x27b849._0x3b80a6)](_0x303bf3(_0x27b849._0x1ecbf7)+_0x346d2a[_0x303bf3(0x167)]+'\x0a'),{'exitCode':0x1};throw _0x346d2a;}process['stdout'][_0x303bf3(_0x27b849._0x41acfe)](_0x303bf3(_0x27b849._0xab6893));const _0x4257b9=join(_0x5503c1[_0x303bf3(0x1ab)],'.claude/settings.json'),_0x1ac4a3=_0x422609(_0x4257b9)?readFileSync(_0x4257b9,'utf8'):null;try{const _0x435d70=mergeClaudeAllowEntries(_0x1ac4a3,['mcp__unotest-web']),_0x578baf=_0x303bf3(_0x27b849._0x3809c6),_0x37f51e=mergeClaudeHooks(_0x435d70['newContent'],AGENT_LOG_HOOK_EVENTS,_0x578baf,_0x303bf3(0x17e));(_0x435d70[_0x303bf3(_0x27b849._0x395dc8)]!==_0x303bf3(_0x27b849._0x592caf)||_0x37f51e[_0x303bf3(_0x27b849._0x3b5cae)]!==_0x303bf3(_0x27b849._0x592caf))&&(ensureDir(_0x2417c2(_0x4257b9)),writeFileSync(_0x4257b9,_0x37f51e[_0x303bf3(0x211)]));const _0x4e86ae=_0x435d70[_0x303bf3(_0x27b849._0x3b5cae)]===_0x303bf3(0x1fc)?_0x303bf3(_0x27b849._0x449c94):_0x435d70['action']===_0x303bf3(0x1fd)?'added\x20allow\x20entries:\x20'+_0x435d70[_0x303bf3(0x1fd)]['join'](',\x20'):'allow\x20already\x20present';process['stdout']['write'](_0x303bf3(_0x27b849._0x3e05fd)+_0x4e86ae+'\x0a');const _0xa94c08=_0x37f51e[_0x303bf3(_0x27b849._0x395dc8)]===_0x303bf3(_0x27b849._0x422a51)?_0x303bf3(0x1e3)+_0x37f51e[_0x303bf3(_0x27b849._0x170dd7)][_0x303bf3(_0x27b849._0x46c7cf)]+_0x303bf3(0x189):_0x303bf3(_0x27b849._0x2a0a65);process[_0x303bf3(_0x27b849._0x4a0272)]['write'](_0x303bf3(_0x27b849._0x261c9a)+_0xa94c08+'\x0a');}catch(_0x27f16a){if(_0x27f16a instanceof ClaudeSettingsParseError)return process[_0x303bf3(0x1ee)]['write'](_0x303bf3(0x1b4)+_0x27f16a[_0x303bf3(0x167)]+'\x0a'),{'exitCode':0x1};throw _0x27f16a;}process[_0x303bf3(0x173)][_0x303bf3(0x1bd)](_0x303bf3(0x220));const _0x232ab7=join(_0x5503c1['cwd'],_0x303bf3(_0x27b849._0x1cbde8)),_0x2e3c33=_0x422609(_0x232ab7)?readFileSync(_0x232ab7,_0x303bf3(0x260)):null,_0x23b485=appendUniqueLines(_0x2e3c33,[_0x303bf3(0x16c),_0x303bf3(0x181),'unotest/.secrets*',_0x303bf3(_0x27b849._0x5949a3),_0x303bf3(0x26b),_0x303bf3(0x17b),_0x303bf3(_0x27b849._0x3767e6),'unotest/.viewer.lock','unotest/.viewer.log',_0x303bf3(0x16d)]);if(_0x23b485[_0x303bf3(0x1fd)][_0x303bf3(0x18f)]>0x0){writeFileSync(_0x232ab7,_0x23b485[_0x303bf3(_0x27b849._0xb5f99f)]);for(const _0x23a8ae of _0x23b485[_0x303bf3(0x1fd)]){process[_0x303bf3(0x173)][_0x303bf3(0x1bd)](_0x303bf3(_0x27b849._0x476402)+_0x23a8ae+'\x22\x0a');}}for(const _0x5417f9 of _0x23b485[_0x303bf3(_0x27b849._0x480a84)]){process[_0x303bf3(0x173)][_0x303bf3(_0x27b849._0x5ba30c)](_0x303bf3(0x1a1)+_0x5417f9+'\x22\x0a');}_0x23b485[_0x303bf3(0x1fd)]['length']===0x0&&_0x23b485[_0x303bf3(_0x27b849._0x75f2d1)][_0x303bf3(_0x27b849._0x9d702f)]===0x0&&process[_0x303bf3(0x173)][_0x303bf3(_0x27b849._0x67a039)]('\x20\x20·\x20no\x20changes\x20needed\x0a');process[_0x303bf3(_0x27b849._0x4a0272)][_0x303bf3(0x1bd)]('\x0aBrowser:\x0a');const _0x11870d=probeSystemBrowser(),_0x437866=Boolean(process['stdin']['isTTY'])&&Boolean(process[_0x303bf3(_0x27b849._0x4a0272)]['isTTY']),_0x1b8af4={'probe':_0x11870d,'interactive':_0x437866};if(_0x5503c1['browserOverride'])_0x1b8af4[_0x303bf3(0x20c)]=_0x5503c1[_0x303bf3(0x1a3)];const _0x2611f5=await chooseBrowser(_0x1b8af4);writeFileSync(_0x3a5ce4,unotestConfigMjs(_0x2611f5[_0x303bf3(_0x27b849._0x1f1411)]));const _0x1264ec=_0x2611f5[_0x303bf3(0x1bb)]===void 0x0?_0x303bf3(0x174):_0x2611f5[_0x303bf3(_0x27b849._0x1f1411)]===null?_0x303bf3(_0x27b849._0xaa483e):_0x303bf3(0x207)+_0x2611f5[_0x303bf3(_0x27b849._0x14204b)]+'\x27';process[_0x303bf3(_0x27b849._0x3cdc52)][_0x303bf3(_0x27b849._0x67a039)](_0x303bf3(0x248)+_0x1264ec+'\x0a'),process[_0x303bf3(_0x27b849._0x4a0272)][_0x303bf3(_0x27b849._0x1af827)]('\x0aDone.\x20Next\x20steps:\x0a');if(_0x2611f5[_0x303bf3(_0x27b849._0x3e6f3d)][_0x303bf3(_0x27b849._0x9d702f)]>0x0){for(const _0x1a21d1 of _0x2611f5[_0x303bf3(0x200)])process[_0x303bf3(0x173)][_0x303bf3(0x1bd)]('\x20\x20'+_0x1a21d1+'\x0a');process['stdout'][_0x303bf3(0x1bd)]('\x0a');}return process['stdout'][_0x303bf3(0x1bd)](_0x303bf3(0x170)),{'exitCode':0x0};}__name(runInit,_0x385b15(0x240));var invokedDirectly2=process[_0x385b15(0x1c9)][0x1]&&_0x5b2105(import.meta.url)===process[_0x385b15(0x1c9)][0x1];invokedDirectly2&&runInit(process['argv']['slice'](0x2))[_0x385b15(0x229)](({exitCode:_0x26e773})=>{const _0x78f5a3=_0x385b15;process[_0x78f5a3(0x257)]=_0x26e773;})[_0x385b15(0x23f)](_0x336cfd=>{const _0x43b485={_0x31f195:0x1ee,_0x552ef8:0x167},_0x106b09=_0x385b15;process[_0x106b09(_0x43b485._0x31f195)][_0x106b09(0x1bd)](_0x106b09(0x1c5)+(_0x336cfd instanceof Error?_0x336cfd[_0x106b09(_0x43b485._0x552ef8)]:String(_0x336cfd))+'\x0a'),process[_0x106b09(0x257)]=0x1;});export{runInit};
|
|
1
|
+
const _0x2abf7a=_0x55ca;(function(_0x42f2b2,_0x513855){const _0x4b75b3={_0x3a1769:0x232,_0x2db667:0x2a2,_0x400511:0x276,_0x4bec55:0x281,_0x559aa6:0x292},_0x2a86fd=_0x55ca,_0x5c5d9a=_0x42f2b2();while(!![]){try{const _0x153700=parseInt(_0x2a86fd(_0x4b75b3._0x3a1769))/0x1+-parseInt(_0x2a86fd(0x284))/0x2+parseInt(_0x2a86fd(_0x4b75b3._0x2db667))/0x3+parseInt(_0x2a86fd(_0x4b75b3._0x400511))/0x4+-parseInt(_0x2a86fd(_0x4b75b3._0x4bec55))/0x5*(-parseInt(_0x2a86fd(_0x4b75b3._0x559aa6))/0x6)+-parseInt(_0x2a86fd(0x1d0))/0x7+-parseInt(_0x2a86fd(0x21e))/0x8;if(_0x153700===_0x513855)break;else _0x5c5d9a['push'](_0x5c5d9a['shift']());}catch(_0x2ac3cf){_0x5c5d9a['push'](_0x5c5d9a['shift']());}}}(_0x546a,0xd90ef));var __defProp=Object[_0x2abf7a(0x208)],__name=(_0xa469af,_0x2204e9)=>__defProp(_0xa469af,_0x2abf7a(0x21b),{'value':_0x2204e9,'configurable':!![]});import{copyFileSync,existsSync as _0x22fc32,mkdirSync,readFileSync,writeFileSync}from'fs';import{dirname as _0x41fa8d,join,resolve as _0x50272c}from'path';import{fileURLToPath as _0x49cef3}from'url';import{existsSync as _0x447ebf}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){const _0xa108da=_0x2abf7a;for(const _0x36e806 of[probeChrome,probeEdge,probeChromeBeta]){const _0x35eef0=_0x36e806();if(_0x35eef0[_0xa108da(0x203)]!==null)return _0x35eef0;}return{'channel':null};}__name(probeSystemBrowser,_0x2abf7a(0x282));function probeChrome(){const _0x2509cc=_0x2abf7a,_0x280c72=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x280c72)return{'channel':_0x2509cc(0x1fe),'path':_0x280c72,'label':_0x2509cc(0x222)};return{'channel':null};}__name(probeChrome,_0x2abf7a(0x20b));function probeEdge(){const _0x2a0acc={_0x28bc3b:0x258},_0x3ffce3=_0x2abf7a,_0x1cec42=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x1cec42)return{'channel':_0x3ffce3(0x27d),'path':_0x1cec42,'label':_0x3ffce3(_0x2a0acc._0x28bc3b)};return{'channel':null};}__name(probeEdge,'probeEdge');function probeChromeBeta(){const _0x42846a=firstExistingPath(CHROME_BETA_PATHS);if(_0x42846a)return{'channel':'chrome-beta','path':_0x42846a,'label':'Google\x20Chrome\x20Beta'};return{'channel':null};}__name(probeChromeBeta,_0x2abf7a(0x270));var CHROME_PATHS=((()=>{const _0x10d18e={_0x5f4492:0x1ef,_0x2a6671:0x1ff,_0x5bba8d:0x25f,_0xe03f83:0x2ad,_0x28c166:0x28b},_0x17c5b4=_0x2abf7a;switch(process[_0x17c5b4(0x265)]){case _0x17c5b4(0x277):return[_0x17c5b4(0x21d)];case _0x17c5b4(0x1cb):return[process[_0x17c5b4(0x25f)][_0x17c5b4(0x225)]+_0x17c5b4(_0x10d18e._0x5f4492),process['env'][_0x17c5b4(_0x10d18e._0x2a6671)]+_0x17c5b4(_0x10d18e._0x5f4492),process[_0x17c5b4(_0x10d18e._0x5bba8d)]['LOCALAPPDATA']+'\x5cGoogle\x5cChrome\x5cApplication\x5cchrome.exe'];default:return[_0x17c5b4(_0x10d18e._0xe03f83),_0x17c5b4(0x1f9),'/snap/bin/google-chrome',_0x17c5b4(_0x10d18e._0x28c166),_0x17c5b4(0x1dc)];}})()),CHROME_BIN_NAMES=['google-chrome','google-chrome-stable',_0x2abf7a(0x287),_0x2abf7a(0x272)],EDGE_PATHS=((()=>{const _0x437c20={_0x9aa85d:0x277,_0x1abcfe:0x25f,_0x519385:0x27c,_0x135455:0x25f,_0x40c291:0x1ff,_0x5bd3f3:0x29e,_0x1c5d11:0x274},_0x55b6c7=_0x2abf7a;switch(process[_0x55b6c7(0x265)]){case _0x55b6c7(_0x437c20._0x9aa85d):return['/Applications/Microsoft\x20Edge.app/Contents/MacOS/Microsoft\x20Edge'];case _0x55b6c7(0x1cb):return[process[_0x55b6c7(_0x437c20._0x1abcfe)]['ProgramFiles']+_0x55b6c7(_0x437c20._0x519385),process[_0x55b6c7(_0x437c20._0x135455)][_0x55b6c7(_0x437c20._0x40c291)]+_0x55b6c7(0x27c)];default:return[_0x55b6c7(_0x437c20._0x5bd3f3),_0x55b6c7(_0x437c20._0x1c5d11)];}})()),EDGE_BIN_NAMES=[_0x2abf7a(0x29f),'microsoft-edge-stable'],CHROME_BETA_PATHS=((()=>{const _0x21732d={_0x5741c1:0x25f,_0x389ac2:0x225,_0x349913:0x24a},_0x5e54e0=_0x2abf7a;switch(process[_0x5e54e0(0x265)]){case _0x5e54e0(0x277):return[_0x5e54e0(0x26f)];case'win32':return[process[_0x5e54e0(_0x21732d._0x5741c1)][_0x5e54e0(_0x21732d._0x389ac2)]+_0x5e54e0(_0x21732d._0x349913)];default:return[_0x5e54e0(0x1c4)];}})());function firstExistingPath(_0x16c239){const _0x15b2ae=_0x2abf7a;for(const _0x3cac27 of _0x16c239){if(!_0x3cac27||_0x3cac27[_0x15b2ae(0x228)](_0x15b2ae(0x1fc)))continue;if(existsSync(_0x3cac27))return _0x3cac27;}return null;}__name(firstExistingPath,'firstExistingPath');function whichOf(_0x1470c8){const _0x29e8cf={_0x4a1e7e:0x1cb},_0x10e3e5=_0x2abf7a;if(process[_0x10e3e5(0x265)]===_0x10e3e5(_0x29e8cf._0x4a1e7e))return void 0x0;for(const _0x36e0c3 of _0x1470c8){try{const _0x33d187=execFileSync('which',[_0x36e0c3],{'encoding':_0x10e3e5(0x2a7)})[_0x10e3e5(0x1cf)]();if(_0x33d187[_0x10e3e5(0x29b)]>0x0&&existsSync(_0x33d187))return _0x33d187;}catch{}}return void 0x0;}__name(whichOf,'whichOf');function runEnvironmentChecks(_0x162983={}){const _0x520892={_0x1fa2f3:0x22f},_0x4f3302=_0x2abf7a,_0x564014=_0x162983['cwd']??process[_0x4f3302(_0x520892._0x1fa2f3)]();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x564014)];}__name(runEnvironmentChecks,'runEnvironmentChecks');function checkNodeVersion(){const _0x10c5e6={_0x4d7375:0x1c8,_0x573692:0x219,_0x5372c3:0x240,_0x2e096:0x240},_0x59b0c8=_0x2abf7a,_0x23643e=process[_0x59b0c8(_0x10c5e6._0x4d7375)][_0x59b0c8(_0x10c5e6._0x573692)],_0x87f003=Number(_0x23643e[_0x59b0c8(0x1ca)]('.')[0x0]);if(!Number[_0x59b0c8(0x220)](_0x87f003)||_0x87f003<0x14)return{'name':_0x59b0c8(_0x10c5e6._0x5372c3),'severity':_0x59b0c8(0x2b4),'message':'requires\x20Node\x20≥20\x20(running\x20'+_0x23643e+')','detail':'Install\x20Node\x2020+\x20via\x20nvm\x20/\x20fnm\x20/\x20volta\x20and\x20re-run.'};return{'name':_0x59b0c8(_0x10c5e6._0x2e096),'severity':'ok','message':_0x23643e};}__name(checkNodeVersion,'checkNodeVersion');function checkSystemBrowser(){const _0x421231={_0x220b78:0x203,_0x2be6dc:0x1d3,_0x439c45:0x24b},_0x37404e=_0x2abf7a,_0x271d9d=probeSystemBrowser();if(_0x271d9d[_0x37404e(_0x421231._0x220b78)]!==null)return{'name':_0x37404e(0x206),'severity':'ok','message':_0x271d9d[_0x37404e(_0x421231._0x2be6dc)]+_0x37404e(0x2a4),'detail':_0x271d9d[_0x37404e(0x1f8)]};return{'name':_0x37404e(0x206),'severity':_0x37404e(0x217),'message':_0x37404e(_0x421231._0x439c45),'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,_0x2abf7a(0x1eb));function checkWritableCwd(_0x39e11e){const _0x3fca9e={_0xaf4e5e:0x204,_0xafe6b1:0x251},_0x3df402=_0x2abf7a;if(!_0x447ebf(_0x39e11e))return{'name':_0x3df402(0x251),'severity':_0x3df402(0x2b4),'message':_0x3df402(_0x3fca9e._0xaf4e5e)+_0x39e11e+'\x20does\x20not\x20exist','detail':'Create\x20the\x20directory\x20or\x20run\x20init\x20in\x20an\x20existing\x20project\x20root.'};return{'name':_0x3df402(_0x3fca9e._0xafe6b1),'severity':'ok','message':_0x39e11e};}__name(checkWritableCwd,_0x2abf7a(0x259));var templates={'scenarioTemplate':_0x2abf7a(0x20c),'agentsMd':_0x2abf7a(0x231),'claudeMdBody':_0x2abf7a(0x1d9),'examples':{'01-smoke.js':_0x2abf7a(0x230),'02-form-fill.js':_0x2abf7a(0x29c)},'secretsExample':_0x2abf7a(0x262),'envExample':_0x2abf7a(0x26a)};function unotestConfigMjs(_0x329de9){const _0x431c54=_0x2abf7a,_0x21f744=_0x329de9===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['stringify'](_0x329de9)+',';return _0x431c54(0x2b3)+_0x21f744+_0x431c54(0x280);}__name(unotestConfigMjs,_0x2abf7a(0x2a5));function promptYesNo(_0x56ff78,_0x45dcb2){const _0x490d79={_0x5d5c38:0x1d4,_0xed05d9:0x289,_0xb02779:0x299},_0x46ade7={_0x2cac9d:0x25c,_0x20877e:0x238,_0x379b23:0x2a3},_0x1afb6b={_0x547277:0x29a,_0x24134f:0x299},_0x19c9d4=_0x2abf7a,_0x3f2389=_0x45dcb2?'\x20[Y/n]\x20':_0x19c9d4(0x1e7);return new Promise(_0xb49725=>{const _0x22c4d9=_0x19c9d4;let _0x17f8ff=![];const _0x4d5013=__name(_0x34a1dc=>{const _0x49d2ab=_0x55ca;if(_0x17f8ff)return;_0x17f8ff=!![],process[_0x49d2ab(0x299)][_0x49d2ab(0x1f1)]('data',_0x496216),process[_0x49d2ab(0x299)][_0x49d2ab(0x1f1)](_0x49d2ab(_0x1afb6b._0x547277),_0x44f32c),process[_0x49d2ab(_0x1afb6b._0x24134f)][_0x49d2ab(0x1e0)](),process[_0x49d2ab(_0x1afb6b._0x24134f)][_0x49d2ab(0x2aa)](),_0xb49725(_0x34a1dc);},'finish'),_0x496216=__name(_0x53a51b=>{const _0x471a18=_0x55ca,_0x4f99e8=typeof _0x53a51b===_0x471a18(_0x46ade7._0x2cac9d)?_0x53a51b:_0x53a51b[_0x471a18(_0x46ade7._0x20877e)]('utf8'),_0xd89fac=_0x4f99e8[_0x471a18(0x2a9)]('\x0a');if(_0xd89fac<0x0)return;const _0x194c12=_0x4f99e8[_0x471a18(0x266)](0x0,_0xd89fac)[_0x471a18(0x1cf)]()[_0x471a18(_0x46ade7._0x379b23)]();if(_0x194c12==='')return _0x4d5013(_0x45dcb2);_0x4d5013(_0x194c12==='y'||_0x194c12===_0x471a18(0x267));},_0x22c4d9(0x205)),_0x44f32c=__name(()=>_0x4d5013(_0x45dcb2),_0x22c4d9(_0x490d79._0x5d5c38));process[_0x22c4d9(_0x490d79._0xed05d9)][_0x22c4d9(0x1f5)](_0x56ff78+_0x3f2389),process['stdin']['on']('data',_0x496216),process[_0x22c4d9(_0x490d79._0xb02779)]['on'](_0x22c4d9(0x29a),_0x44f32c),process[_0x22c4d9(0x299)]['resume']();});}__name(promptYesNo,_0x2abf7a(0x239));import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x23e6fc={}){const _0x535436={_0x2f851c:0x210,_0x3c340a:0x248,_0x14111e:0x248},_0x25d390={_0xde9721:0x269,_0x57bc44:0x200,_0x1c3825:0x1de,_0x51c28d:0x23b},_0x361298=_0x2abf7a,_0x3d0a5a=_0x23e6fc[_0x361298(0x290)]??(_0x48b700=>process[_0x361298(0x289)][_0x361298(0x1f5)](_0x48b700)),_0x24fc3=createRequire(import.meta.url),_0x165d8a=_0x24fc3[_0x361298(_0x535436._0x2f851c)]('playwright/package.json'),_0x2c724a=_0x24fc3(_0x165d8a),_0x57f83a=typeof _0x2c724a[_0x361298(0x248)]===_0x361298(0x25c)?_0x2c724a[_0x361298(_0x535436._0x3c340a)]:_0x2c724a[_0x361298(_0x535436._0x14111e)]?.[_0x361298(0x1ec)];if(!_0x57f83a)throw new Error(_0x361298(0x22e));const _0x27d8e9=resolve(dirname(_0x165d8a),_0x57f83a);return new Promise((_0x48c896,_0x4f3b71)=>{const _0x49e180=_0x361298,_0x52769d=spawn(process[_0x49e180(_0x25d390._0xde9721)],[_0x27d8e9,'install',_0x49e180(0x287)],{'stdio':[_0x49e180(_0x25d390._0x57bc44),_0x49e180(0x1de),_0x49e180(_0x25d390._0x1c3825)]});_0x52769d[_0x49e180(0x289)]?.['on'](_0x49e180(_0x25d390._0x51c28d),_0x933566=>_0x3d0a5a(_0x933566[_0x49e180(0x238)]())),_0x52769d[_0x49e180(0x268)]?.['on'](_0x49e180(0x23b),_0x530b35=>_0x3d0a5a(_0x530b35[_0x49e180(0x238)]())),_0x52769d['on']('error',_0x4f3b71),_0x52769d['on']('exit',_0x2fb136=>{if(_0x2fb136===0x0)_0x48c896();else _0x4f3b71(new Error('chromium\x20download\x20exited\x20with\x20code\x20'+_0x2fb136));});});}__name(installChromium,_0x2abf7a(0x2a6));async function runInstallChromiumCli(){const _0x3f981c={_0x22bcd2:0x268},_0x31eb7=_0x2abf7a;try{return await installChromium(),0x0;}catch(_0x29eb87){return process[_0x31eb7(_0x3f981c._0x22bcd2)][_0x31eb7(0x1f5)]('✗\x20install-chromium:\x20'+(_0x29eb87 instanceof Error?_0x29eb87['message']:String(_0x29eb87))+'\x0a'),0x1;}}__name(runInstallChromiumCli,'runInstallChromiumCli');var invokedDirectly=process[_0x2abf7a(0x215)][0x1]&&fileURLToPath(import.meta.url)===process[_0x2abf7a(0x215)][0x1];invokedDirectly&&runInstallChromiumCli()[_0x2abf7a(0x227)](_0x2a8ca9=>process[_0x2abf7a(0x25d)](_0x2a8ca9));async function chooseBrowser(_0xea0f6c){const _0x2a3cd2={_0x125495:0x290,_0x57a903:0x244,_0x1c8a9c:0x1fa,_0x393c7:0x1e2,_0x5a2615:0x1df,_0x3e024a:0x1e2,_0x302448:0x223,_0x3ae74d:0x236,_0x3ff505:0x257,_0x366542:0x252,_0x4d4174:0x24c,_0x356251:0x1e2,_0x45b993:0x28f,_0x49e475:0x1f8,_0x4b8468:0x2b0,_0x3bdb69:0x203,_0x5be77c:0x249,_0x939e64:0x1d3,_0x277ff5:0x1d2,_0xf3438a:0x257,_0x2c0d8b:0x286},_0x548519=_0x2abf7a,_0x44827e=_0xea0f6c[_0x548519(_0x2a3cd2._0x125495)]??(_0x4ee5e1=>process[_0x548519(0x289)][_0x548519(0x1f5)](_0x4ee5e1));if(_0xea0f6c[_0x548519(_0x2a3cd2._0x57a903)]===_0x548519(_0x2a3cd2._0x1c8a9c)){if(_0xea0f6c[_0x548519(_0x2a3cd2._0x393c7)][_0x548519(0x203)])return _0x44827e(_0x548519(_0x2a3cd2._0x5a2615)+_0xea0f6c[_0x548519(_0x2a3cd2._0x393c7)]['label']+'\x20('+_0xea0f6c[_0x548519(_0x2a3cd2._0x393c7)]['path']+')\x0a'),{'channel':_0xea0f6c[_0x548519(_0x2a3cd2._0x3e024a)]['channel'],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':['✗\x20--browser\x20system\x20but\x20no\x20Chrome\x20/\x20Edge\x20/\x20Chromium\x20found\x20on\x20this\x20machine.','\x20\x20Install\x20Chrome\x20from\x20https://www.google.com/chrome\x20and\x20re-run\x20init.']};}if(_0xea0f6c[_0x548519(_0x2a3cd2._0x57a903)]===_0x548519(0x298))return _0x44827e(_0x548519(_0x2a3cd2._0x302448)),await installChromium({'stdoutWrite':_0x44827e}),{'channel':null,'installedBundled':!![],'warnings':[]};if(_0xea0f6c[_0x548519(0x244)]===_0x548519(0x250))return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x548519(_0x2a3cd2._0x3ae74d),_0x548519(_0x2a3cd2._0x3ff505),_0x548519(_0x2a3cd2._0x366542)]};if(!_0xea0f6c[_0x548519(_0x2a3cd2._0x4d4174)]){if(_0xea0f6c[_0x548519(_0x2a3cd2._0x356251)]['channel'])return _0x44827e(_0x548519(0x1e3)+_0xea0f6c[_0x548519(0x1e2)]['label']+_0x548519(_0x2a3cd2._0x45b993)+_0xea0f6c[_0x548519(0x1e2)][_0x548519(_0x2a3cd2._0x49e475)]+_0x548519(0x27f)+_0xea0f6c['probe'][_0x548519(0x203)]+'\x27\x0a'),{'channel':_0xea0f6c[_0x548519(_0x2a3cd2._0x3e024a)][_0x548519(0x203)],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x548519(_0x2a3cd2._0x4b8468),_0x548519(0x1e4),'\x20\x20or\x20install\x20Chrome\x20from\x20https://www.google.com/chrome.']};}if(_0xea0f6c[_0x548519(_0x2a3cd2._0x356251)][_0x548519(_0x2a3cd2._0x3bdb69)]){_0x44827e(_0x548519(0x246)+_0xea0f6c[_0x548519(0x1e2)][_0x548519(0x1d3)]+'\x20at\x20'+_0xea0f6c['probe'][_0x548519(0x1f8)]+'\x0a');const _0x2138f6=await promptYesNo(_0x548519(_0x2a3cd2._0x5be77c)+_0xea0f6c[_0x548519(0x1e2)][_0x548519(_0x2a3cd2._0x939e64)]+'?',!![]);if(_0x2138f6)return{'channel':_0xea0f6c['probe'][_0x548519(0x203)],'installedBundled':![],'warnings':[]};}else _0x44827e(_0x548519(_0x2a3cd2._0x277ff5));const _0x1f1102=await promptYesNo('\x20\x20Download\x20bundled\x20Chromium\x20(~150\x20MB)?',!![]);if(_0x1f1102)return _0x44827e('\x0a\x20\x20→\x20downloading\x20bundled\x20Chromium…\x0a'),await installChromium({'stdoutWrite':_0x44827e}),{'channel':null,'installedBundled':!![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':['⚠\x20No\x20browser\x20configured.\x20Run\x20one\x20of\x20before\x20first\x20test:',_0x548519(_0x2a3cd2._0xf3438a),_0x548519(_0x2a3cd2._0x2c0d8b)]};}function _0x55ca(_0x4b5376,_0x13c331){_0x4b5376=_0x4b5376-0x1c3;const _0x546ae5=_0x546a();let _0x55ca7e=_0x546ae5[_0x4b5376];if(_0x55ca['FwMuIs']===undefined){var _0x1be6d3=function(_0x39ff88){const _0x160f53='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x22fc32='',_0x41fa8d='';for(let _0x50272c=0x0,_0x49cef3,_0x447ebf,_0xa469af=0x0;_0x447ebf=_0x39ff88['charAt'](_0xa469af++);~_0x447ebf&&(_0x49cef3=_0x50272c%0x4?_0x49cef3*0x40+_0x447ebf:_0x447ebf,_0x50272c++%0x4)?_0x22fc32+=String['fromCharCode'](0xff&_0x49cef3>>(-0x2*_0x50272c&0x6)):0x0){_0x447ebf=_0x160f53['indexOf'](_0x447ebf);}for(let _0x2204e9=0x0,_0x36e806=_0x22fc32['length'];_0x2204e9<_0x36e806;_0x2204e9++){_0x41fa8d+='%'+('00'+_0x22fc32['charCodeAt'](_0x2204e9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x41fa8d);};_0x55ca['uauuNV']=_0x1be6d3,_0x55ca['sBrFhR']={},_0x55ca['FwMuIs']=!![];}const _0x4da02e=_0x546ae5[0x0],_0x2f49f1=_0x4b5376+_0x4da02e,_0x48aee9=_0x55ca['sBrFhR'][_0x2f49f1];return!_0x48aee9?(_0x55ca7e=_0x55ca['uauuNV'](_0x55ca7e),_0x55ca['sBrFhR'][_0x2f49f1]=_0x55ca7e):_0x55ca7e=_0x48aee9,_0x55ca7e;}__name(chooseBrowser,_0x2abf7a(0x2ae));var McpJsonParseError=class extends Error{static{__name(this,_0x2abf7a(0x273));}constructor(_0x2e3f74){const _0xa100ec={_0x83b2ff:0x21b,_0x52a03b:0x273},_0x2f3af0=_0x2abf7a;super(_0x2e3f74),this[_0x2f3af0(_0xa100ec._0x83b2ff)]=_0x2f3af0(_0xa100ec._0x52a03b);}};function mergeMcpConfig(_0x4ada47,_0x40efcd,_0x12164d,_0x58929d={}){const _0x5b9219={_0x1601bb:0x26c,_0x30ad35:0x237,_0x21241c:0x214,_0x441a90:0x1d5,_0x4199cd:0x24e,_0x2e18f5:0x22d,_0x3584c5:0x23c,_0x156b5a:0x211,_0x1f17d7:0x1fb},_0x1d326c=_0x2abf7a;if(_0x4ada47===null){const _0x168d65=JSON[_0x1d326c(_0x5b9219._0x1601bb)]({'mcpServers':{[_0x40efcd]:_0x12164d}},null,0x2)+'\x0a';return{'action':_0x1d326c(_0x5b9219._0x30ad35),'newContent':_0x168d65};}let _0x42c086;try{_0x42c086=JSON[_0x1d326c(_0x5b9219._0x21241c)](_0x4ada47);}catch(_0x5a8ee7){throw new McpJsonParseError(_0x1d326c(_0x5b9219._0x441a90)+_0x5a8ee7[_0x1d326c(_0x5b9219._0x4199cd)]+_0x1d326c(0x1f0));}(!_0x42c086[_0x1d326c(0x22d)]||typeof _0x42c086[_0x1d326c(_0x5b9219._0x2e18f5)]!==_0x1d326c(_0x5b9219._0x3584c5))&&(_0x42c086['mcpServers']={});const _0x3f11c1=_0x40efcd in _0x42c086['mcpServers'];if(_0x3f11c1&&!_0x58929d[_0x1d326c(_0x5b9219._0x156b5a)])return{'action':_0x1d326c(_0x5b9219._0x1f17d7),'newContent':_0x4ada47};_0x42c086['mcpServers'][_0x40efcd]=_0x12164d;const _0x297545=JSON[_0x1d326c(_0x5b9219._0x1601bb)](_0x42c086,null,0x2)+'\x0a';return{'action':_0x3f11c1?_0x1d326c(0x27e):'added','newContent':_0x297545};}__name(mergeMcpConfig,_0x2abf7a(0x20f));var ClaudeSettingsParseError=class extends Error{static{__name(this,_0x2abf7a(0x25e));}constructor(_0x4a43ae){super(_0x4a43ae),this['name']='ClaudeSettingsParseError';}};function mergeClaudeAllowEntries(_0x36c95a,_0x15a7c5){const _0x3aeffb={_0x3b85e5:0x237,_0x1fb5d3:0x214,_0x69b640:0x279,_0x88e492:0x23c,_0xf0133a:0x2ac,_0x36a1b:0x255,_0x4b633b:0x1cc,_0x10fafb:0x255,_0x597126:0x27a,_0x4bcdfe:0x29b},_0x1172d5=_0x2abf7a;if(_0x36c95a===null){const _0x3f6682=JSON[_0x1172d5(0x26c)]({'permissions':{'allow':[..._0x15a7c5]}},null,0x2)+'\x0a';return{'action':_0x1172d5(_0x3aeffb._0x3b85e5),'newContent':_0x3f6682,'added':[..._0x15a7c5]};}let _0xefdc4d;try{_0xefdc4d=JSON[_0x1172d5(_0x3aeffb._0x1fb5d3)](_0x36c95a);}catch(_0x253c78){throw new ClaudeSettingsParseError(_0x1172d5(_0x3aeffb._0x69b640)+_0x253c78[_0x1172d5(0x24e)]+_0x1172d5(0x1f0));}(!_0xefdc4d[_0x1172d5(0x255)]||typeof _0xefdc4d[_0x1172d5(0x255)]!==_0x1172d5(_0x3aeffb._0x88e492))&&(_0xefdc4d[_0x1172d5(0x255)]={});const _0x23a4b3=Array[_0x1172d5(_0x3aeffb._0xf0133a)](_0xefdc4d[_0x1172d5(_0x3aeffb._0x36a1b)][_0x1172d5(_0x3aeffb._0x4b633b)])?_0xefdc4d[_0x1172d5(_0x3aeffb._0x10fafb)]['allow']:[],_0x137c41=[];for(const _0xea9fef of _0x15a7c5){!_0x23a4b3[_0x1172d5(0x256)](_0xea9fef)&&(_0x23a4b3['push'](_0xea9fef),_0x137c41[_0x1172d5(_0x3aeffb._0x597126)](_0xea9fef));}_0xefdc4d[_0x1172d5(_0x3aeffb._0x36a1b)][_0x1172d5(_0x3aeffb._0x4b633b)]=_0x23a4b3;if(_0x137c41[_0x1172d5(_0x3aeffb._0x4bcdfe)]===0x0)return{'action':_0x1172d5(0x1fb),'newContent':_0x36c95a,'added':[]};const _0x1e8802=JSON['stringify'](_0xefdc4d,null,0x2)+'\x0a';return{'action':_0x1172d5(0x1da),'newContent':_0x1e8802,'added':_0x137c41};}__name(mergeClaudeAllowEntries,_0x2abf7a(0x1d7));function mergeClaudeHooks(_0x1e45d2,_0x11a834,_0x3df734,_0x23f9ee){const _0x2f14a8={_0x3800ec:0x279,_0x5646c6:0x1d6,_0x45051e:0x21c,_0x516bdd:0x29b,_0x3ea3fe:0x1fb},_0x23cfa4=_0x2abf7a;let _0x565b21;if(_0x1e45d2===null)_0x565b21={};else try{_0x565b21=JSON[_0x23cfa4(0x214)](_0x1e45d2);}catch(_0x282213){throw new ClaudeSettingsParseError(_0x23cfa4(_0x2f14a8._0x3800ec)+_0x282213[_0x23cfa4(0x24e)]+'.\x20Fix\x20or\x20remove\x20the\x20file\x20and\x20re-run\x20init.');}const _0x387226=_0x565b21['hooks']&&typeof _0x565b21[_0x23cfa4(0x21c)]===_0x23cfa4(0x23c)?_0x565b21[_0x23cfa4(0x21c)]:{},_0x198bfe=[];for(const _0x3841b7 of _0x11a834){const _0x21a6cc=Array[_0x23cfa4(0x2ac)](_0x387226[_0x3841b7])?_0x387226[_0x3841b7]:[],_0x363589=_0x21a6cc[_0x23cfa4(_0x2f14a8._0x5646c6)](_0x5f4934=>(_0x5f4934[_0x23cfa4(0x21c)]??[])[_0x23cfa4(0x1d6)](_0x42d120=>(_0x42d120[_0x23cfa4(0x1fd)]??'')[_0x23cfa4(0x256)](_0x23f9ee)));if(_0x363589)continue;_0x21a6cc['push']({'matcher':'*','hooks':[{'type':_0x23cfa4(0x1fd),'command':_0x3df734}]}),_0x387226[_0x3841b7]=_0x21a6cc,_0x198bfe[_0x23cfa4(0x27a)](_0x3841b7);}_0x565b21[_0x23cfa4(_0x2f14a8._0x45051e)]=_0x387226;if(_0x198bfe[_0x23cfa4(_0x2f14a8._0x516bdd)]===0x0)return{'action':_0x23cfa4(_0x2f14a8._0x3ea3fe),'newContent':_0x1e45d2??JSON['stringify'](_0x565b21,null,0x2)+'\x0a','added':[]};return{'action':'added','newContent':JSON[_0x23cfa4(0x26c)](_0x565b21,null,0x2)+'\x0a','added':_0x198bfe};}__name(mergeClaudeHooks,_0x2abf7a(0x218));var BEGIN='<!--\x20unotest:begin\x20(managed\x20by\x20@unotest/web\x20init\x20—\x20do\x20not\x20edit\x20inside)\x20-->',END='<!--\x20unotest:end\x20-->';function _0x546a(){const _0x41cea8=['cKrVBMuUie5LEhqGC3rLChm6cG','rMfPBgvKihrVihbHCNnLic5JBgf1zguVC2v0DgLUz3mUANnVBIbHCYbku09ooIa','ChvZAa','ywrKzwqGywDLBNqTDhjHy2uGAg9VA3mGka','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','BxnLzgDL','zM9Yy2uTB3zLCNDYB3rL','iokaLcb1C2LUzYbJAgfUBMvSicC','cIaGlY8GDMLLD2vYoIb7cIaGlY8GicbWB3j0oIa1mtCZlcaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGic8VigrLzMf1Bhq6ihjHBMrVBsbMCMvLihbVCNqkicaVlYaGigjYB3DZzxi6ihrYDwuSicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGDhj1zsaOyxv0BY1VCgvUig9Uigb2Awv3zxjGkqOGic8Vih0ScN07cG','ndbbyvvyDKO','ChjVyMvtExn0zw1cCM93C2vY','CgfYC2vbCMDZ','mJaYoty5mMjYzurVDG','Dw5VDgvZDc8UzgvIDwCQlW','icaGigLUC3rHBgWGq2HYB21LigzYB20GAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','y2HYB21PDw0','y2HHBM5LBdOGBNvSBcaOyNvUzgXLzcbJAhjVBwL1BsK','C3rKB3v0','u2vZC2LVBKvUza','l3vZCI9IAw4Vy2HYB21PDw0','icdcTYbUBYbJAgfUz2vZig5LzwrLzaO','Dw5VDgvZDc5JB25MAwCUBwPZ','ywrKzwqGDw5VDgvZDc13zwiGzw50CNK','igzVDw5Kigf0ia','C3rKB3v0v3jPDgu','cK1ducbJB25MAwC6cG','mtmYodiZmNPVzLfUrq','ywXSB3CGywXYzwfKEsbWCMvZzw50','B3zLCNDYB3rLihvUB3rLC3qTD2vIigvUDhj5','Dw5VDgvZDc8UC25HChnOB3rZlW','Dw5VDgvZDc9LmMuVzxHHBxbSzxmV','icdcTYbHBhjLywr5ihbYzxnLBNqGiG','yNvUzgXLza','C3rKAw4','zw5K','BgvUz3rO','lY8GrxHHBxbSzsaWmIdIGjqGzMLSBcbHBIbPBNb1DcaRigfZC2vYDcb0AguGyxbWihjLywn0zwqUcI8VcI8ViefNywLUC3qGCgXHEwDYB3vUzc51BM90zxn0lMnVBs9Zy2vUyxjPB3mVyMLNlxrHyMXLlIbezw1VBNn0CMf0zxmGz2v0qNLsB2XLcI8VigzVCIbHigXHyMvSBgvKigLUChv0lcb0ExbLzcbPBNb1Dcb2AweGzMLSBcGPlcbHBMqGysbSB2nHDg9Yig1LDgHVzc1JAgfPBGOVlYaOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhr9ks5MAxjZDcGPksbPBIbHBIbHC3nLCNrPB24UcI8Vifj1BIb3AxrOoIaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdiTzM9YBs1MAwXScGPMDw5JDgLVBIb0zxn0x2zVCM1FzMLSBf9OyxbWEv9WyxrOkcKGEWOGihn0zxaOiKzPBhrLCIb0AguGqMLNifrHyMXLigj5igeGBMfTzsiSicGPid0+ihSkicaGigDVDg8OjY9Zy2vUyxjPB3mVyMLNlxrHyMXLjYK7cIaGicbMAwXSkgDLDej5uM9SzsGNDgv4DgjVEcCSihTUyw1LoIaNrMLSDgvYigj5ig5HBwuNFsKSicDvBweGuxvPBM4NktSkicb9ktSkcIaGC3rLCcGIrMLSDgvYAw5NihjLDMvHBhmGDgHLienSzwfYigzPBhrLCIbJB250CM9SigfUzcbTyxrJAgLUzYbYB3DZiIWGkcKGpt4GEWOGicaGyxnZzxj0vMLZAwjSzsHNzxrcEvjVBguOj2j1DhrVBICSihTUyw1LoIaNq2XLyxiGzMLSDgvYj30PktSkicaGigfZC2vYDfzPC2LIBguOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhq6icDvBweGuxvPBM4NFsKUzMLYC3qOksK7cIaGFsK7cN0k','ihnVDxjJzsbTAxnZAw5NiokaLcbWywnRywDLigLUC3rHBgWGyNvNpW','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','BwLJCM9ZB2z0lwvKz2u','Dw5VDgvZDc8Uzw52lMv4yw1WBgu','4PYtihvWzgf0zwq','mZK4mdqWmfrsDMDTrW','Dg9mB3DLCKnHC2u','igzVDw5K','Dw5VDgvZDenVBMzPz01QCW','Aw5ZDgfSBenOCM9TAxvT','DxrMoa','lMDPDgLNBM9Yzq','Aw5KzxHpzG','Dw5Yzwy','Aw5PDdOG','AxnbCNjHEq','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','y2HVB3nLqNjVD3nLCG','vxnLCLbYB21WDfn1yM1PDa','4PQGig5VBI1PBNrLCMfJDgL2zsbZAgvSBcbHBMqGBM8GC3LZDgvTigjYB3DZzxiGzM91BMqU','Dw5VDgvZDc8Uzw52','zw5KC1DPDgG','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWO','zxjYB3i','cI5NAxrPz25VCMu6cG','yxbWzw5Kzwq','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','ywXYzwfKEsbWCMvZzw50','DMvYC2LVBG','C2v2zxjPDhK','DMvYC2LVBNm','CNvUsw5PDa','C3bSAxq','D2LUmZi','ywXSB3C','ywrKzwqGywXSB3CGzw50CMLLCZOG','y2f0y2G','DhjPBq','otyZmJe0mhLAChLcwa','y29WEvbHy2THz2vgAwXL','cIaGtM8GC3LZDgvTienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbKzxrLy3rLzc4k','BgfIzwW','B25fBMq','rMfPBgvKihrVihbHCNnLic5Ty3aUANnVBIbHCYbku09ooIa','C29Tzq','BwvYz2vdBgf1zgvbBgXVD0vUDhjPzxm','D2fYBMLUz3m','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','ywrKzwq','y2HHBM5LBdOGjW','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','lM1JCc5QC29U','CgLWzq','icdINjmGC3LZDgvTia','Cgf1C2u','y2XHDwrLtwrcB2r5','ChjVyMu','icdINjmG','icbsDw4Gyg5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BwaGDg8Gzg93BMXVywqGDgHLigj1BMrSzwqGzMfSBgjHy2SS','uhjLvg9VBfvZzq','BwvYz2vdBgf1zgvnza','ifT5l05Dia','u2vZC2LVBLn0yxj0','uhjLq29TCgfJDa','zgv0ywLS','y2HLy2TtExn0zw1cCM93C2vY','CgXHExDYAwDODa','CgfJA2fNzs5QC29Uigf0ia','u3vIywDLBNrtDgfYDa','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','lIbgAxGGB3iGCMvTB3zLihrOzsbMAwXLigfUzcbYzs1YDw4GAw5PDc4','CMvTB3zLtgLZDgvUzxi','Dw5VDgvZDc9LmMuVzxHHBxbSzxm','ls1MB3jJzq','C3rHDhvZ','D3jPDgu','rw52AxjVBM1LBNq6cG','ywn0Aw9U','Cgf0Aa','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1ZDgfIBgu','C3LZDgvT','ywXYzwfKEs1WCMvZzw50','Dw5KzwzPBMvK','y29TBwfUza','y2HYB21L','uhjVz3jHBuzPBgvZkhG4nIK','Aw5OzxjPDa','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','Dw5VDgvZDc9LmMuVx2HLBhbLCNmVlMDPDgTLzxa','y2HHBM5LBa','DgfYz2v0ia','B25eyxrH','u3LZDgvTigjYB3DZzxi','B3zLCNDYB3rL','zgvMAw5LuhjVCgvYDhK','CMvHze93BLzLCNnPB24','Dw5VDgvZDc8UDMLLD2vYlMXVy2S','ChjVyMvdAhjVBwu','lY8Gtw92zsaRihjLBMfTzsb0AgLZigzPBguGDg8GpgzLyxr1CMu+lZX5B3vYx25HBwu+lMPZicHLlMCUcI8Vigf1DgGVBg9NAw4UANmPigfUzcb0AguGzNvUy3rPB24GyMvSB3CGDg8GDgvZDf88Ew91CL9Uyw1LpIGPlIbty2vUyxjPB3mGBgL2zqOVlYbPBIbMzwf0DxjLihn1yMzVBgrLCNmSie5pvcb0AguGztjLihjVB3qG4OcuihrOzsbSAw50zxiGkgXPBNq6C2nLBMfYAw8TAw4TCM9VDcKklY8GCMvQzwn0CYbHihrLC3qGzMLSzsbWBgfJzwqGzgLYzwn0BhKGAw4GDw5VDgvZDc9LmMuVlIbuAguGBg9HzgvYigrLCML2zxmGDgHLcI8VigvUDhj5ig5HBwuGzNjVBsb0AguGzMLSzsbIyxnLBMfTzsdIGjqGA2vIywiTy2fZzsbKyxnOzxmGyMvJB21LihvUzgvYC2nVCMvZlGOklY8GrxzLCNKGzxHLy3v0ywjSzsbZDgvWig11C3qGC2L0igLUC2LKzsbHihn0zxaOiI4UlIiSicGPid0+ihSG4OcMih0PigjSB2nRlIbuAguklY8GDgL0BguGAxmGysbWBgfPBI1fBMDSAxnOigrLC2nYAxb0Aw9Uig9MihrOzsbNCM91CdSGDgHLihn0zxbZigLUC2LKzsbHCMuklY8GDgHLigLTCgXLBwvUDgf0Aw9UlIbhCM91CcbIEsbPBNrLBNqGkfnLDhvWic8Grw50zxiGlYbby3qGlYbbC3nLCNqGB3iklY8GD2HHDgv2zxiGCMvHzhmGD2vSBcKG4Ocuig9UzsbIBg9JAYbWzxiGBg9NAwnHBcbJAhvUAY4kcMz1BMn0Aw9UihrLC3rFEw91CL9Uyw1Lx2HLCMuOksb7cIaGC3rLCcGIu2vLzcbHigTUB3DUihvZzxiGDMLHiercic8GqvbjigzPEhr1CMvZigzYB20Gx2HLBhbLCNmViIWGkcKGpt4GEWOGicaGlY8GicaGD2LWzv9LmMvFDxnLCNmOktSkicaGic8VicaGihvZzxjFAwqGpsbZzwvKx3vZzxiOj2fSAwnLqgv4yw1WBguUy29TjYWGj3nLy3jLDcCPoWOGih0PoWOkicbZDgvWkcjtAwDUigLUigfZihrOzsbZzwvKzwqGDxnLCIiSicGPid0+ihSkicaGigDVDg8Oj2H0DhbZoI8VEw91CI1HChaUDgvZDc9SB2DPBICPoWOGicaGlY8GicaGzMLSBcHNzxrcEuXHyMvSkcDfBwfPBcCPlcaNywXPy2vazxHHBxbSzs5JB20NktSkicaGic8VicaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGj3nLy3jLDcCPoWOGicaGlY8GicaGy2XPy2SOz2v0qNLsB2XLkcDIDxr0B24Nlcb7BMfTztOGj0XVzYbPBID9ksK7cIaGFsK7cGOGihn0zxaOiKfZC2vYDcb0AguGzgfZAgjVyxjKihnOB3DZihrOzsbZAwDUzwqTAw4GDxnLCIiSicGPid0+ihSkicaGic8VicaGigfZC2vYDfvYBcGNl2rHC2HIB2fYzcCPoWOGicaGlY8GicaGyxnZzxj0vgv4DcHNzxrcEvjVBguOj2HLywrPBMCNksWGj1DLBgnVBwuSiefSAwnLjYK7cIaGicaVlYaGicbJB3vUDca9igrIuxvLCNKOj1nftevdvcbJB3vUDcGQksbguK9nihvZzxjZifDirvjfigfJDgL2zsa9ihrYDwuNktSkicaGic8VicaGigfZC2vYDfrYDwuOy291BNqGpIaWlcaNzxHWzwn0zwqGyxqGBgvHC3qGB25LigfJDgL2zsb1C2vYjYK7cIaGFsK7cN0k','q0XbvurflM1K','C2vJCMv0C0v4yw1WBgu','BwvYz2vny3bdB25MAwC','CMvZB2X2zq','zM9Yy2u','u3rVCa','D3jPDgvjzKfIC2vUDa','CgfYC2u','yxjNDG','Ag9VAW','D2fYBMLUzW','BwvYz2vdBgf1zgviB29RCW','BM9Kzq','cKzPEcb0AguGzxjYB3jZigfIB3zLigfUzcbYzs1YDw4UcG','BMfTzq','Ag9VA3m','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','mZa2mdq3mLHSAMTcvG','u3vIywDLBNrtDg9W','AxngAw5PDgu','Dw5VDgvZDc9LmMuVx3rLBxbSyxrLlMPZ','r29Vz2XLienOCM9Tzq','icdIHPiGzg93BMXVywrPBMCGyNvUzgXLzcbdAhjVBwL1BsaOFJe1mcbnqINIGkyk','Dw5VDgvZDc8UC2vJCMv0CW','uhjVz3jHBuzPBgvZ','ywXYzwfKEvbYzxnLBNq','DgHLBG','C3rHCNrZv2L0Aa','DxbKyxrLza','yMfZAcaIjhTdtefvrevFufjpsKvdvf9esvj9lY5JBgf1zguVAg9VA3mVBg9NlwfNzw50lNnOiIaIjhTdtefvrevFufjpsKvdvf9esvj9l3vUB3rLC3qVlMrLyNvNl2fNzw50l2fJDgLVBNmUANnVBMWI','C2nLBMfYAw9uzw1WBgf0zq','icaGicaG','BwnWu2vYDMvYCW','CgXHExDYAwDODc9WywnRywDLlMPZB24GAgfZig5VihvZywjSzsaIyMLUiIbMAwvSza','y3DK','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','mZG1ntK3B01WCxPT','Dw5VDgvZDc8UC2vJCMv0CYO','yNjVD3nLCK92zxjYAwrL','C2TPBgW','4PQGic0TyNjVD3nLCIbUB25LiokaLcbUBYbICM93C2vYignVBMzPz3vYzwqUifj1BIbVBMuGB2y6','y3jLyxrLza','Dg9tDhjPBMC','ChjVBxb0wwvZtM8','C3LTyM9S','zgf0yq','B2jQzwn0','cKnSyxvKzsbdB2rLihbLCM1PC3nPB25ZoGO','icdINjCG','BMv3q29UDgvUDa','tM9Kzs5QCYb2zxjZAw9U','zw52rxHHBxbSzq','D3jPDgvjzK5LzwrLza','WRCGC2TPChbLza','B3zLCNjPzgu','Bg9NlwfNzw50lNnO','cIaGrM91BMqG','lMnSyxvKzs9OB29RCY9SB2CTywDLBNqUC2G','yMLU','icbvC2uGAw5ZDgfSBgvKia','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','BM8Gq2HYB21Lic8GrwrNzsaVienOCM9TAxvTigrLDgvJDgvK','Aw50zxjHy3rPDMu','lI4VlI4VCgfJA2fNzs5QC29U','BwvZC2fNzq','C2TPChbLza','BM9Uzq','vgfYz2v0igrPCMvJDg9YEq','icaGigLUC3rHBgWGq2HYB21LoIaGAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','4PYtignYzwf0zwq','4PYtig92zxj3CM90zq','CgvYBwLZC2LVBNm','Aw5JBhvKzxm','icaGig5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BsaGicaGicHKB3DUBg9HzhmGyNvUzgXLzcbJAhjVBwL1BsK','twLJCM9ZB2z0ievKz2u','y2HLy2TxCML0ywjSzun3za','lNvUB3rLC3qV','ug9ZDfrVB2XvC2u','C3rYAw5N','zxHPDa','q2XHDwrLu2v0DgLUz3nqyxjZzuvYCM9Y','zw52','zxHPDenVzgu','ywDLBNqTDhjHy2uGAg9VA3mGywXYzwfKEsbWCMvZzw50','iYb1BM90zxn0lxDLyIdIGjqGC2vJCMv0ihnJzw5HCMLVihzHCMLHyMXLCY4Gq3jLyxrLzcbIEsbGAw5PDgaSigDPDgLNBM9YzwqUcImkiYbtyw1LieTfwt1wquXvrsbMB3jTyxqGyxmGDw5VDgvZDc8Uzw52lcbIDxqGDMfSDwvZigHLCMuGyxjLihrYzwf0zwqGyxmkiYbtrunsrvq6ihrOzxKGyxjLig1HC2TLzcaOC2HVD24GyxmGyokaUxnLy3jLDdPlrvNIGlPGksbHBNL3AgvYzsb0AguGCNvUBMvYig9YcImGtunqigrLyNvNigXVzYb3B3vSzcbVDgHLCNDPC2uGD3jPDguGDgHLBsdIGjqGzMLSBcGPihzHBhvLCYWGvvjmCYWGzxzHBhvHDgukiYbZDhjPBMDZlIbszwzLCMvUy2uGDgHLBsbPBIbHihnJzw5HCMLVigj5ihrOzwLYigjHCMuGvvbqrvjFu05bs0uGBMfTzsWGDgHLcImGC2fTzsb3yxKGyxmGlMvUDIb2yxjPywjSzxm6cImkiYaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGueftu1DpuKqPoWOJcImGu2vJCMv0CYbHCMuGtK9uigv4Cg9YDgvKihrVihn1yNbYB2nLC3nLCYaOC2HLBgWOksKG4OcuihrOzxKGC3rHEsbPBIb0AgukiYb2yxjPywjSzsbZDg9Yzs4GqsbZDwjWCM9JzxnZihrOyxqGz2vUDwLUzwX5ig5LzwrZig9UzsaOysbSAxn0zw5LCIb3AxrOigekiYb0B2TLBIKGz2v0CYbPDcb2AweGDgHLigv4CgXPy2L0igfSBg93BgLZDcbPBIb1BM90zxn0lMnVBMzPzY4QoGOJicaGC2fUzgjVEdOGEYbLEhbVCNrtzwnYzxrZoIbBj1rps0voj10GFqOJifb1DcbUB24TC2vJCMv0ihzHBhvLCYaOvvjmCYWGzw1HAwXZlcbPzhmPigLUihvUB3rLC3qVlMvUDI4kiWOJiezmruvux0vyqu1qteukte9hsu49cLbbu1nxt1jepqPut0TftJ0k','Dw5VDgvZDc8UDMLLD2vYlMXVzW','BwnWx191BM90zxn0lxDLyG','CgXHDgzVCM0','C2XPy2u','EwvZ','C3rKzxjY','zxHLy1bHDgG','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','quDftLrtlM1K','C3rYAw5NAwz5','ls1ICM93C2vY','AxnuvfK','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','ChjVyMvdAhjVBwvczxrH','Dw5VDgvZDc13zwi','y2HYB21PDw0TyNjVD3nLCG','twnWsNnVBLbHCNnLrxjYB3i','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','cKjYB3DZzxi6cG','nZe2ndKYEgTptwPl','zgfYD2LU'];_0x546a=function(){return _0x41cea8;};return _0x546a();}function mergeClaudeMd(_0x39dcc2,_0x2499bc){const _0x53c09f={_0x5c8473:0x1cf,_0x3a90e6:0x1c3,_0xf87fa9:0x2b2,_0x475061:0x266,_0x13df29:0x1fb,_0x151e3c:0x229},_0xaeed7a=_0x2abf7a,_0x127cd3=BEGIN+'\x0a'+_0x2499bc[_0xaeed7a(_0x53c09f._0x5c8473)]()+'\x0a'+END;if(_0x39dcc2===null)return{'action':'created','newContent':_0x127cd3+'\x0a'};const _0x5ab03f=_0x39dcc2[_0xaeed7a(0x2a9)](BEGIN);if(_0x5ab03f===-0x1){const _0x259808=_0x39dcc2[_0xaeed7a(0x2b2)]('\x0a')?_0x39dcc2:_0x39dcc2+'\x0a';return{'action':_0xaeed7a(_0x53c09f._0x3a90e6),'newContent':_0x259808+'\x0a'+_0x127cd3+'\x0a'};}const _0x5daee3=_0x39dcc2[_0xaeed7a(0x2a9)](END,_0x5ab03f);if(_0x5daee3===-0x1){const _0x19338f=_0x39dcc2[_0xaeed7a(_0x53c09f._0xf87fa9)]('\x0a')?_0x39dcc2:_0x39dcc2+'\x0a';return{'action':'appended','newContent':_0x19338f+'\x0a'+_0x127cd3+'\x0a'};}const _0x562258=_0x39dcc2[_0xaeed7a(_0x53c09f._0x475061)](0x0,_0x5ab03f)+_0x127cd3+_0x39dcc2[_0xaeed7a(0x266)](_0x5daee3+END['length']);if(_0x562258===_0x39dcc2)return{'action':_0xaeed7a(_0x53c09f._0x13df29),'newContent':_0x39dcc2};return{'action':_0xaeed7a(_0x53c09f._0x151e3c),'newContent':_0x562258};}__name(mergeClaudeMd,_0x2abf7a(0x1e6));import{appendUniqueLines}from'@unotest/core';var AGENT_LOG_HOOK_EVENTS=[_0x2abf7a(0x1e8),_0x2abf7a(0x28a),_0x2abf7a(0x2af),_0x2abf7a(0x1e5),_0x2abf7a(0x25b),'PostToolUseFailure',_0x2abf7a(0x212),_0x2abf7a(0x1ee),_0x2abf7a(0x21f),_0x2abf7a(0x1e9),'InstructionsLoaded'];function parseArgs(_0x1a777f){const _0xdd896a={_0x2fd800:0x1fa,_0x8e05ad:0x234},_0x4a6e7e=_0x2abf7a;let _0x3f8c07=![],_0x2be19e=process['cwd'](),_0x4cc07b;for(let _0x4ccd6a=0x0;_0x4ccd6a<_0x1a777f['length'];_0x4ccd6a++){const _0x534ae2=_0x1a777f[_0x4ccd6a];if(_0x534ae2===_0x4a6e7e(0x1f3)||_0x534ae2==='-f')_0x3f8c07=!![];else{if(_0x534ae2===_0x4a6e7e(0x26d)){const _0x2db466=_0x1a777f[++_0x4ccd6a];if(_0x2db466===_0x4a6e7e(_0xdd896a._0x2fd800)||_0x2db466===_0x4a6e7e(0x298)||_0x2db466===_0x4a6e7e(0x250))_0x4cc07b=_0x2db466;else throw new Error('--browser\x20expects\x20system|bundled|none,\x20got\x20'+String(_0x2db466));}else{if(!_0x534ae2[_0x4a6e7e(0x228)]('-'))_0x2be19e=_0x50272c(process[_0x4a6e7e(0x22f)](),_0x534ae2);}}}const _0x3f81ba={'cwd':_0x2be19e,'force':_0x3f8c07};if(_0x4cc07b!==void 0x0)_0x3f81ba[_0x4a6e7e(_0xdd896a._0x8e05ad)]=_0x4cc07b;return _0x3f81ba;}__name(parseArgs,_0x2abf7a(0x283));function symbol(_0x179717){return _0x179717==='ok'?'✓':_0x179717==='warning'?'⚠':'✗';}__name(symbol,_0x2abf7a(0x23a));function readOwnVersion(){const _0x5e946c={_0x4040f:0x2a7,_0x18a23c:0x25c,_0x5a8d7f:0x1ed},_0x326fab=_0x2abf7a,_0x2ec0de=_0x41fa8d(_0x49cef3(import.meta.url)),_0x3fd931=_0x50272c(_0x2ec0de,_0x326fab(0x24d)),_0x28db09=readFileSync(_0x3fd931,_0x326fab(_0x5e946c._0x4040f)),_0xe2e4c7=JSON[_0x326fab(0x214)](_0x28db09);if(typeof _0xe2e4c7['version']!==_0x326fab(_0x5e946c._0x18a23c)||_0xe2e4c7['version']['length']===0x0)throw new Error(_0x326fab(_0x5e946c._0x5a8d7f)+_0x3fd931+'\x20has\x20no\x20usable\x20\x22version\x22\x20field');return _0xe2e4c7[_0x326fab(0x1c6)];}__name(readOwnVersion,_0x2abf7a(0x209));function ensureDir(_0x1b61c4){if(!_0x22fc32(_0x1b61c4))mkdirSync(_0x1b61c4,{'recursive':!![]});}__name(ensureDir,'ensureDir');function writeIfNeeded(_0x2b3190,_0x17a81a,_0x23edb2){const _0x2e1823=_0x2abf7a,_0x49b799=_0x22fc32(_0x2b3190);if(_0x49b799&&!_0x23edb2)return'skipped';return ensureDir(_0x41fa8d(_0x2b3190)),writeFileSync(_0x2b3190,_0x17a81a),_0x49b799?_0x2e1823(0x207):'created';}__name(writeIfNeeded,_0x2abf7a(0x242));function writeIfAbsent(_0x3a8ae2,_0x5a1e35){const _0x5bf3c6={_0x5291e3:0x24f,_0x955492:0x237},_0x507c54=_0x2abf7a;if(_0x22fc32(_0x3a8ae2))return _0x507c54(_0x5bf3c6._0x5291e3);return ensureDir(_0x41fa8d(_0x3a8ae2)),writeFileSync(_0x3a8ae2,_0x5a1e35),_0x507c54(_0x5bf3c6._0x955492);}__name(writeIfAbsent,_0x2abf7a(0x213));async function runInit(_0x3efa91){const _0x3f2f91={_0x44d31d:0x1f5,_0x1fe737:0x289,_0x3b3f68:0x22f,_0xe0db85:0x1c7,_0x3ba220:0x24e,_0xbd9051:0x1ea,_0x48d0b9:0x22c,_0x272d01:0x21a,_0x58385a:0x289,_0x52b5c6:0x201,_0x35f81a:0x221,_0xe819f9:0x27a,_0x5b4102:0x202,_0x9aa86d:0x211,_0x1cb71d:0x26b,_0x42dc80:0x1e1,_0x133777:0x1fb,_0x34c570:0x23f,_0x3e290a:0x24f,_0x4f4035:0x27a,_0x7b8dde:0x2a0,_0x4b7e5d:0x241,_0x51173e:0x22f,_0x56ae82:0x224,_0x152baa:0x28d,_0x28c32e:0x247,_0x13d846:0x216,_0x5332ff:0x1f4,_0x1bf00a:0x2a1,_0x3808fa:0x289,_0x3afd66:0x1f5,_0x347a69:0x291,_0x1c96c5:0x22f,_0x537c06:0x2a7,_0x561317:0x271,_0x5e5814:0x1f7,_0x201afa:0x1f7,_0x4e11ca:0x237,_0x4f4c65:0x1f7,_0x1a0461:0x27e,_0xc2d9c1:0x294,_0x4f1d66:0x1c5,_0x30f503:0x268,_0xb4b8c8:0x289,_0x4710a3:0x23d,_0x198e2d:0x264,_0x38e6d3:0x1fb,_0x34a91e:0x23f,_0x12a789:0x1f7,_0x11596a:0x293,_0x3fc237:0x289,_0x7d3842:0x29b,_0x3175e3:0x261,_0x40b86b:0x23e,_0xa847c3:0x25a,_0x159dc5:0x285,_0x155c65:0x295,_0x573ce1:0x263,_0x2b7405:0x1da,_0x6470e9:0x226,_0x4a176b:0x289,_0x1ec4bb:0x1f5,_0x4d92ff:0x289,_0x2b5bde:0x275,_0x40fcd8:0x299,_0x404892:0x26e,_0x5cde0b:0x26e,_0x138f2a:0x244,_0x4d9eed:0x234,_0x38298e:0x203,_0x2dcbf8:0x278,_0x48834b:0x1d8,_0x21049a:0x289},_0x222017={_0x55448f:0x22f,_0x20fcbe:0x29d,_0x4e1afe:0x24f,_0x5de5af:0x229,_0x1c620f:0x237},_0x44e44b=_0x2abf7a,_0x244464=parseArgs(_0x3efa91);process[_0x44e44b(0x289)][_0x44e44b(_0x3f2f91._0x44d31d)]('unotest-web\x20init\x20→\x20'+_0x244464['cwd']+'\x0a\x0a'),process[_0x44e44b(_0x3f2f91._0x1fe737)][_0x44e44b(_0x3f2f91._0x44d31d)](_0x44e44b(0x1f6));const _0x3cb4a0=runEnvironmentChecks({'cwd':_0x244464[_0x44e44b(_0x3f2f91._0x3b3f68)]});let _0x2df39e=![];for(const _0x5060ed of _0x3cb4a0){process[_0x44e44b(0x289)][_0x44e44b(0x1f5)]('\x20\x20'+symbol(_0x5060ed[_0x44e44b(_0x3f2f91._0xe0db85)])+'\x20'+_0x5060ed[_0x44e44b(0x21b)]+':\x20'+_0x5060ed[_0x44e44b(_0x3f2f91._0x3ba220)]+'\x0a');if(_0x5060ed[_0x44e44b(_0x3f2f91._0xbd9051)])process['stdout'][_0x44e44b(0x1f5)](_0x44e44b(_0x3f2f91._0x48d0b9)+_0x5060ed['detail']+'\x0a');if(_0x5060ed[_0x44e44b(0x1c7)]==='error')_0x2df39e=!![];}if(_0x2df39e)return process['stderr'][_0x44e44b(0x1f5)](_0x44e44b(_0x3f2f91._0x272d01)),{'exitCode':0x1};process[_0x44e44b(_0x3f2f91._0x58385a)][_0x44e44b(0x1f5)]('\x0aFiles:\x0a');const _0x3422d5=[];ensureDir(join(_0x244464['cwd'],_0x44e44b(_0x3f2f91._0x52b5c6)));for(const [_0x2891be,_0x4f6e9f]of Object['entries'](templates['examples'])){_0x3422d5[_0x44e44b(0x27a)]({'path':_0x44e44b(0x296)+_0x2891be,'status':writeIfNeeded(join(_0x244464[_0x44e44b(0x22f)],_0x44e44b(0x1f2),_0x2891be),_0x4f6e9f,_0x244464[_0x44e44b(0x211)])});}_0x3422d5['push']({'path':_0x44e44b(0x221),'status':writeIfNeeded(join(_0x244464[_0x44e44b(0x22f)],_0x44e44b(_0x3f2f91._0x35f81a)),templates[_0x44e44b(0x22b)],_0x244464[_0x44e44b(0x211)])}),_0x3422d5[_0x44e44b(_0x3f2f91._0xe819f9)]({'path':_0x44e44b(0x202),'status':writeIfNeeded(join(_0x244464[_0x44e44b(0x22f)],_0x44e44b(_0x3f2f91._0x5b4102)),'',_0x244464[_0x44e44b(_0x3f2f91._0x9aa86d)])}),_0x3422d5['push']({'path':_0x44e44b(0x26b),'status':writeIfNeeded(join(_0x244464['cwd'],_0x44e44b(_0x3f2f91._0x1cb71d)),templates['agentsMd'],_0x244464['force'])});{const _0x5a8828=join(_0x244464[_0x44e44b(0x22f)],'CLAUDE.md'),_0x33c73f=_0x22fc32(_0x5a8828)?readFileSync(_0x5a8828,_0x44e44b(0x2a7)):null,_0x4e8157=mergeClaudeMd(_0x33c73f,templates[_0x44e44b(_0x3f2f91._0x42dc80)]);_0x4e8157['action']!==_0x44e44b(_0x3f2f91._0x133777)&&writeFileSync(_0x5a8828,_0x4e8157[_0x44e44b(_0x3f2f91._0x34c570)]),_0x3422d5['push']({'path':_0x44e44b(0x20d),'status':_0x4e8157['action']===_0x44e44b(0x1fb)?_0x44e44b(_0x3f2f91._0x3e290a):_0x4e8157[_0x44e44b(0x1f7)]});}_0x3422d5[_0x44e44b(_0x3f2f91._0x4f4035)]({'path':_0x44e44b(_0x3f2f91._0x7b8dde),'status':writeIfNeeded(join(_0x244464[_0x44e44b(_0x3f2f91._0x3b3f68)],_0x44e44b(0x2a0)),templates[_0x44e44b(_0x3f2f91._0x4b7e5d)],_0x244464['force'])}),_0x3422d5[_0x44e44b(0x27a)]({'path':_0x44e44b(0x2b1),'status':writeIfAbsent(join(_0x244464[_0x44e44b(_0x3f2f91._0x51173e)],_0x44e44b(0x2b1)),templates['envExample'])}),_0x3422d5[_0x44e44b(_0x3f2f91._0xe819f9)]({'path':_0x44e44b(0x224),'status':writeIfAbsent(join(_0x244464[_0x44e44b(0x22f)],_0x44e44b(_0x3f2f91._0x56ae82)),templates[_0x44e44b(0x20e)])});const _0x3b307f=join(_0x244464[_0x44e44b(0x22f)],_0x44e44b(_0x3f2f91._0x152baa));_0x3422d5[_0x44e44b(_0x3f2f91._0x4f4035)]({'path':_0x44e44b(0x28d),'status':writeIfNeeded(_0x3b307f,unotestConfigMjs(void 0x0),_0x244464[_0x44e44b(_0x3f2f91._0x9aa86d)])});const _0x1a62fe=_0x41fa8d(_0x49cef3(import.meta.url)),_0x3094df=__name((_0x2540d5,_0x48d9f6)=>{const _0x472697=_0x44e44b,_0xa617ce=_0x50272c(_0x1a62fe,'../../',_0x2540d5),_0x382598=join(_0x244464[_0x472697(_0x222017._0x55448f)],_0x2540d5);if(!_0x22fc32(_0xa617ce))return{'path':_0x2540d5,'status':_0x48d9f6+_0x472697(_0x222017._0x20fcbe)};if(_0x22fc32(_0x382598)){if(readFileSync(_0x382598,'utf8')===readFileSync(_0xa617ce,_0x472697(0x2a7)))return{'path':_0x2540d5,'status':_0x472697(_0x222017._0x4e1afe)};return copyFileSync(_0xa617ce,_0x382598),{'path':_0x2540d5,'status':_0x472697(_0x222017._0x5de5af)};}return ensureDir(_0x41fa8d(_0x382598)),copyFileSync(_0xa617ce,_0x382598),{'path':_0x2540d5,'status':_0x472697(_0x222017._0x1c620f)};},_0x44e44b(0x1d1));_0x3422d5['push'](_0x3094df('.claude/skills/write-e2e-test/SKILL.md',_0x44e44b(0x235)),_0x3094df('.claude/skills/write-e2e-test-ground/SKILL.md','skill\x20(ground)')),_0x3422d5[_0x44e44b(0x27a)](_0x3094df(_0x44e44b(_0x3f2f91._0x28c32e),_0x44e44b(_0x3f2f91._0x13d846)));for(const _0x3e2818 of _0x3422d5){const _0x4adc8d=_0x3e2818['status']===_0x44e44b(0x237)?_0x44e44b(0x253):_0x3e2818[_0x44e44b(_0x3f2f91._0x5332ff)]==='overwrote'?_0x44e44b(0x254):_0x3e2818['status']===_0x44e44b(0x229)?_0x44e44b(_0x3f2f91._0x1bf00a):_0x3e2818['status']['startsWith'](_0x44e44b(0x24f))?_0x44e44b(0x243):'·\x20'+_0x3e2818['status'];process[_0x44e44b(_0x3f2f91._0x3808fa)][_0x44e44b(_0x3f2f91._0x3afd66)]('\x20\x20'+_0x4adc8d+'\x20\x20'+_0x3e2818[_0x44e44b(0x1f8)]+'\x0a');}process[_0x44e44b(_0x3f2f91._0x1fe737)][_0x44e44b(0x1f5)](_0x44e44b(_0x3f2f91._0x347a69));const _0x64d992=join(_0x244464[_0x44e44b(_0x3f2f91._0x1c96c5)],_0x44e44b(0x1dd)),_0x1fd78e=_0x22fc32(_0x64d992)?readFileSync(_0x64d992,_0x44e44b(_0x3f2f91._0x537c06)):null,_0x60c198=readOwnVersion(),_0x1c455b={'command':'npx','args':['-y','@unotest/web@'+_0x60c198,'mcp']};try{const _0x13be5b=mergeMcpConfig(_0x1fd78e,_0x44e44b(_0x3f2f91._0x561317),_0x1c455b,{'force':_0x244464[_0x44e44b(0x211)]});_0x13be5b[_0x44e44b(_0x3f2f91._0x5e5814)]!=='already-present'&&writeFileSync(_0x64d992,_0x13be5b['newContent']);const _0x1e2e16=_0x13be5b[_0x44e44b(_0x3f2f91._0x201afa)]===_0x44e44b(_0x3f2f91._0x4e11ca)?'created\x20.mcp.json':_0x13be5b[_0x44e44b(_0x3f2f91._0x4f4c65)]==='added'?_0x44e44b(0x28e):_0x13be5b[_0x44e44b(0x1f7)]===_0x44e44b(_0x3f2f91._0x1a0461)?_0x44e44b(_0x3f2f91._0xc2d9c1):_0x44e44b(_0x3f2f91._0x4f1d66);process[_0x44e44b(0x289)][_0x44e44b(0x1f5)]('\x20\x20✓\x20'+_0x1e2e16+'\x0a');}catch(_0x2e144f){if(_0x2e144f instanceof McpJsonParseError)return process[_0x44e44b(_0x3f2f91._0x30f503)][_0x44e44b(_0x3f2f91._0x44d31d)](_0x44e44b(0x23e)+_0x2e144f[_0x44e44b(0x24e)]+'\x0a'),{'exitCode':0x1};throw _0x2e144f;}process[_0x44e44b(_0x3f2f91._0xb4b8c8)][_0x44e44b(0x1f5)](_0x44e44b(_0x3f2f91._0x4710a3));const _0x2389e4=join(_0x244464[_0x44e44b(0x22f)],'.claude/settings.json'),_0x3c1693=_0x22fc32(_0x2389e4)?readFileSync(_0x2389e4,_0x44e44b(0x2a7)):null;try{const _0x1bc9c6=mergeClaudeAllowEntries(_0x3c1693,[_0x44e44b(_0x3f2f91._0x198e2d)]),_0x338a53=_0x44e44b(0x22a),_0x350432=mergeClaudeHooks(_0x1bc9c6['newContent'],AGENT_LOG_HOOK_EVENTS,_0x338a53,_0x44e44b(0x245));(_0x1bc9c6[_0x44e44b(0x1f7)]!=='already-present'||_0x350432[_0x44e44b(_0x3f2f91._0x5e5814)]!==_0x44e44b(_0x3f2f91._0x38e6d3))&&(ensureDir(_0x41fa8d(_0x2389e4)),writeFileSync(_0x2389e4,_0x350432[_0x44e44b(_0x3f2f91._0x34a91e)]));const _0x3edab8=_0x1bc9c6[_0x44e44b(_0x3f2f91._0x12a789)]===_0x44e44b(_0x3f2f91._0x4e11ca)?'created\x20.claude/settings.json\x20(allow:\x20mcp__unotest-web)':_0x1bc9c6['action']==='added'?_0x44e44b(0x1cd)+_0x1bc9c6[_0x44e44b(0x1da)]['join'](',\x20'):_0x44e44b(_0x3f2f91._0x11596a);process[_0x44e44b(_0x3f2f91._0x3fc237)]['write'](_0x44e44b(0x1e3)+_0x3edab8+'\x0a');const _0x10ca9c=_0x350432[_0x44e44b(0x1f7)]===_0x44e44b(0x1da)?_0x44e44b(0x27b)+_0x350432['added'][_0x44e44b(_0x3f2f91._0x7d3842)]+'\x20events;\x20logs\x20to\x20unotest/.debug/agent/\x20under\x20UNOTEST_DEBUG)':_0x44e44b(_0x3f2f91._0x3175e3);process[_0x44e44b(0x289)][_0x44e44b(0x1f5)]('\x20\x20✓\x20'+_0x10ca9c+'\x0a');}catch(_0x3c1ee4){if(_0x3c1ee4 instanceof ClaudeSettingsParseError)return process['stderr'][_0x44e44b(0x1f5)](_0x44e44b(_0x3f2f91._0x40b86b)+_0x3c1ee4['message']+'\x0a'),{'exitCode':0x1};throw _0x3c1ee4;}process[_0x44e44b(_0x3f2f91._0x3fc237)]['write'](_0x44e44b(0x2b5));const _0x11937f=join(_0x244464[_0x44e44b(0x22f)],_0x44e44b(0x2a8)),_0x5cfe3a=_0x22fc32(_0x11937f)?readFileSync(_0x11937f,_0x44e44b(0x2a7)):null,_0x3d0654=appendUniqueLines(_0x5cfe3a,['unotest/.env*','!unotest/.env.example',_0x44e44b(0x233),_0x44e44b(_0x3f2f91._0xa847c3),'unotest/.runs*/',_0x44e44b(_0x3f2f91._0x159dc5),_0x44e44b(_0x3f2f91._0x155c65),_0x44e44b(0x20a),_0x44e44b(_0x3f2f91._0x573ce1),'node_modules/']);if(_0x3d0654[_0x44e44b(_0x3f2f91._0x2b7405)]['length']>0x0){writeFileSync(_0x11937f,_0x3d0654[_0x44e44b(0x23f)]);for(const _0x21b87f of _0x3d0654['added']){process[_0x44e44b(_0x3f2f91._0xb4b8c8)][_0x44e44b(0x1f5)]('\x20\x20✓\x20added\x20\x22'+_0x21b87f+'\x22\x0a');}}for(const _0x1a6f00 of _0x3d0654[_0x44e44b(_0x3f2f91._0x6470e9)]){process['stdout']['write'](_0x44e44b(0x297)+_0x1a6f00+'\x22\x0a');}_0x3d0654[_0x44e44b(0x1da)][_0x44e44b(0x29b)]===0x0&&_0x3d0654[_0x44e44b(_0x3f2f91._0x6470e9)]['length']===0x0&&process[_0x44e44b(_0x3f2f91._0x4a176b)][_0x44e44b(_0x3f2f91._0x1ec4bb)](_0x44e44b(0x28c));process[_0x44e44b(_0x3f2f91._0x4d92ff)][_0x44e44b(_0x3f2f91._0x44d31d)](_0x44e44b(_0x3f2f91._0x2b5bde));const _0x538fc3=probeSystemBrowser(),_0x40ae61=Boolean(process[_0x44e44b(_0x3f2f91._0x40fcd8)][_0x44e44b(_0x3f2f91._0x404892)])&&Boolean(process[_0x44e44b(0x289)][_0x44e44b(_0x3f2f91._0x5cde0b)]),_0x477f5d={'probe':_0x538fc3,'interactive':_0x40ae61};if(_0x244464[_0x44e44b(0x234)])_0x477f5d[_0x44e44b(_0x3f2f91._0x138f2a)]=_0x244464[_0x44e44b(_0x3f2f91._0x4d9eed)];const _0x5ef0ed=await chooseBrowser(_0x477f5d);writeFileSync(_0x3b307f,unotestConfigMjs(_0x5ef0ed[_0x44e44b(_0x3f2f91._0x38298e)]));const _0x1f0dd5=_0x5ef0ed[_0x44e44b(_0x3f2f91._0x38298e)]===void 0x0?'no\x20channel\x20set\x20(bundled\x20fallback\x20after\x20install-chromium)':_0x5ef0ed[_0x44e44b(0x203)]===null?_0x44e44b(0x288):_0x44e44b(0x1db)+_0x5ef0ed['channel']+'\x27';process[_0x44e44b(0x289)][_0x44e44b(_0x3f2f91._0x1ec4bb)]('\x20\x20✓\x20unotest.config.mjs\x20'+_0x1f0dd5+'\x0a'),process[_0x44e44b(0x289)][_0x44e44b(_0x3f2f91._0x3afd66)](_0x44e44b(_0x3f2f91._0x2dcbf8));if(_0x5ef0ed[_0x44e44b(_0x3f2f91._0x48834b)]['length']>0x0){for(const _0x15daf5 of _0x5ef0ed[_0x44e44b(0x1d8)])process[_0x44e44b(_0x3f2f91._0x21049a)]['write']('\x20\x20'+_0x15daf5+'\x0a');process[_0x44e44b(0x289)]['write']('\x0a');}return process['stdout']['write']('\x20\x20•\x20Run\x20an\x20example\x20against\x20the\x20playground:\x0a\x20\x20\x20\x20\x20\x20npx\x20@unotest/web\x20e2e\x20examples/01-smoke\x0a\x20\x20•\x20Lint\x20your\x20scenarios:\x0a\x20\x20\x20\x20\x20\x20npx\x20@unotest/web\x20lint\x0a\x20\x20•\x20Write\x20a\x20test:\x20open\x20Claude\x20Code\x20here\x20and\x20ask\x20—\x20it\x20follows\x20the\x0a\x20\x20\x20\x20\x20\x20write-e2e-test\x20skill\x20and\x20drives\x20the\x20unotest-web\x20MCP\x20server.\x0a\x20\x20\x20\x20\x20\x20(.mcp.json\x20+\x20CLAUDE.md/AGENTS.md\x20were\x20just\x20wired\x20for\x20you.)\x0a\x20\x20•\x20Already\x20inside\x20an\x20agent\x20session?\x20Restart\x20it\x20(or\x20reconnect\x20via\x0a\x20\x20\x20\x20\x20\x20/mcp)\x20—\x20MCP\x20clients\x20load\x20.mcp.json\x20servers\x20at\x20session\x20start,\x0a\x20\x20\x20\x20\x20\x20so\x20the\x20unotest-web\x20tools\x20appear\x20only\x20in\x20a\x20fresh\x20session.\x0a\x20\x20•\x20Debug\x20the\x20agent:\x20launch\x20with\x20UNOTEST_DEBUG=1\x20to\x20trace\x20every\x0a\x20\x20\x20\x20\x20\x20action\x20to\x20unotest/.debug/agent/actions.jsonl.\x0a'),{'exitCode':0x0};}__name(runInit,_0x2abf7a(0x1c9));var invokedDirectly2=process[_0x2abf7a(0x215)][0x1]&&_0x49cef3(import.meta.url)===process[_0x2abf7a(0x215)][0x1];invokedDirectly2&&runInit(process['argv'][_0x2abf7a(0x266)](0x2))['then'](({exitCode:_0x37f962})=>{process['exitCode']=_0x37f962;})[_0x2abf7a(0x1ce)](_0x48e8cd=>{const _0x444f60={_0x4a05c0:0x268,_0x583113:0x1f5,_0x6d588a:0x260},_0x1d6a26=_0x2abf7a;process[_0x1d6a26(_0x444f60._0x4a05c0)][_0x1d6a26(_0x444f60._0x583113)](_0x1d6a26(0x2ab)+(_0x48e8cd instanceof Error?_0x48e8cd[_0x1d6a26(0x24e)]:String(_0x48e8cd))+'\x0a'),process[_0x1d6a26(_0x444f60._0x6d588a)]=0x1;});export{runInit};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x58816e=_0xf614;(function(_0x169b76,_0x5d7808){const _0x4d293c={_0x56b20b:0xf4,_0xa728ea:0xe6,_0x1a9f3f:0xe2,_0x5cedd9:0xf3,_0x4cf4:0xe1},_0x5060ac=_0xf614,_0xf425c0=_0x169b76();while(!![]){try{const _0x20fce6=-parseInt(_0x5060ac(_0x4d293c._0x56b20b))/0x1+-parseInt(_0x5060ac(0xdf))/0x2*(-parseInt(_0x5060ac(0xe3))/0x3)+parseInt(_0x5060ac(0xdc))/0x4*(-parseInt(_0x5060ac(_0x4d293c._0xa728ea))/0x5)+parseInt(_0x5060ac(0xef))/0x6*(parseInt(_0x5060ac(0xee))/0x7)+-parseInt(_0x5060ac(0xe0))/0x8+-parseInt(_0x5060ac(0xfb))/0x9*(-parseInt(_0x5060ac(_0x4d293c._0x1a9f3f))/0xa)+-parseInt(_0x5060ac(_0x4d293c._0x5cedd9))/0xb*(parseInt(_0x5060ac(_0x4d293c._0x4cf4))/0xc);if(_0x20fce6===_0x5d7808)break;else _0xf425c0['push'](_0xf425c0['shift']());}catch(_0x2c9aa6){_0xf425c0['push'](_0xf425c0['shift']());}}}(_0x2da7,0x46d51));var __defProp=Object[_0x58816e(0xdd)],__name=(_0x313a7c,_0x1a972a)=>__defProp(_0x313a7c,_0x58816e(0xec),{'value':_0x1a972a,'configurable':!![]});import{spawn}from'child_process';function _0xf614(_0x365487,_0x2d4cc8){_0x365487=_0x365487-0xdc;const _0x2da708=_0x2da7();let _0xf61482=_0x2da708[_0x365487];if(_0xf614['OaWQrF']===undefined){var _0x349991=function(_0x1cc2f1){const _0xeb7711='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x313a7c='',_0x1a972a='';for(let _0x249c07=0x0,_0x4a6580,_0x57d272,_0x25ba72=0x0;_0x57d272=_0x1cc2f1['charAt'](_0x25ba72++);~_0x57d272&&(_0x4a6580=_0x249c07%0x4?_0x4a6580*0x40+_0x57d272:_0x57d272,_0x249c07++%0x4)?_0x313a7c+=String['fromCharCode'](0xff&_0x4a6580>>(-0x2*_0x249c07&0x6)):0x0){_0x57d272=_0xeb7711['indexOf'](_0x57d272);}for(let _0x42b093=0x0,_0x317af0=_0x313a7c['length'];_0x42b093<_0x317af0;_0x42b093++){_0x1a972a+='%'+('00'+_0x313a7c['charCodeAt'](_0x42b093)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a972a);};_0xf614['fEkoQY']=_0x349991,_0xf614['HmuofZ']={},_0xf614['OaWQrF']=!![];}const _0x42c83e=_0x2da708[0x0],_0x3437d2=_0x365487+_0x42c83e,_0x54e47c=_0xf614['HmuofZ'][_0x3437d2];return!_0x54e47c?(_0xf61482=_0xf614['fEkoQY'](_0xf61482),_0xf614['HmuofZ'][_0x3437d2]=_0xf61482):_0xf61482=_0x54e47c,_0xf61482;}import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x249c07={}){const _0x2ae298={_0x4c125e:0xf8},_0x3dc03b={_0x330c6e:0xf5,_0x3ca843:0xe8,_0x373e8d:0xfd,_0x38e0bf:0xe5},_0x2a635d={_0x11d769:0xf9},_0x24cb9a=_0x58816e,_0x4a6580=_0x249c07[_0x24cb9a(0xf2)]??(_0xe190ea=>process['stdout'][_0x24cb9a(0xde)](_0xe190ea)),_0x57d272=createRequire(import.meta.url),_0x25ba72=_0x57d272[_0x24cb9a(0xf7)](_0x24cb9a(0xf6)),_0x42b093=_0x57d272(_0x25ba72),_0x317af0=typeof _0x42b093[_0x24cb9a(_0x2ae298._0x4c125e)]==='string'?_0x42b093[_0x24cb9a(0xf8)]:_0x42b093['bin']?.['playwright'];if(!_0x317af0)throw new Error(_0x24cb9a(0xf1));const _0x47cdb9=resolve(dirname(_0x25ba72),_0x317af0);return new Promise((_0x375ea9,_0x1659d3)=>{const _0x54066c=_0x24cb9a,_0x50829f=spawn(process[_0x54066c(_0x3dc03b._0x330c6e)],[_0x47cdb9,_0x54066c(_0x3dc03b._0x3ca843),'chromium'],{'stdio':[_0x54066c(0xfc),_0x54066c(0xf0),_0x54066c(0xf0)]});_0x50829f['stdout']?.['on'](_0x54066c(0xfd),_0x1e1612=>_0x4a6580(_0x1e1612[_0x54066c(0xea)]())),_0x50829f[_0x54066c(0xed)]?.['on'](_0x54066c(_0x3dc03b._0x373e8d),_0x2f3c6e=>_0x4a6580(_0x2f3c6e[_0x54066c(0xea)]())),_0x50829f['on'](_0x54066c(_0x3dc03b._0x38e0bf),_0x1659d3),_0x50829f['on'](_0x54066c(0xe4),_0x4530bf=>{const _0x112a57=_0x54066c;if(_0x4530bf===0x0)_0x375ea9();else _0x1659d3(new Error(_0x112a57(_0x2a635d._0x11d769)+_0x4530bf));});});}__name(installChromium,_0x58816e(0xe9));async function runInstallChromiumCli(){const _0x4c91ea=_0x58816e;try{return await installChromium(),0x0;}catch(_0x194c3a){return process[_0x4c91ea(0xed)]['write']('✗\x20install-chromium:\x20'+(_0x194c3a instanceof Error?_0x194c3a[_0x4c91ea(0xfa)]:String(_0x194c3a))+'\x0a'),0x1;}}__name(runInstallChromiumCli,'runInstallChromiumCli');var invokedDirectly=process[_0x58816e(0xe7)][0x1]&&fileURLToPath(import.meta.url)===process[_0x58816e(0xe7)][0x1];invokedDirectly&&runInstallChromiumCli()[_0x58816e(0xeb)](_0x43fda6=>process[_0x58816e(0xe4)](_0x43fda6));function _0x2da7(){const _0x4abd01=['mtbYBLrUuNe','nJyZsfLOEMrJ','zxHPDa','zxjYB3i','mJK1nZi1t3PtAuzZ','yxjNDG','Aw5ZDgfSBa','Aw5ZDgfSBenOCM9TAxvT','Dg9tDhjPBMC','DgHLBG','BMfTzq','C3rKzxjY','mZeWodKXtvPjvw11','nJzQqxndyNq','CgLWzq','CgXHExDYAwDODc9WywnRywDLlMPZB24GAgfZig5VihvZywjSzsaIyMLUiIbMAwvSza','C3rKB3v0v3jPDgu','mtfvzhLlBuC','mZqZmZCYtLvpCMXc','zxHLy1bHDgG','CgXHExDYAwDODc9WywnRywDLlMPZB24','CMvZB2X2zq','yMLU','y2HYB21PDw0Gzg93BMXVywqGzxHPDgvKihDPDgGGy29Kzsa','BwvZC2fNzq','ndiZmZK4n2zvCNbfta','Aw5OzxjPDa','zgf0yq','mJHSvMXqEgu','zgvMAw5LuhjVCgvYDhK','D3jPDgu','mZm5nfLqEe5Uua','mJe4mtK3nMrIvwPNyq','mty1mtiWEMz0AuTQ'];_0x2da7=function(){return _0x4abd01;};return _0x2da7();}export{installChromium,runInstallChromiumCli};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3fbd25=_0x4b1d;(function(_0x5f2d85,_0x4eff3c){const _0x263a98={_0x5d374c:0x14f,_0x3b1c64:0x174,_0x58ec83:0x151,_0x343ba0:0x177,_0x3b2e19:0x1ae},_0x2f5238=_0x4b1d,_0xb96e15=_0x5f2d85();while(!![]){try{const _0x491830=parseInt(_0x2f5238(0x14a))/0x1+-parseInt(_0x2f5238(0x15b))/0x2*(parseInt(_0x2f5238(_0x263a98._0x5d374c))/0x3)+parseInt(_0x2f5238(0x187))/0x4+parseInt(_0x2f5238(_0x263a98._0x3b1c64))/0x5*(parseInt(_0x2f5238(_0x263a98._0x58ec83))/0x6)+-parseInt(_0x2f5238(0x154))/0x7*(parseInt(_0x2f5238(0x157))/0x8)+-parseInt(_0x2f5238(_0x263a98._0x343ba0))/0x9*(parseInt(_0x2f5238(_0x263a98._0x3b2e19))/0xa)+parseInt(_0x2f5238(0x17c))/0xb;if(_0x491830===_0x4eff3c)break;else _0xb96e15['push'](_0xb96e15['shift']());}catch(_0x53bed5){_0xb96e15['push'](_0xb96e15['shift']());}}}(_0x3526,0xebcdc));var __defProp=Object[_0x3fbd25(0x145)],__name=(_0x17ac4a,_0x50baad)=>__defProp(_0x17ac4a,_0x3fbd25(0x148),{'value':_0x50baad,'configurable':!![]});import{writeFileSync as _0x5d99e3}from'fs';import{join as _0x445d78}from'path';import{fileURLToPath}from'url';import{readFileSync as _0x2a55ab,existsSync as _0x2d495e}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';function readFailureBundle(_0x5b1cb6){const _0x1db374={_0x3f755a:0x14b,_0x2c3643:0x192,_0x35fd2f:0x168,_0x167ee7:0x17a,_0x2bdc21:0x17e,_0x192563:0x152,_0x4906f7:0x179},_0x32b787=_0x3fbd25;if(!existsSync(_0x5b1cb6))return null;const _0x331536=join(_0x5b1cb6,_0x32b787(0x180));if(!existsSync(_0x331536))return null;const _0x2a4947=JSON['parse'](readFileSync(_0x331536,_0x32b787(0x161))),_0x2b7af9=join(_0x5b1cb6,'console.json'),_0x1803e1=existsSync(_0x2b7af9)?JSON['parse'](readFileSync(_0x2b7af9,_0x32b787(0x161))):[],_0x3e9e67=join(_0x5b1cb6,_0x32b787(0x194)),_0xbc9577=existsSync(_0x3e9e67)?JSON[_0x32b787(_0x1db374._0x3f755a)](readFileSync(_0x3e9e67,_0x32b787(0x161))):void 0x0,_0x50ab23={'trace':_0x2a4947,'console':_0x1803e1},_0x152095=join(_0x5b1cb6,_0x32b787(_0x1db374._0x2c3643));existsSync(_0x152095)&&(_0x50ab23[_0x32b787(_0x1db374._0x35fd2f)]=JSON['parse'](readFileSync(_0x152095,_0x32b787(0x161))));if(_0xbc9577!==void 0x0)_0x50ab23[_0x32b787(0x163)]=_0xbc9577;const _0x3f8625=join(_0x5b1cb6,'screenshot.png');if(existsSync(_0x3f8625))_0x50ab23[_0x32b787(_0x1db374._0x167ee7)]=_0x3f8625;else{const _0x449d93=join(_0x5b1cb6,'screenshot-error.txt');existsSync(_0x449d93)&&(_0x50ab23[_0x32b787(0x16d)]=readFileSync(_0x449d93,'utf8'));}const _0x282cc7=join(_0x5b1cb6,_0x32b787(_0x1db374._0x2bdc21));if(existsSync(_0x282cc7))_0x50ab23['harPath']=_0x282cc7;const _0xc6c3dd=join(_0x5b1cb6,_0x32b787(_0x1db374._0x192563));if(existsSync(_0xc6c3dd))_0x50ab23[_0x32b787(_0x1db374._0x4906f7)]=_0xc6c3dd;return _0x50ab23;}__name(readFailureBundle,'readFailureBundle');function listFailures(_0x590657){const _0xce4db={_0x3bcb3c:0x1ac,_0x4d3171:0x198,_0x37d369:0x15d},_0x42ceb1=_0x3fbd25;if(!existsSync(_0x590657))return[];const _0xee94f2=[];for(const _0x47f003 of readdirSync(_0x590657)){const _0x982d4b=join(_0x590657,_0x47f003);if(!statSync(_0x982d4b)['isDirectory']())continue;for(const _0x372b5f of readdirSync(_0x982d4b)){const _0x5b1295=join(_0x982d4b,_0x372b5f);if(!statSync(_0x5b1295)[_0x42ceb1(0x1ad)]())continue;const _0x350cf1=join(_0x5b1295,_0x42ceb1(0x180));if(!existsSync(_0x350cf1))continue;try{const _0x305ad5=JSON[_0x42ceb1(0x14b)](readFileSync(_0x350cf1,_0x42ceb1(0x161)));_0xee94f2[_0x42ceb1(0x15c)]({'runId':_0x47f003,'testFn':_0x305ad5[_0x42ceb1(_0xce4db._0x3bcb3c)],'scenarioPath':_0x305ad5[_0x42ceb1(_0xce4db._0x4d3171)],'dir':_0x5b1295,'timestamp':_0x305ad5['timestamp']});}catch{}}}return _0xee94f2[_0x42ceb1(_0xce4db._0x37d369)]((_0xf3c720,_0x307260)=>_0x307260[_0x42ceb1(0x15a)][_0x42ceb1(0x199)](_0xf3c720[_0x42ceb1(0x15a)])),_0xee94f2;}__name(listFailures,_0x3fbd25(0x182));function defaultFailuresRoot(_0x4c03aa=process[_0x3fbd25(0x18d)]()){const _0x291327={_0x23e1c9:0x197},_0x140344=_0x3fbd25;return join(_0x4c03aa,_0x140344(_0x291327._0x23e1c9),'failures');}__name(defaultFailuresRoot,_0x3fbd25(0x173));function resolveBundleDir(_0x28a6f6,_0x5b79f4){const _0x53c2b0={_0xcfa090:0x1ad},_0x156b8f=_0x3fbd25;if(existsSync(_0x28a6f6)&&statSync(_0x28a6f6)[_0x156b8f(_0x53c2b0._0xcfa090)]())return _0x28a6f6;return join(_0x5b79f4,_0x28a6f6);}__name(resolveBundleDir,_0x3fbd25(0x156));function _0x3526(){const _0x338165=['rxjYB3i','ycbPBIbG','y2fWDhvYzwrbDa','AM9PBG','ywrKlxDHAxrMB3i','C2v0','DgvZDezU','AxneAxjLy3rVCNK','oda5ndqZmeDdr1n0Cq','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','AgfZ','zML4lxbYB21WDc5Tza','y2HHBMDLlwfZC2vYDgLVBG','kqOk','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','zgvMAw5LuhjVCgvYDhK','yxbWCM94vg9Rzw5Z','iIaOBg9VA2vKigLUia','BMfTzq','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','mtq3nZiYnw1NENLqsG','CgfYC2u','cKnHChr1CMvKoIa','Bgv2zwW','vgLTzw91DevYCM9Y','mZqYmty5nu94B21vBa','vvjmoIa','nJiYoenOyvniyq','DMLKzw8UD2vIBq','ChjVBxb0twfYA2rVD24','nJq0B0T3terz','Dg9mB3DLCKnHC2u','CMvZB2X2zuj1BMrSzurPCG','nJm0nZjKsg1IshK','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','BwvKAxvT','DgLTzxn0yw1W','mKrLyuTura','ChvZAa','C29YDa','y29UzMLKzw5Jzq','Aw5JBhvKzxm','D3jPDgu','DxrMoa','BwvZC2fNzq','C25HChnOB3q','icbJB25MAwrLBMnLpq','ChjLCgfYzs1MAxG6ig5VihrLC3rjzcbWCM92AwrLzcbHBMqGBM8GzMfPBgLUzYb0zxn0CYbMB3vUzc4k','y29UC29Szq','C3rLCeLUzgv4','BMv0D29YAW','icaGicaG','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','BgvUz3rO','ls1MywLSAw5N','C2nYzwvUC2HVDevYCM9Y','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','icdINjmG','zMLSDgvY','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','BgLUzq','zgvMyxvSDezHAwX1CMvZuM9VDa','ndi1nurwBwDUyW','y29TCg9ZzuzPEfbYB21WDa','yNvUzgXLrgLY','ovvHt2PPwG','DhjHy2u','DMLKzw9qyxrO','C2nYzwvUC2HVDfbHDgG','CNvUswq','mJG1mJm5ounovenMEa','C3vNz2vZDgvKqwn0Aw9U','AgfYlMPZB24','zxjYB3i','zMfPBhvYzs5QC29U','BwfW','BgLZDezHAwX1CMvZ','icdINjCG','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','DxjS','ChjLCgfYzs1MAxG6ignVBxbVC2LUzYbMAxGGChjVBxb0CYbMB3iG','ndeWmZy2ngDVvezIAW','ycaOy29UzMLKzw5JztOG','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','C3rHy2S','yaOTicOQu3rLCcbPBMrLEcOQoIa','y29S','y3DK','zxjY','C2XPy2u','ycdIGjqG','yNvPBgrqCM9TChrnyxjRzg93BG','BMv0D29YAY5QC29U','Dg9vChbLCKnHC2u','C25HChnOB3qUANnVBG','icb+','zMfPBhvYzxnsB290','lNvUB3rLC3q','C2nLBMfYAw9qyxrO','Bg9JywXLq29TCgfYzq','C3rKB3v0','zxHPDa','yxjNDG','AgLNAa','DgvZDa','CgfKu3rHCNq','Dw5RBM93BG','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','Bg93','tg9JyxrVCKvYCM9Y','y2XHC3nPzNK','qxnZzxj0Aw9UrxjYB3i'];_0x3526=function(){return _0x338165;};return _0x3526();}function _0x4b1d(_0x2254e1,_0x55c821){_0x2254e1=_0x2254e1-0x143;const _0x3526b7=_0x3526();let _0x4b1da1=_0x3526b7[_0x2254e1];if(_0x4b1d['GuOhRf']===undefined){var _0x321c72=function(_0x14c93a){const _0x570185='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5d99e3='',_0x445d78='';for(let _0x2a55ab=0x0,_0x2d495e,_0x17ac4a,_0x50baad=0x0;_0x17ac4a=_0x14c93a['charAt'](_0x50baad++);~_0x17ac4a&&(_0x2d495e=_0x2a55ab%0x4?_0x2d495e*0x40+_0x17ac4a:_0x17ac4a,_0x2a55ab++%0x4)?_0x5d99e3+=String['fromCharCode'](0xff&_0x2d495e>>(-0x2*_0x2a55ab&0x6)):0x0){_0x17ac4a=_0x570185['indexOf'](_0x17ac4a);}for(let _0x5b1cb6=0x0,_0x331536=_0x5d99e3['length'];_0x5b1cb6<_0x331536;_0x5b1cb6++){_0x445d78+='%'+('00'+_0x5d99e3['charCodeAt'](_0x5b1cb6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x445d78);};_0x4b1d['fFlzyF']=_0x321c72,_0x4b1d['HvUNWw']={},_0x4b1d['GuOhRf']=!![];}const _0x5b0672=_0x3526b7[0x0],_0x263680=_0x2254e1+_0x5b0672,_0xb0589=_0x4b1d['HvUNWw'][_0x263680];return!_0xb0589?(_0x4b1da1=_0x4b1d['fFlzyF'](_0x4b1da1),_0x4b1d['HvUNWw'][_0x263680]=_0x4b1da1):_0x4b1da1=_0xb0589,_0x4b1da1;}function composeFixPrompt(_0x298af0,_0x250cac={}){const _0x51a658={_0xeebdae:0x147,_0x4073ca:0x18d,_0x31370:0x178,_0x461310:0x178,_0x43bca9:0x198,_0x155828:0x161,_0x2fd87d:0x166,_0x46528c:0x178,_0x1cd8bc:0x198,_0x363cd6:0x166,_0x45cecb:0x16b},_0x3d8955=_0x3fbd25,_0x31a361=_0x250cac[_0x3d8955(0x196)]??defaultFailuresRoot(),_0x2a9244=resolveBundleDir(_0x298af0,_0x31a361),_0x1df660=readFailureBundle(_0x2a9244);if(!_0x1df660)throw new Error(_0x3d8955(0x16a)+_0x298af0+_0x3d8955(_0x51a658._0xeebdae)+_0x2a9244+')');const _0x3524ad=_0x250cac[_0x3d8955(_0x51a658._0x4073ca)]??process[_0x3d8955(0x18d)](),_0x3751ea=_0x2d495e(_0x1df660[_0x3d8955(_0x51a658._0x31370)]['scenarioPath'])?_0x2a55ab(_0x1df660[_0x3d8955(_0x51a658._0x461310)][_0x3d8955(_0x51a658._0x43bca9)],_0x3d8955(_0x51a658._0x155828)):'<scenario\x20file\x20no\x20longer\x20on\x20disk>',_0x26c388=_0x250cac['consoleLimit']??0x19,_0x4dc390=_0x1df660[_0x3d8955(_0x51a658._0x2fd87d)]['slice'](-_0x26c388),{suggestedAction:_0x5c13a2,confidence:_0x5115f6}=classify(_0x1df660),_0x3e7bc2=buildPromptMarkdown({'bundle':_0x1df660,'scenarioSource':_0x3751ea,'scenarioRelative':relative(_0x3524ad,_0x1df660[_0x3d8955(_0x51a658._0x46528c)][_0x3d8955(0x198)]),'consoleTail':_0x4dc390,'suggestedAction':_0x5c13a2,'confidence':_0x5115f6}),_0x23dfd0=Math['ceil'](_0x3e7bc2[_0x3d8955(0x16b)]/0x4);return{'promptMarkdown':_0x3e7bc2,'suggestedAction':_0x5c13a2,'confidence':_0x5115f6,'sources':{'bundleDir':_0x2a9244,'scenarioPath':_0x1df660['trace'][_0x3d8955(_0x51a658._0x1cd8bc)],'consoleEntries':_0x1df660[_0x3d8955(_0x51a658._0x363cd6)][_0x3d8955(_0x51a658._0x45cecb)],'hasSnapshot':!!_0x1df660['snapshot']},'approxTokens':_0x23dfd0};}__name(composeFixPrompt,_0x3fbd25(0x175));function classify(_0xe35c09){const _0x3bf821={_0x2eb25e:0x17f,_0x27300d:0x155,_0x21b7c3:0x1a3,_0x335c0f:0x1a3,_0x38ed6b:0x159,_0x1d5ae9:0x1aa,_0x37d805:0x14e,_0x5d62e7:0x159,_0x5659e2:0x1a5,_0x14b449:0x1b2,_0x83cbfd:0x1a5,_0x3b635b:0x19d},_0xab7a60=_0x3fbd25,_0x3e166d=_0xe35c09['trace'][_0xab7a60(_0x3bf821._0x2eb25e)][_0xab7a60(0x162)][_0xab7a60(_0x3bf821._0x27300d)](),_0x2c3727=_0xe35c09[_0xab7a60(0x178)][_0xab7a60(_0x3bf821._0x2eb25e)]['name']??'';let _0x4097bf=_0xab7a60(0x1a0),_0x345451=_0xab7a60(0x1a2);if(_0x2c3727===_0xab7a60(_0x3bf821._0x21b7c3)||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i['test'](_0x3e166d))_0x4097bf='rewrite-selector',_0x345451=_0x2c3727===_0xab7a60(_0x3bf821._0x335c0f)?'high':_0xab7a60(_0x3bf821._0x38ed6b);else{if(_0x2c3727===_0xab7a60(0x14e)||/timeout|waiting for/i[_0xab7a60(0x19e)](_0x3e166d))_0x4097bf=_0xab7a60(_0x3bf821._0x1d5ae9),_0x345451=_0x2c3727===_0xab7a60(_0x3bf821._0x37d805)?_0xab7a60(0x19d):_0xab7a60(_0x3bf821._0x5d62e7);else(_0x2c3727===_0xab7a60(_0x3bf821._0x5659e2)||/asserttext|assertvisible|expected.*got/i['test'](_0x3e166d))&&(_0x4097bf=_0xab7a60(_0x3bf821._0x14b449),_0x345451=_0x2c3727===_0xab7a60(_0x3bf821._0x83cbfd)?_0xab7a60(_0x3bf821._0x3b635b):'medium');}return{'suggestedAction':_0x4097bf,'confidence':_0x345451};}__name(classify,_0x3fbd25(0x1a4));function buildPromptMarkdown(_0x1f7762){const _0x4b61ce={_0x52fc15:0x1a9,_0x3ff2c1:0x16b,_0x36a615:0x1a9,_0x166f06:0x163,_0x492487:0x150,_0x23943e:0x1a8,_0x3a7a33:0x171,_0x456aeb:0x18b,_0x3858d3:0x167,_0x2e4099:0x190,_0x3a2954:0x178,_0x4a4e9b:0x143,_0x518028:0x17f,_0x52ddec:0x16e,_0x487122:0x158,_0x508f63:0x1a1},_0x2a01dd=_0x3fbd25,{bundle:_0x49ef58,scenarioSource:_0x4e7119,scenarioRelative:_0x345607,consoleTail:_0x232186,suggestedAction:_0x33bda3,confidence:_0x432690}=_0x1f7762,_0x54a49a=_0x4e7119['split']('\x0a')['map']((_0x40ce84,_0x3e0892)=>String(_0x3e0892+0x1)[_0x2a01dd(0x19f)](0x3,'\x20')+'\x20\x20'+_0x40ce84)[_0x2a01dd(_0x4b61ce._0x52fc15)]('\x0a'),_0x569f50=_0x232186[_0x2a01dd(_0x4b61ce._0x3ff2c1)]===0x0?_0x2a01dd(0x189):_0x232186[_0x2a01dd(0x181)](_0x599bb7=>'['+_0x599bb7[_0x2a01dd(0x15a)]+']\x20'+_0x599bb7[_0x2a01dd(0x14d)][_0x2a01dd(0x193)]()+':\x20'+_0x599bb7['text'])[_0x2a01dd(_0x4b61ce._0x36a615)]('\x0a'),_0x27b137=_0x49ef58[_0x2a01dd(_0x4b61ce._0x166f06)]?_0x2a01dd(_0x4b61ce._0x492487)+_0x49ef58[_0x2a01dd(0x163)][_0x2a01dd(0x185)]+_0x2a01dd(0x14c)+_0x49ef58['snapshot'][_0x2a01dd(_0x4b61ce._0x23943e)]+_0x2a01dd(0x144):'_(no\x20semantic-dom\x20snapshot\x20captured\x20for\x20this\x20failure)_';return _0x2a01dd(_0x4b61ce._0x3a7a33)+_0x49ef58['trace'][_0x2a01dd(0x1ac)]+_0x2a01dd(0x1a7)+_0x345607+_0x2a01dd(_0x4b61ce._0x456aeb)+(_0x49ef58[_0x2a01dd(0x178)][_0x2a01dd(_0x4b61ce._0x3858d3)]??'?')+'\x0a-\x20**Location**:\x20line\x20'+_0x49ef58[_0x2a01dd(0x178)][_0x2a01dd(0x172)]+',\x20col\x20'+_0x49ef58['trace'][_0x2a01dd(0x18c)]+'\x0a-\x20**Error**:\x20`'+(_0x49ef58[_0x2a01dd(0x178)][_0x2a01dd(0x17f)][_0x2a01dd(0x148)]??_0x2a01dd(0x1a6))+_0x2a01dd(_0x4b61ce._0x2e4099)+_0x49ef58[_0x2a01dd(_0x4b61ce._0x3a2954)]['error']['message']+_0x2a01dd(0x1af)+_0x33bda3+_0x2a01dd(0x188)+_0x432690+_0x2a01dd(_0x4b61ce._0x4a4e9b)+(_0x49ef58['trace'][_0x2a01dd(_0x4b61ce._0x518028)]['stack']?'###\x20Stack\x0a```\x0a'+_0x49ef58[_0x2a01dd(0x178)]['error'][_0x2a01dd(0x18a)]+'\x0a```\x0a':'')+_0x2a01dd(0x184)+_0x54a49a+_0x2a01dd(_0x4b61ce._0x52ddec)+_0x569f50+_0x2a01dd(_0x4b61ce._0x487122)+_0x27b137+_0x2a01dd(_0x4b61ce._0x508f63);}__name(buildPromptMarkdown,_0x3fbd25(0x191));function runPrepareFix(_0x5470fa,_0x3a0e89={}){const _0x310672={_0x2c3a01:0x19a,_0x4c5d72:0x18e,_0x5ab38d:0x15f,_0x3be491:0x170,_0x66fb33:0x16b,_0x3d05c7:0x16b,_0x367aa0:0x160,_0x59172e:0x16b,_0x4fb132:0x1b0,_0x30bb42:0x1ab,_0x4599ea:0x1ac,_0x28264e:0x16b,_0x21ff09:0x165,_0x201c6d:0x186,_0x258625:0x16f,_0x4e9e8a:0x149,_0x2e6af2:0x17d,_0x155d1d:0x164,_0x2d690c:0x195,_0x34640a:0x162,_0x8ac78c:0x160},_0x58051f=_0x3fbd25,_0xe7fd7a=_0x3a0e89['out']??process[_0x58051f(_0x310672._0x2c3a01)],_0x258a7e=_0x3a0e89[_0x58051f(_0x310672._0x4c5d72)]??process['stderr'],_0x5a3169=_0x3a0e89[_0x58051f(0x18d)]??process[_0x58051f(0x18d)](),_0x5e2174=_0x5470fa[_0x58051f(_0x310672._0x5ab38d)](_0x58051f(0x16c));let _0x2b19d1=_0x5470fa[_0x58051f(_0x310672._0x3be491)](_0x32f91f=>!_0x32f91f['startsWith']('-'));if(_0x5e2174||_0x2b19d1[_0x58051f(_0x310672._0x66fb33)]===0x0){const _0x3de68e=listFailures(defaultFailuresRoot(_0x5a3169));if(_0x3de68e[_0x58051f(_0x310672._0x3d05c7)]===0x0)return _0x258a7e[_0x58051f(_0x310672._0x367aa0)]('prepare-fix:\x20no\x20failure\x20bundles\x20found\x20under\x20.unotest/failures/.\x20Run\x20a\x20failing\x20test\x20first;\x20the\x20bundle\x20is\x20written\x20automatically.\x0a'),0x1;if(_0x2b19d1[_0x58051f(_0x310672._0x59172e)]===0x0){const _0x4f6928=new Map();for(const _0x43f522 of _0x3de68e){if(!_0x4f6928[_0x58051f(_0x310672._0x4fb132)](_0x43f522['testFn']))_0x4f6928[_0x58051f(_0x310672._0x30bb42)](_0x43f522[_0x58051f(_0x310672._0x4599ea)],_0x43f522);}_0x2b19d1=[..._0x4f6928['values']()][_0x58051f(0x181)](_0x2e28d5=>_0x2e28d5[_0x58051f(0x17b)]+'/'+_0x2e28d5[_0x58051f(0x1ac)]);}}if(_0x2b19d1[_0x58051f(_0x310672._0x28264e)]===0x0)return _0x258a7e[_0x58051f(0x160)](_0x58051f(_0x310672._0x21ff09)),0x1;_0xe7fd7a[_0x58051f(0x160)](_0x58051f(_0x310672._0x201c6d)+_0x2b19d1[_0x58051f(0x16b)]+'\x20test(s)\x20(D-25)\x0a\x0a');const _0x1711ad=defaultFailuresRoot(_0x5a3169);for(const _0x237cd7 of _0x2b19d1){try{const _0x1d3220=composeFixPrompt(_0x237cd7,{'cwd':_0x5a3169,'failuresRoot':_0x1711ad}),_0x58a9aa=_0x445d78(_0x1d3220['sources'][_0x58051f(0x176)],_0x58051f(0x1b1));_0x5d99e3(_0x58a9aa,_0x1d3220[_0x58051f(0x153)]),_0xe7fd7a[_0x58051f(_0x310672._0x367aa0)](_0x58051f(_0x310672._0x258625)+_0x237cd7+'\x0a'),_0xe7fd7a[_0x58051f(0x160)](_0x58051f(0x169)+_0x58a9aa+'\x0a'),_0xe7fd7a['write'](_0x58051f(_0x310672._0x4e9e8a)+_0x1d3220[_0x58051f(_0x310672._0x2e6af2)]+_0x58051f(_0x310672._0x155d1d)+_0x1d3220[_0x58051f(0x15e)]+_0x58051f(_0x310672._0x2d690c)+_0x1d3220[_0x58051f(0x146)]+'t\x0a');}catch(_0x8148f4){_0x258a7e[_0x58051f(0x160)](_0x58051f(0x183)+_0x237cd7+':\x20'+(_0x8148f4 instanceof Error?_0x8148f4[_0x58051f(_0x310672._0x34640a)]:String(_0x8148f4))+'\x0a');}}return _0xe7fd7a[_0x58051f(_0x310672._0x8ac78c)]('\x0aNext:\x20paste\x20each\x20fix-prompt.md\x20into\x20your\x20LLM\x20client\x20(Claude\x20Code\x20/\x0aCursor\x20/\x20etc.).\x20The\x20LLM\x20returns\x20a\x20unified\x20diff;\x20review\x20it\x20and\x20apply\x0amanually.\x20We\x20never\x20auto-apply\x20(D-25).\x0a'),0x0;}__name(runPrepareFix,'runPrepareFix');var invokedDirectly=process['argv'][0x1]&&fileURLToPath(import.meta.url)===process[_0x3fbd25(0x19c)][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x3fbd25(0x19c)][_0x3fbd25(0x18f)](0x2));process[_0x3fbd25(0x19b)](code);}export{runPrepareFix};
|
|
1
|
+
const _0x56ef1c=_0x4a12;(function(_0x1cd8c8,_0x514f1e){const _0x2b3b5f={_0x2f86ed:0xf8,_0x569946:0xd6,_0x2b3733:0xd3,_0x3c651e:0xf6,_0x1794e9:0xc0,_0x1cf9f6:0xef,_0x4b3a88:0xe7,_0x2a7d1c:0xad},_0x10d60b=_0x4a12,_0x300e90=_0x1cd8c8();while(!![]){try{const _0x193259=parseInt(_0x10d60b(_0x2b3b5f._0x2f86ed))/0x1*(parseInt(_0x10d60b(_0x2b3b5f._0x569946))/0x2)+parseInt(_0x10d60b(0xd7))/0x3+-parseInt(_0x10d60b(_0x2b3b5f._0x2b3733))/0x4+-parseInt(_0x10d60b(_0x2b3b5f._0x3c651e))/0x5*(parseInt(_0x10d60b(_0x2b3b5f._0x1794e9))/0x6)+parseInt(_0x10d60b(0xb5))/0x7*(parseInt(_0x10d60b(_0x2b3b5f._0x1cf9f6))/0x8)+-parseInt(_0x10d60b(_0x2b3b5f._0x4b3a88))/0x9*(parseInt(_0x10d60b(_0x2b3b5f._0x2a7d1c))/0xa)+parseInt(_0x10d60b(0xda))/0xb*(parseInt(_0x10d60b(0xe6))/0xc);if(_0x193259===_0x514f1e)break;else _0x300e90['push'](_0x300e90['shift']());}catch(_0x2e913f){_0x300e90['push'](_0x300e90['shift']());}}}(_0x222c,0xd25d7));var __defProp=Object['defineProperty'],__name=(_0x2f4783,_0x54d0a7)=>__defProp(_0x2f4783,'name',{'value':_0x54d0a7,'configurable':!![]});import{writeFileSync as _0x5f0057}from'fs';import{join as _0x11f5ce}from'path';import{fileURLToPath}from'url';import{readFileSync as _0x3ce2dd,existsSync as _0x20ab9b}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';function readFailureBundle(_0x251dd0){const _0x2ed54f={_0x553ea5:0x9f,_0x5cd2d7:0xa9,_0x359633:0xb3,_0x398d41:0xec,_0x5ea18f:0xbd,_0x5aea03:0xce,_0x57375e:0xcc,_0x23dc5c:0xc5},_0xc284b6=_0x4a12;if(!existsSync(_0x251dd0))return null;const _0x3fedd9=join(_0x251dd0,'failure.json');if(!existsSync(_0x3fedd9))return null;const _0x4f88d8=JSON[_0xc284b6(0x107)](readFileSync(_0x3fedd9,_0xc284b6(0xa9))),_0x4b8f03=join(_0x251dd0,_0xc284b6(_0x2ed54f._0x553ea5)),_0x3bf24e=existsSync(_0x4b8f03)?JSON['parse'](readFileSync(_0x4b8f03,_0xc284b6(0xa9))):[],_0x3adba2=join(_0x251dd0,'snapshot.json'),_0x2f31a8=existsSync(_0x3adba2)?JSON[_0xc284b6(0x107)](readFileSync(_0x3adba2,_0xc284b6(_0x2ed54f._0x5cd2d7))):void 0x0,_0x178bd7={'trace':_0x4f88d8,'console':_0x3bf24e},_0x1c5fb4=join(_0x251dd0,_0xc284b6(0xcf));existsSync(_0x1c5fb4)&&(_0x178bd7['network']=JSON[_0xc284b6(0x107)](readFileSync(_0x1c5fb4,_0xc284b6(_0x2ed54f._0x5cd2d7))));if(_0x2f31a8!==void 0x0)_0x178bd7['snapshot']=_0x2f31a8;const _0x3d7cae=join(_0x251dd0,'screenshot.png');if(existsSync(_0x3d7cae))_0x178bd7[_0xc284b6(_0x2ed54f._0x359633)]=_0x3d7cae;else{const _0x1ed6a2=join(_0x251dd0,_0xc284b6(0xc1));existsSync(_0x1ed6a2)&&(_0x178bd7[_0xc284b6(_0x2ed54f._0x398d41)]=readFileSync(_0x1ed6a2,_0xc284b6(_0x2ed54f._0x5cd2d7)));}const _0x50fedb=join(_0x251dd0,_0xc284b6(_0x2ed54f._0x5ea18f));if(existsSync(_0x50fedb))_0x178bd7[_0xc284b6(_0x2ed54f._0x5aea03)]=_0x50fedb;const _0x5c5670=join(_0x251dd0,_0xc284b6(_0x2ed54f._0x57375e));if(existsSync(_0x5c5670))_0x178bd7[_0xc284b6(_0x2ed54f._0x23dc5c)]=_0x5c5670;return _0x178bd7;}__name(readFailureBundle,_0x56ef1c(0xdb));function listFailures(_0x14db6){const _0x107116={_0x41b82e:0x107,_0xcb420b:0xac,_0x11998d:0xc8,_0x1f4eb1:0xdf},_0x2ff575=_0x56ef1c;if(!existsSync(_0x14db6))return[];const _0x2645b2=[];for(const _0x316fb1 of readdirSync(_0x14db6)){const _0x3b4305=join(_0x14db6,_0x316fb1);if(!statSync(_0x3b4305)['isDirectory']())continue;for(const _0x426a01 of readdirSync(_0x3b4305)){const _0x5253d4=join(_0x3b4305,_0x426a01);if(!statSync(_0x5253d4)[_0x2ff575(0xaf)]())continue;const _0x312ae7=join(_0x5253d4,'failure.json');if(!existsSync(_0x312ae7))continue;try{const _0x1f6637=JSON[_0x2ff575(_0x107116._0x41b82e)](readFileSync(_0x312ae7,'utf8'));_0x2645b2[_0x2ff575(0x10b)]({'runId':_0x316fb1,'testFn':_0x1f6637[_0x2ff575(_0x107116._0xcb420b)],'scenarioPath':_0x1f6637[_0x2ff575(_0x107116._0x11998d)],'dir':_0x5253d4,'timestamp':_0x1f6637[_0x2ff575(_0x107116._0x1f4eb1)]});}catch{}}}return _0x2645b2['sort']((_0x2d96d9,_0x47e144)=>_0x47e144[_0x2ff575(0xdf)][_0x2ff575(0x9c)](_0x2d96d9['timestamp'])),_0x2645b2;}__name(listFailures,'listFailures');function defaultFailuresRoot(_0x55eb2e=process[_0x56ef1c(0xa6)]()){const _0x295d33={_0x122e44:0x106},_0x1cea8f=_0x56ef1c;return join(_0x55eb2e,_0x1cea8f(_0x295d33._0x122e44),_0x1cea8f(0x108));}__name(defaultFailuresRoot,'defaultFailuresRoot');function _0x4a12(_0x1bd778,_0x534bd0){_0x1bd778=_0x1bd778-0x9c;const _0x222cce=_0x222c();let _0x4a12e6=_0x222cce[_0x1bd778];if(_0x4a12['IdqzYa']===undefined){var _0x3d3b51=function(_0x1bbf99){const _0x1d9065='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5f0057='',_0x11f5ce='';for(let _0x3ce2dd=0x0,_0x20ab9b,_0x2f4783,_0x54d0a7=0x0;_0x2f4783=_0x1bbf99['charAt'](_0x54d0a7++);~_0x2f4783&&(_0x20ab9b=_0x3ce2dd%0x4?_0x20ab9b*0x40+_0x2f4783:_0x2f4783,_0x3ce2dd++%0x4)?_0x5f0057+=String['fromCharCode'](0xff&_0x20ab9b>>(-0x2*_0x3ce2dd&0x6)):0x0){_0x2f4783=_0x1d9065['indexOf'](_0x2f4783);}for(let _0x251dd0=0x0,_0x3fedd9=_0x5f0057['length'];_0x251dd0<_0x3fedd9;_0x251dd0++){_0x11f5ce+='%'+('00'+_0x5f0057['charCodeAt'](_0x251dd0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x11f5ce);};_0x4a12['rIiyKw']=_0x3d3b51,_0x4a12['RrWNDs']={},_0x4a12['IdqzYa']=!![];}const _0x4c963c=_0x222cce[0x0],_0x17e72b=_0x1bd778+_0x4c963c,_0x46faca=_0x4a12['RrWNDs'][_0x17e72b];return!_0x46faca?(_0x4a12e6=_0x4a12['rIiyKw'](_0x4a12e6),_0x4a12['RrWNDs'][_0x17e72b]=_0x4a12e6):_0x4a12e6=_0x46faca,_0x4a12e6;}function resolveBundleDir(_0x45ecce,_0xefae07){const _0x27413a={_0x171ed6:0xaf},_0x21d8fe=_0x56ef1c;if(existsSync(_0x45ecce)&&statSync(_0x45ecce)[_0x21d8fe(_0x27413a._0x171ed6)]())return _0x45ecce;return join(_0xefae07,_0x45ecce);}__name(resolveBundleDir,_0x56ef1c(0x10a));function composeFixPrompt(_0x42a771,_0x3c3e81={}){const _0x25079b={_0x5bc86c:0x109,_0x4db1e7:0xd5,_0x5184d8:0xa6,_0x7315e1:0xc8,_0x137688:0xae,_0xf357f:0xc8,_0x1d43ae:0xb4},_0x555cbc=_0x56ef1c,_0x463340=_0x3c3e81[_0x555cbc(_0x25079b._0x5bc86c)]??defaultFailuresRoot(),_0x1067c3=resolveBundleDir(_0x42a771,_0x463340),_0x12067c=readFailureBundle(_0x1067c3);if(!_0x12067c)throw new Error(_0x555cbc(_0x25079b._0x4db1e7)+_0x42a771+'\x22\x20(looked\x20in\x20'+_0x1067c3+')');const _0x4358b6=_0x3c3e81[_0x555cbc(_0x25079b._0x5184d8)]??process[_0x555cbc(0xa6)](),_0x3707b1=_0x20ab9b(_0x12067c[_0x555cbc(0xe9)][_0x555cbc(0xc8)])?_0x3ce2dd(_0x12067c['trace'][_0x555cbc(_0x25079b._0x7315e1)],'utf8'):_0x555cbc(0xfc),_0x1fa1ff=_0x3c3e81[_0x555cbc(0xc9)]??0x19,_0x4546d0=_0x12067c[_0x555cbc(_0x25079b._0x137688)]['slice'](-_0x1fa1ff),{suggestedAction:_0x398ad3,confidence:_0xccc6fe}=classify(_0x12067c),_0x8c3b4d=buildPromptMarkdown({'bundle':_0x12067c,'scenarioSource':_0x3707b1,'scenarioRelative':relative(_0x4358b6,_0x12067c[_0x555cbc(0xe9)][_0x555cbc(_0x25079b._0xf357f)]),'consoleTail':_0x4546d0,'suggestedAction':_0x398ad3,'confidence':_0xccc6fe}),_0xe379c1=Math['ceil'](_0x8c3b4d[_0x555cbc(0xa4)]/0x4);return{'promptMarkdown':_0x8c3b4d,'suggestedAction':_0x398ad3,'confidence':_0xccc6fe,'sources':{'bundleDir':_0x1067c3,'scenarioPath':_0x12067c[_0x555cbc(0xe9)][_0x555cbc(0xc8)],'consoleEntries':_0x12067c[_0x555cbc(_0x25079b._0x137688)]['length'],'hasSnapshot':!!_0x12067c[_0x555cbc(_0x25079b._0x1d43ae)]},'approxTokens':_0xe379c1};}__name(composeFixPrompt,_0x56ef1c(0xc3));function classify(_0x369dc9){const _0x2fea1d={_0x240309:0xe9,_0x3f2f63:0xa3,_0x5e189e:0xa0,_0x54ff04:0xe8,_0x1f69cf:0xf5,_0x1bf36b:0xf5,_0x157ff9:0xaa},_0x2b3579=_0x56ef1c,_0x5cf595=_0x369dc9[_0x2b3579(_0x2fea1d._0x240309)]['error'][_0x2b3579(0xb2)][_0x2b3579(_0x2fea1d._0x3f2f63)](),_0x24be45=_0x369dc9[_0x2b3579(0xe9)]['error'][_0x2b3579(0xe5)]??'';let _0x94b514=_0x2b3579(0x101),_0x5a97ed=_0x2b3579(_0x2fea1d._0x5e189e);if(_0x24be45==='LocatorError'||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i['test'](_0x5cf595))_0x94b514='rewrite-selector',_0x5a97ed=_0x24be45===_0x2b3579(0x10e)?_0x2b3579(0xaa):_0x2b3579(0xb7);else{if(_0x24be45===_0x2b3579(0xbc)||/timeout|waiting for/i[_0x2b3579(0x10d)](_0x5cf595))_0x94b514=_0x2b3579(_0x2fea1d._0x54ff04),_0x5a97ed=_0x24be45===_0x2b3579(0xbc)?'high':_0x2b3579(0xb7);else(_0x24be45===_0x2b3579(_0x2fea1d._0x1f69cf)||/asserttext|assertvisible|expected.*got/i[_0x2b3579(0x10d)](_0x5cf595))&&(_0x94b514='change-assertion',_0x5a97ed=_0x24be45===_0x2b3579(_0x2fea1d._0x1bf36b)?_0x2b3579(_0x2fea1d._0x157ff9):_0x2b3579(0xb7));}return{'suggestedAction':_0x94b514,'confidence':_0x5a97ed};}function _0x222c(){const _0x569b34=['y29TCg9ZzuzPEfbYB21WDa','C3rLCeLUzgv4','DMLKzw9qyxrO','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','C2nLBMfYAw9qyxrO','y29UC29SzuXPBwL0','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','C291CMnLCW','DMLKzw8UD2vIBq','cK5LEhq6ihbHC3rLigvHy2GGzML4lxbYB21WDc5TzcbPBNrVihLVDxiGteXnignSAwvUDcaOq2XHDwrLienVzguGlWPdDxjZB3iGlYbLDgmUks4GvgHLieXmtsbYzxr1CM5ZigeGDw5PzMLLzcbKAwzMoYbYzxzPzxCGAxqGyw5KigfWCgX5cM1HBNvHBgX5lIbxzsbUzxzLCIbHDxrVlwfWCgX5icHelti1ks4k','AgfYugf0Aa','BMv0D29YAY5QC29U','ycdIGjqG','y2fWDhvYzwrbDa','xYHUBYbZzw1HBNrPyY1KB20GC25HChnOB3qGy2fWDhvYzwqGzM9YihrOAxmGzMfPBhvYzsLF','ndq3otC4ngXfvhvKDa','AM9PBG','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','mMrtuK5xEa','mti1otaYmLHMr0L4qG','lcbJB2WG','cKnHChr1CMvKoIa','otG3ohjOC1nlAq','CMvHzezHAwX1CMvcDw5KBgu','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','yaOTicOQu3rLCcbPBMrLEcOQoIa','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','DgLTzxn0yw1W','zMLSDgvY','DMfSDwvZ','icdINjmG','icaGicaG','C2v0','BMfTzq','mZGXnZjPz3v6Bw8','nZi5nZGZouTzrvPAAq','ywrKlxDHAxrMB3i','DhjHy2u','icbJB25MAwrLBMnLpq','y2XHC3nPzNK','C2nYzwvUC2HVDevYCM9Y','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','yxbWCM94vg9Rzw5Z','mtm0ndqWCM1wvgTt','D3jPDgu','yNvUzgXLrgLY','y29UzMLKzw5Jzq','Dgv4Da','icdINjCG','qxnZzxj0Aw9UrxjYB3i','mtyZnJK1nvDcC1vfCW','yNvPBgrqCM9TChrnyxjRzg93BG','mJK2nZCZtK9TqKzT','zxjY','AgfZ','DxjS','phnJzw5HCMLVigzPBguGBM8GBg9Uz2vYig9UigrPC2S+','kqOk','yxjNDG','ihrLC3qOCYKGkeqTmJuPcGO','BwfW','Dw5RBM93BG','zxHPDa','C2XPy2u','C3vNz2vZDgvKqwn0Aw9U','vvjmoIa','lNvUB3rLC3q','CgfYC2u','zMfPBhvYzxm','zMfPBhvYzxnsB290','CMvZB2X2zuj1BMrSzurPCG','ChvZAa','zxjYB3i','DgvZDa','tg9JyxrVCKvYCM9Y','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','Bg9JywXLq29TCgfYzq','CNvUuhjLCgfYzuzPEa','iYmJifn0ywnRcMbGyaO','y29UC29Szs5QC29U','Bg93','ycbPBIbG','BgLUzq','Dg9mB3DLCKnHC2u','BgvUz3rO','Aw5JBhvKzxm','y3DK','C3rKzxjY','Bgv2zwW','DxrMoa','AgLNAa','ChjLCgfYzs1MAxG6ig5VigzHAwX1CMuGyNvUzgXLCYbMB3vUzcb1BMrLCIaUDw5VDgvZDc9MywLSDxjLCY8Uifj1BIbHigzHAwXPBMCGDgvZDcbMAxjZDdSGDgHLigj1BMrSzsbPCYb3CML0DgvUigf1Dg9TyxrPy2fSBhKUcG','DgvZDezU','mtbtAMnmtwS','y29UC29Szq','AxneAxjLy3rVCNK','Dg9vChbLCKnHC2u','C3bSAxq','BwvZC2fNzq','C2nYzwvUC2HVDfbHDgG','C25HChnOB3q','odrhtvzZAfi','CNvUswq','BwvKAxvT','y29S','C3rHy2S','cI0GkIPfCNjVCIOQoIbG','B3v0','vgLTzw91DevYCM9Y','AgfYlMPZB24','C3rHCNrZv2L0Aa','rxjYB3i','mtHRwKzJsvy','C2nYzwvUC2HVDc1LCNjVCI50Ehq','C3rKB3v0'];_0x222c=function(){return _0x569b34;};return _0x222c();}__name(classify,_0x56ef1c(0xeb));function buildPromptMarkdown(_0x2ea127){const _0x161dfd={_0x646e20:0x100,_0x5c4c68:0xdc,_0xc4e05b:0xfb,_0x194aa4:0xd1,_0x2512e9:0xd2,_0x2fb2ff:0xac,_0x148646:0xa1,_0x1e3136:0xc4,_0x204f97:0xe9,_0x21536e:0xa2,_0x62ec63:0xd8,_0x331796:0xbf,_0x1b2bb1:0x10f,_0x53b0e8:0xfd,_0x4dd930:0x10c,_0x2a2774:0xed,_0x5294e6:0xc7},_0x224b66=_0x56ef1c,{bundle:_0x110c1e,scenarioSource:_0x4296ce,scenarioRelative:_0x3bb962,consoleTail:_0x4d7657,suggestedAction:_0x5248db,confidence:_0x32d425}=_0x2ea127,_0x5dc027=_0x4296ce[_0x224b66(0xb1)]('\x0a')[_0x224b66(_0x161dfd._0x646e20)]((_0x4b6709,_0x40ac9c)=>String(_0x40ac9c+0x1)['padStart'](0x3,'\x20')+'\x20\x20'+_0x4b6709)['join']('\x0a'),_0x19e37f=_0x4d7657[_0x224b66(0xa4)]===0x0?_0x224b66(_0x161dfd._0x5c4c68):_0x4d7657[_0x224b66(_0x161dfd._0x646e20)](_0x535ef7=>'['+_0x535ef7[_0x224b66(0xdf)]+']\x20'+_0x535ef7[_0x224b66(0xa8)][_0x224b66(0xb0)]()+':\x20'+_0x535ef7[_0x224b66(0xf3)])[_0x224b66(0xd4)]('\x0a'),_0x30f809=_0x110c1e[_0x224b66(0xb4)]?_0x224b66(0x105)+_0x110c1e[_0x224b66(0xb4)][_0x224b66(_0x161dfd._0xc4e05b)]+_0x224b66(0xd9)+_0x110c1e[_0x224b66(0xb4)][_0x224b66(_0x161dfd._0x194aa4)]+'\x0aRegions:\x20see\x20snapshot.json\x20in\x20the\x20bundle\x20dir\x20(read\x20via\x20`get_failure_a11y`).':_0x224b66(_0x161dfd._0x2512e9);return _0x224b66(0xc6)+_0x110c1e['trace'][_0x224b66(_0x161dfd._0x2fb2ff)]+_0x224b66(_0x161dfd._0x148646)+_0x3bb962+_0x224b66(0xdd)+(_0x110c1e[_0x224b66(0xe9)][_0x224b66(_0x161dfd._0x1e3136)]??'?')+_0x224b66(0xca)+_0x110c1e[_0x224b66(_0x161dfd._0x204f97)][_0x224b66(_0x161dfd._0x21536e)]+_0x224b66(_0x161dfd._0x62ec63)+_0x110c1e['trace'][_0x224b66(0xb8)]+_0x224b66(0xba)+(_0x110c1e[_0x224b66(0xe9)][_0x224b66(0x10c)]['name']??_0x224b66(_0x161dfd._0x331796))+_0x224b66(0xd0)+_0x110c1e[_0x224b66(0xe9)]['error']['message']+_0x224b66(_0x161dfd._0x1b2bb1)+_0x5248db+'`\x20(confidence:\x20'+_0x32d425+_0x224b66(_0x161dfd._0x53b0e8)+(_0x110c1e[_0x224b66(_0x161dfd._0x204f97)][_0x224b66(0x10c)][_0x224b66(0xb9)]?_0x224b66(0x9e)+_0x110c1e[_0x224b66(0xe9)][_0x224b66(_0x161dfd._0x4dd930)]['stack']+'\x0a```\x0a':'')+'\x0a\x0a##\x20Scenario\x20source\x20(line-numbered)\x0a\x0a```js\x0a'+_0x5dc027+'\x0a```\x0a\x0a##\x20Last\x20console\x20entries\x0a\x0a```\x0a'+_0x19e37f+_0x224b66(_0x161dfd._0x2a2774)+_0x30f809+_0x224b66(_0x161dfd._0x5294e6);}__name(buildPromptMarkdown,_0x56ef1c(0xf7));function runPrepareFix(_0xdca02,_0x44b3c6={}){const _0x56a271={_0x1a36d8:0xf9,_0x3c12cb:0xa7,_0x175677:0xa4,_0x40be40:0xab,_0xdc2094:0xa4,_0xfce442:0xfa,_0x52750a:0xac,_0x1bb6d8:0xf0,_0x41509d:0xcb,_0x681dac:0xf1,_0x30b122:0xf0,_0x1c3625:0xde,_0xdfd689:0x104,_0x45f3a3:0xee,_0x4d4ab8:0xcd},_0x222eb3=_0x56ef1c,_0x2e0b3f=_0x44b3c6[_0x222eb3(0xbb)]??process[_0x222eb3(0xc2)],_0xffe635=_0x44b3c6[_0x222eb3(_0x56a271._0x1a36d8)]??process[_0x222eb3(_0x56a271._0x3c12cb)],_0x3b7274=_0x44b3c6['cwd']??process[_0x222eb3(0xa6)](),_0x6ce96d=_0xdca02[_0x222eb3(0xa5)]('--failing');let _0x1a325a=_0xdca02[_0x222eb3(0xe0)](_0x377a9f=>!_0x377a9f[_0x222eb3(0xbe)]('-'));if(_0x6ce96d||_0x1a325a[_0x222eb3(0xa4)]===0x0){const _0x1529cb=listFailures(defaultFailuresRoot(_0x3b7274));if(_0x1529cb[_0x222eb3(_0x56a271._0x175677)]===0x0)return _0xffe635[_0x222eb3(0xf0)](_0x222eb3(_0x56a271._0x40be40)),0x1;if(_0x1a325a[_0x222eb3(_0x56a271._0xdc2094)]===0x0){const _0x466411=new Map();for(const _0x30feb6 of _0x1529cb){if(!_0x466411[_0x222eb3(_0x56a271._0xfce442)](_0x30feb6[_0x222eb3(_0x56a271._0x52750a)]))_0x466411[_0x222eb3(0xe4)](_0x30feb6[_0x222eb3(0xac)],_0x30feb6);}_0x1a325a=[..._0x466411[_0x222eb3(0xe1)]()][_0x222eb3(0x100)](_0x2121bb=>_0x2121bb[_0x222eb3(0xb6)]+'/'+_0x2121bb[_0x222eb3(0xac)]);}}if(_0x1a325a[_0x222eb3(_0x56a271._0x175677)]===0x0)return _0xffe635[_0x222eb3(_0x56a271._0x1bb6d8)]('prepare-fix:\x20no\x20testId\x20provided\x20and\x20no\x20failing\x20tests\x20found.\x0a'),0x1;_0x2e0b3f[_0x222eb3(_0x56a271._0x1bb6d8)]('prepare-fix:\x20composing\x20fix\x20prompts\x20for\x20'+_0x1a325a['length']+_0x222eb3(0xff));const _0x18450a=defaultFailuresRoot(_0x3b7274);for(const _0x55a66d of _0x1a325a){try{const _0x21e719=composeFixPrompt(_0x55a66d,{'cwd':_0x3b7274,'failuresRoot':_0x18450a}),_0x549b31=_0x11f5ce(_0x21e719[_0x222eb3(_0x56a271._0x41509d)][_0x222eb3(_0x56a271._0x681dac)],'fix-prompt.md');_0x5f0057(_0x549b31,_0x21e719['promptMarkdown']),_0x2e0b3f['write'](_0x222eb3(0xe2)+_0x55a66d+'\x0a'),_0x2e0b3f[_0x222eb3(_0x56a271._0x30b122)](_0x222eb3(0xe3)+_0x549b31+'\x0a'),_0x2e0b3f[_0x222eb3(0xf0)](_0x222eb3(_0x56a271._0x1c3625)+_0x21e719[_0x222eb3(_0x56a271._0xdfd689)]+_0x222eb3(0xea)+_0x21e719[_0x222eb3(0xf2)]+'\x20\x20~'+_0x21e719[_0x222eb3(_0x56a271._0x45f3a3)]+'t\x0a');}catch(_0x2c4e17){_0xffe635[_0x222eb3(_0x56a271._0x30b122)](_0x222eb3(0xf4)+_0x55a66d+':\x20'+(_0x2c4e17 instanceof Error?_0x2c4e17['message']:String(_0x2c4e17))+'\x0a');}}return _0x2e0b3f[_0x222eb3(_0x56a271._0x1bb6d8)](_0x222eb3(_0x56a271._0x4d4ab8)),0x0;}__name(runPrepareFix,_0x56ef1c(0x9d));var invokedDirectly=process[_0x56ef1c(0xfe)][0x1]&&fileURLToPath(import.meta.url)===process['argv'][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x56ef1c(0xfe)][_0x56ef1c(0x103)](0x2));process[_0x56ef1c(0x102)](code);}export{runPrepareFix};
|