@unotest/web 0.47.0 → 0.48.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.
@@ -1 +1 @@
1
- const _0x10f80a=_0x47dc;(function(_0x4ca2d5,_0x469f06){const _0x157bcb={_0x27c7c9:0x212,_0x36d549:0x22b,_0x43814e:0x1e4,_0x17e16c:0x209,_0x314cca:0x1ed,_0x70c73a:0x1fa,_0x15bf3b:0x248,_0x3155ff:0x235,_0x1d762d:0x23b},_0x1960f7=_0x47dc,_0x1a636a=_0x4ca2d5();while(!![]){try{const _0x29c6e7=-parseInt(_0x1960f7(_0x157bcb._0x27c7c9))/0x1*(-parseInt(_0x1960f7(0x22a))/0x2)+-parseInt(_0x1960f7(0x231))/0x3*(parseInt(_0x1960f7(_0x157bcb._0x36d549))/0x4)+-parseInt(_0x1960f7(_0x157bcb._0x43814e))/0x5*(parseInt(_0x1960f7(_0x157bcb._0x17e16c))/0x6)+-parseInt(_0x1960f7(0x1ff))/0x7*(-parseInt(_0x1960f7(0x247))/0x8)+-parseInt(_0x1960f7(_0x157bcb._0x314cca))/0x9*(parseInt(_0x1960f7(_0x157bcb._0x70c73a))/0xa)+parseInt(_0x1960f7(_0x157bcb._0x15bf3b))/0xb*(parseInt(_0x1960f7(_0x157bcb._0x3155ff))/0xc)+-parseInt(_0x1960f7(_0x157bcb._0x1d762d))/0xd;if(_0x29c6e7===_0x469f06)break;else _0x1a636a['push'](_0x1a636a['shift']());}catch(_0x169155){_0x1a636a['push'](_0x1a636a['shift']());}}}(_0x2ecd,0x71589));var __defProp=Object['defineProperty'],__name=(_0x41d07d,_0x3f573e)=>__defProp(_0x41d07d,'name',{'value':_0x3f573e,'configurable':!![]});function _0x2ecd(){const _0x21e7cc=['CMvZB2X2zuj1BMrSzurPCG','zML4lxbYB21WDc5Tza','C2nYzwvUC2HVDc1LCNjVCI50Ehq','Bg9JywXLq29TCgfYzq','yNvUzgXLrgLY','mtKXndG4uwLyvejS','mtfsDMD1wgm','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','AM9PBG','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','C3rLCeLUzgv4','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','C25HChnOB3qUANnVBG','y29UC29Szq','zgvMyxvSDezHAwX1CMvZuM9VDa','BwvKAxvT','DgvZDa','C2XPy2u','zxjYB3i','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','cI0GkIPfCNjVCIOQoIbG','ihrLC3qOCYKGkeqTmJuPcGO','ndi1nJC4mhz3rMH1Bq','icb+','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','ycaOy29UzMLKzw5JztOG','Dg9vChbLCKnHC2u','CNvUswq','AgfYugf0Aa','zw52','nZC5nhfuwhnerG','AxneAxjLy3rVCNK','DgLTzxn0yw1W','icdINjmG','y3DK','C2nLBMfYAw9qyxrO','yxjNDG','y2HHBMDLlwfZC2vYDgLVBG','C25HChnOB3q','cKnHChr1CMvKoIa','Dw5RBM93BG','kqOk','DMLKzw8UD2vIBq','mJyWBuLKywry','DxrMoa','tg9JyxrVCKvYCM9Y','lcbJB2WG','BgLUzq','otfIwK1Svg8','DhjHy2u','C2nYzwvUC2HVDevYCM9Y','CMvHzezHAwX1CMvcDw5KBgu','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','BwfW','BMv0D29YAW','DMLKzw9qyxrO','zMLSDgvY','zxHPDa','nMjdv3risq','ChjLCgfYzs1MAxG6ignVBxbVC2LUzYbMAxGGChjVBxb0CYbMB3iG','AgLNAa','ls1MywLSAw5N','y29UzMLKzw5Jzq','ywrKlxDHAxrMB3i','ChjLCgfYzs1MAxG6ig5VigzHAwX1CMuGyNvUzgXLCYbMB3vUzcb1BMrLCIaUDw5VDgvZDc9MywLSDxjLCY8Uifj1BIbHigzHAwXPBMCGDgvZDcbMAxjZDdSGDgHLigj1BMrSzsbPCYb3CML0DgvUigf1Dg9TyxrPy2fSBhKUcG','DgvZDezU','y29S','mJm2nZm3wuftwe9N','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','y2XHC3nPzNK','Dgv4Da','C2nYzwvUC2HVDc5WBMC','BMv0D29YAY5QC29U','icbJB25MAwrLBMnLpq','phnJzw5HCMLVigzPBguGBM8GBg9Uz2vYig9UigrPC2S+','BgvUz3rO','y2fWDhvYzwrbDa','DxjS','Bg93','C29YDa','BwvZC2fNzq','Aw5JBhvKzxm','ChjVBxb0twfYA2rVD24','ChvZAa','C3rHCNrZv2L0Aa','rxjYB3i','C3rHy2S','CNvUu3rHDgu','icdINjCG','y29UC29Szs5QC29U','vvjmoIa','nhP3zxz2za','ndHszgrLEwq','vgLTzw91DevYCM9Y','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','CNvUuhjLCgfYzuzPEa','zMfPBhvYzxnsB290','mZa2otLvqLnjzNG','qxnZzxj0Aw9UrxjYB3i','y2vPBa','Dg9mB3DLCKnHC2u','mtaYotu1mdHIr2Piueq','C291CMnLCW','AgfYlMPZB24','ChjLCgfYzs1MAxG6ig5VihrLC3rjzcbWCM92AwrLzcbHBMqGBM8GzMfPBgLUzYb0zxn0CYbMB3vUzc4k','ycbPBIbG','C2v0','mJm2mty4ngrsy09PBq','BgLZDezHAwX1CMvZ','CgfYC2u','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','BMfTzq','D3jPDgu','y29UC29SzuXPBwL0'];_0x2ecd=function(){return _0x21e7cc;};return _0x2ecd();}import{writeFileSync as _0x35921f}from'fs';import{join as _0x46cec4}from'path';import{fileURLToPath}from'url';import{readFileSync as _0x5577d8,existsSync as _0xa6caf7}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';import{artifactsRootFrom,FAILURES_DIR_SEGMENTS,failuresRootFrom}from'@unotest/protocol';function readFailureBundle(_0x20b2d0){const _0x4a7baa={_0x44d37c:0x1fb,_0x668d3c:0x23d,_0x26b883:0x1fb,_0x3c2e67:0x23d,_0x51c35:0x216,_0x4ec362:0x244,_0x22aee2:0x1fb,_0x11283d:0x1eb,_0x48d0d4:0x1f9},_0x2b18f4=_0x47dc;if(!existsSync(_0x20b2d0))return null;const _0x1116a2=join(_0x20b2d0,'failure.json');if(!existsSync(_0x1116a2))return null;const _0x39708c=JSON['parse'](readFileSync(_0x1116a2,_0x2b18f4(_0x4a7baa._0x44d37c))),_0x597b3b=join(_0x20b2d0,_0x2b18f4(0x228)),_0x17caa2=existsSync(_0x597b3b)?JSON[_0x2b18f4(_0x4a7baa._0x668d3c)](readFileSync(_0x597b3b,_0x2b18f4(_0x4a7baa._0x26b883))):[],_0x3e6d26=join(_0x20b2d0,_0x2b18f4(0x24e)),_0x1c1ba9=existsSync(_0x3e6d26)?JSON[_0x2b18f4(_0x4a7baa._0x3c2e67)](readFileSync(_0x3e6d26,'utf8')):void 0x0,_0x208046={'trace':_0x39708c,'console':_0x17caa2},_0x51bad8=join(_0x20b2d0,_0x2b18f4(0x217));existsSync(_0x51bad8)&&(_0x208046[_0x2b18f4(0x205)]=JSON[_0x2b18f4(0x23d)](readFileSync(_0x51bad8,_0x2b18f4(0x1fb))));if(_0x1c1ba9!==void 0x0)_0x208046[_0x2b18f4(0x1f5)]=_0x1c1ba9;const _0x54e657=join(_0x20b2d0,_0x2b18f4(_0x4a7baa._0x51c35));if(existsSync(_0x54e657))_0x208046['screenshotPath']=_0x54e657;else{const _0x37f287=join(_0x20b2d0,_0x2b18f4(_0x4a7baa._0x4ec362));existsSync(_0x37f287)&&(_0x208046[_0x2b18f4(0x201)]=readFileSync(_0x37f287,_0x2b18f4(_0x4a7baa._0x22aee2)));}const _0x61a356=join(_0x20b2d0,_0x2b18f4(0x237));if(existsSync(_0x61a356))_0x208046[_0x2b18f4(_0x4a7baa._0x11283d)]=_0x61a356;const _0xb4092e=join(_0x20b2d0,_0x2b18f4(_0x4a7baa._0x48d0d4));if(existsSync(_0xb4092e))_0x208046[_0x2b18f4(0x206)]=_0xb4092e;return _0x208046;}__name(readFailureBundle,_0x10f80a(0x202));function listFailures(_0x264842){const _0x25e17f={_0x31382c:0x1ee,_0x4d93f5:0x210,_0x3319c0:0x1ef,_0x38b96a:0x226},_0x21ea3b=_0x10f80a;if(!existsSync(_0x264842))return[];const _0x45d8c2=[];for(const _0x24cb84 of readdirSync(_0x264842)){const _0x10fd91=join(_0x264842,_0x24cb84);if(!statSync(_0x10fd91)['isDirectory']())continue;for(const _0x1d25ad of readdirSync(_0x10fd91)){const _0x334fe7=join(_0x10fd91,_0x1d25ad);if(!statSync(_0x334fe7)[_0x21ea3b(_0x25e17f._0x31382c)]())continue;const _0x3f5304=join(_0x334fe7,'failure.json');if(!existsSync(_0x3f5304))continue;try{const _0x23f39c=JSON[_0x21ea3b(0x23d)](readFileSync(_0x3f5304,_0x21ea3b(0x1fb)));_0x45d8c2[_0x21ea3b(0x222)]({'runId':_0x24cb84,'testFn':_0x23f39c[_0x21ea3b(_0x25e17f._0x4d93f5)],'scenarioPath':_0x23f39c[_0x21ea3b(0x1f2)],'dir':_0x334fe7,'timestamp':_0x23f39c[_0x21ea3b(_0x25e17f._0x3319c0)],'runState':_0x23f39c[_0x21ea3b(_0x25e17f._0x38b96a)]??'finished'});}catch{}}}return _0x45d8c2[_0x21ea3b(0x21e)]((_0x40349e,_0x346235)=>_0x346235[_0x21ea3b(0x1ef)][_0x21ea3b(0x245)](_0x40349e[_0x21ea3b(0x1ef)])),_0x45d8c2;}__name(listFailures,_0x10f80a(0x23c));function defaultFailuresRoot(_0x1366a8=artifactsRootFrom(process[_0x10f80a(0x1ec)],process[_0x10f80a(0x1f1)]()),_0x438a09=process[_0x10f80a(0x1ec)]){return failuresRootFrom(_0x438a09,join(_0x1366a8,...FAILURES_DIR_SEGMENTS));}__name(defaultFailuresRoot,_0x10f80a(0x250));function resolveBundleDir(_0x310478,_0x504be9){if(existsSync(_0x310478)&&statSync(_0x310478)['isDirectory']())return _0x310478;return join(_0x504be9,_0x310478);}__name(resolveBundleDir,_0x10f80a(0x242));function composeFixPrompt(_0x1d3109,_0x454829={}){const _0x1ae672={_0x16e01e:0x213,_0x2c71d5:0x1f1,_0x144a50:0x200,_0xe681a7:0x1f2,_0x3fb953:0x1fb,_0x2c2652:0x241,_0x841231:0x253,_0x5c3df9:0x21a},_0x4c6c93=_0x10f80a,_0x293094=_0x454829[_0x4c6c93(0x230)]??defaultFailuresRoot(),_0x566643=resolveBundleDir(_0x1d3109,_0x293094),_0x4d5edb=readFailureBundle(_0x566643);if(!_0x4d5edb)throw new Error(_0x4c6c93(_0x1ae672._0x16e01e)+_0x1d3109+'\x22\x20(looked\x20in\x20'+_0x566643+')');const _0x5e3ee0=_0x454829['cwd']??process[_0x4c6c93(_0x1ae672._0x2c71d5)](),_0x2dc37e=_0xa6caf7(_0x4d5edb[_0x4c6c93(0x200)]['scenarioPath'])?_0x5577d8(_0x4d5edb[_0x4c6c93(_0x1ae672._0x144a50)][_0x4c6c93(_0x1ae672._0xe681a7)],_0x4c6c93(_0x1ae672._0x3fb953)):_0x4c6c93(0x219),_0x2e241b=_0x454829[_0x4c6c93(_0x1ae672._0x2c2652)]??0x19,_0x2c0fdb=_0x4d5edb[_0x4c6c93(0x24f)][_0x4c6c93(_0x1ae672._0x841231)](-_0x2e241b),{suggestedAction:_0x8f3702,confidence:_0x1469d7}=classify(_0x4d5edb),_0x49db0=buildPromptMarkdown({'bundle':_0x4d5edb,'scenarioSource':_0x2dc37e,'scenarioRelative':relative(_0x5e3ee0,_0x4d5edb[_0x4c6c93(0x200)][_0x4c6c93(_0x1ae672._0xe681a7)]),'consoleTail':_0x2c0fdb,'suggestedAction':_0x8f3702,'confidence':_0x1469d7}),_0xd6a3=Math[_0x4c6c93(0x233)](_0x49db0[_0x4c6c93(_0x1ae672._0x5c3df9)]/0x4);return{'promptMarkdown':_0x49db0,'suggestedAction':_0x8f3702,'confidence':_0x1469d7,'sources':{'bundleDir':_0x566643,'scenarioPath':_0x4d5edb[_0x4c6c93(0x200)][_0x4c6c93(0x1f2)],'consoleEntries':_0x4d5edb['console'][_0x4c6c93(_0x1ae672._0x5c3df9)],'hasSnapshot':!!_0x4d5edb['snapshot']},'approxTokens':_0xd6a3};}__name(composeFixPrompt,'composeFixPrompt');function classify(_0x328beb){const _0x133ebe={_0x4c749b:0x200,_0x11a16b:0x234,_0x49472b:0x1f7,_0x13b1f4:0x21d,_0x1d0c94:0x1fc,_0x19f604:0x20b,_0x232855:0x252,_0x55f435:0x20e,_0x451a9c:0x251,_0x1387dd:0x1f4},_0x3cd522=_0x10f80a,_0x273363=_0x328beb[_0x3cd522(_0x133ebe._0x4c749b)]['error']['message'][_0x3cd522(_0x133ebe._0x11a16b)](),_0x187648=_0x328beb[_0x3cd522(_0x133ebe._0x4c749b)]['error']['name']??'';let _0x1bd512=_0x3cd522(_0x133ebe._0x49472b),_0x12c5f6=_0x3cd522(_0x133ebe._0x13b1f4);if(_0x187648==='LocatorError'||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i['test'](_0x273363))_0x1bd512='rewrite-selector',_0x12c5f6=_0x187648===_0x3cd522(_0x133ebe._0x1d0c94)?_0x3cd522(_0x133ebe._0x19f604):'medium';else{if(_0x187648===_0x3cd522(0x22c)||/timeout|waiting for/i[_0x3cd522(_0x133ebe._0x232855)](_0x273363))_0x1bd512=_0x3cd522(_0x133ebe._0x55f435),_0x12c5f6=_0x187648===_0x3cd522(0x22c)?'high':_0x3cd522(_0x133ebe._0x451a9c);else(_0x187648===_0x3cd522(0x232)||/asserttext|assertvisible|expected.*got/i[_0x3cd522(_0x133ebe._0x232855)](_0x273363))&&(_0x1bd512=_0x3cd522(_0x133ebe._0x1387dd),_0x12c5f6=_0x187648==='AssertionError'?'high':_0x3cd522(_0x133ebe._0x451a9c));}return{'suggestedAction':_0x1bd512,'confidence':_0x12c5f6};}__name(classify,_0x10f80a(0x214));function buildPromptMarkdown(_0x92ed2f){const _0x1a1483={_0x3655d9:0x24a,_0x1dfc43:0x1f5,_0x15feda:0x229,_0x4b901f:0x1f5,_0x1779ee:0x21c,_0x3f1550:0x21b,_0x468500:0x1e1,_0x1e1f4d:0x200,_0x2fa874:0x24c,_0x2c0d94:0x1e7,_0x4be908:0x200,_0x32b404:0x1fe,_0x5a952b:0x1e2,_0x2267fb:0x22e,_0x2dd417:0x1e8,_0x4fdc17:0x1f8,_0x7e9bb1:0x225,_0x2dfbd8:0x22d,_0x568905:0x1e6,_0x126496:0x24b},_0x4da889=_0x10f80a,{bundle:_0x18f4dc,scenarioSource:_0x2204c6,scenarioRelative:_0x28c6cb,consoleTail:_0x305c85,suggestedAction:_0x391fdf,confidence:_0x5a07a9}=_0x92ed2f,_0x101a85=_0x2204c6['split']('\x0a')[_0x4da889(0x204)]((_0x200292,_0x2eaf58)=>String(_0x2eaf58+0x1)['padStart'](0x3,'\x20')+'\x20\x20'+_0x200292)['join']('\x0a'),_0x20c535=_0x305c85[_0x4da889(0x21a)]===0x0?_0x4da889(0x23e):_0x305c85[_0x4da889(0x204)](_0x3b802c=>'['+_0x3b802c[_0x4da889(0x1ef)]+']\x20'+_0x3b802c['level'][_0x4da889(0x1e9)]()+':\x20'+_0x3b802c[_0x4da889(0x215)])[_0x4da889(_0x1a1483._0x3655d9)]('\x0a'),_0x285f39=_0x18f4dc[_0x4da889(_0x1a1483._0x1dfc43)]?_0x4da889(_0x1a1483._0x15feda)+_0x18f4dc[_0x4da889(_0x1a1483._0x4b901f)][_0x4da889(_0x1a1483._0x1779ee)]+_0x4da889(0x1f6)+_0x18f4dc[_0x4da889(_0x1a1483._0x1dfc43)][_0x4da889(_0x1a1483._0x3f1550)]+_0x4da889(_0x1a1483._0x468500):'_(no\x20semantic-dom\x20snapshot\x20captured\x20for\x20this\x20failure)_';return _0x4da889(0x203)+_0x18f4dc['trace'][_0x4da889(0x210)]+_0x4da889(0x239)+_0x28c6cb+'`\x0a-\x20**Step\x20index**:\x20'+(_0x18f4dc[_0x4da889(_0x1a1483._0x1e1f4d)][_0x4da889(_0x1a1483._0x2fa874)]??'?')+_0x4da889(_0x1a1483._0x2c0d94)+_0x18f4dc[_0x4da889(_0x1a1483._0x4be908)][_0x4da889(_0x1a1483._0x32b404)]+_0x4da889(0x1fd)+_0x18f4dc[_0x4da889(0x200)][_0x4da889(0x211)]+_0x4da889(_0x1a1483._0x5a952b)+(_0x18f4dc[_0x4da889(0x200)][_0x4da889(0x1e0)][_0x4da889(0x23f)]??_0x4da889(0x224))+'`\x20—\x20'+_0x18f4dc[_0x4da889(0x200)][_0x4da889(0x1e0)][_0x4da889(0x21f)]+_0x4da889(_0x1a1483._0x2267fb)+_0x391fdf+_0x4da889(_0x1a1483._0x2dd417)+_0x5a07a9+_0x4da889(_0x1a1483._0x4fdc17)+(_0x18f4dc[_0x4da889(0x200)]['error'][_0x4da889(_0x1a1483._0x7e9bb1)]?'###\x20Stack\x0a```\x0a'+_0x18f4dc['trace']['error'][_0x4da889(_0x1a1483._0x7e9bb1)]+'\x0a```\x0a':'')+_0x4da889(0x24d)+_0x101a85+_0x4da889(_0x1a1483._0x2dfbd8)+_0x20c535+_0x4da889(_0x1a1483._0x568905)+_0x285f39+_0x4da889(_0x1a1483._0x126496);}__name(buildPromptMarkdown,'buildPromptMarkdown');function _0x47dc(_0x2549cb,_0x1266ea){_0x2549cb=_0x2549cb-0x1e0;const _0x2ecdf4=_0x2ecd();let _0x47dc3d=_0x2ecdf4[_0x2549cb];if(_0x47dc['RYmZdQ']===undefined){var _0x14bcb8=function(_0x183604){const _0x2392d5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x35921f='',_0x46cec4='';for(let _0x5577d8=0x0,_0xa6caf7,_0x41d07d,_0x3f573e=0x0;_0x41d07d=_0x183604['charAt'](_0x3f573e++);~_0x41d07d&&(_0xa6caf7=_0x5577d8%0x4?_0xa6caf7*0x40+_0x41d07d:_0x41d07d,_0x5577d8++%0x4)?_0x35921f+=String['fromCharCode'](0xff&_0xa6caf7>>(-0x2*_0x5577d8&0x6)):0x0){_0x41d07d=_0x2392d5['indexOf'](_0x41d07d);}for(let _0x20b2d0=0x0,_0x1116a2=_0x35921f['length'];_0x20b2d0<_0x1116a2;_0x20b2d0++){_0x46cec4+='%'+('00'+_0x35921f['charCodeAt'](_0x20b2d0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x46cec4);};_0x47dc['zQuZmy']=_0x14bcb8,_0x47dc['dvGalX']={},_0x47dc['RYmZdQ']=!![];}const _0x1334d8=_0x2ecdf4[0x0],_0xff91d0=_0x2549cb+_0x1334d8,_0x29286b=_0x47dc['dvGalX'][_0xff91d0];return!_0x29286b?(_0x47dc3d=_0x47dc['zQuZmy'](_0x47dc3d),_0x47dc['dvGalX'][_0xff91d0]=_0x47dc3d):_0x47dc3d=_0x29286b,_0x47dc3d;}function runPrepareFix(_0x1f190d,_0x20886f={}){const _0x12334f={_0x39156f:0x1f1,_0x11fe23:0x220,_0x191f19:0x20c,_0x137a17:0x21a,_0x13b5f6:0x210,_0x1f42af:0x23a,_0x5145dd:0x238,_0x4afbf7:0x20a,_0x20c235:0x1e3,_0x2ac02c:0x236,_0x4abf99:0x246,_0xe9788c:0x221,_0x4eb511:0x240,_0x3d8952:0x20d,_0x44e00c:0x227},_0x27a09a=_0x10f80a,_0x1853db=_0x20886f['out']??process['stdout'],_0x30f1ac=_0x20886f['err']??process['stderr'],_0x2aeab2=_0x20886f[_0x27a09a(_0x12334f._0x39156f)]??process[_0x27a09a(_0x12334f._0x39156f)](),_0x1c0217=_0x1f190d[_0x27a09a(_0x12334f._0x11fe23)](_0x27a09a(_0x12334f._0x191f19));let _0x5609cf=_0x1f190d[_0x27a09a(0x207)](_0x274b96=>!_0x274b96[_0x27a09a(0x223)]('-'));if(_0x1c0217||_0x5609cf['length']===0x0){const _0xb2e6a=listFailures(defaultFailuresRoot(_0x2aeab2));if(_0xb2e6a[_0x27a09a(0x21a)]===0x0)return _0x30f1ac[_0x27a09a(0x240)](_0x27a09a(0x20f)),0x1;if(_0x5609cf[_0x27a09a(_0x12334f._0x137a17)]===0x0){const _0x4ad72e=new Map();for(const _0x542276 of _0xb2e6a){if(!_0x4ad72e['has'](_0x542276[_0x27a09a(_0x12334f._0x13b5f6)]))_0x4ad72e[_0x27a09a(_0x12334f._0x1f42af)](_0x542276[_0x27a09a(0x210)],_0x542276);}_0x5609cf=[..._0x4ad72e['values']()][_0x27a09a(0x204)](_0x1af559=>_0x1af559[_0x27a09a(0x1ea)]+'/'+_0x1af559[_0x27a09a(0x210)]);}}if(_0x5609cf[_0x27a09a(0x21a)]===0x0)return _0x30f1ac[_0x27a09a(0x240)](_0x27a09a(_0x12334f._0x5145dd)),0x1;_0x1853db[_0x27a09a(0x240)](_0x27a09a(_0x12334f._0x4afbf7)+_0x5609cf[_0x27a09a(0x21a)]+_0x27a09a(_0x12334f._0x20c235));const _0x171427=defaultFailuresRoot(_0x2aeab2);for(const _0x3632ce of _0x5609cf){try{const _0x5e922b=composeFixPrompt(_0x3632ce,{'cwd':_0x2aeab2,'failuresRoot':_0x171427}),_0x51f7b6=_0x46cec4(_0x5e922b[_0x27a09a(_0x12334f._0x2ac02c)][_0x27a09a(_0x12334f._0x4abf99)],_0x27a09a(0x243));_0x35921f(_0x51f7b6,_0x5e922b[_0x27a09a(_0x12334f._0xe9788c)]),_0x1853db['write'](_0x27a09a(0x1f0)+_0x3632ce+'\x0a'),_0x1853db[_0x27a09a(_0x12334f._0x4eb511)]('\x20\x20\x20\x20\x20\x20'+_0x51f7b6+'\x0a'),_0x1853db[_0x27a09a(0x240)](_0x27a09a(0x249)+_0x5e922b['suggestedAction']+_0x27a09a(0x218)+_0x5e922b[_0x27a09a(_0x12334f._0x3d8952)]+_0x27a09a(0x1e5)+_0x5e922b['approxTokens']+'t\x0a');}catch(_0x1754f9){_0x30f1ac[_0x27a09a(0x240)](_0x27a09a(_0x12334f._0x44e00c)+_0x3632ce+':\x20'+(_0x1754f9 instanceof Error?_0x1754f9[_0x27a09a(0x21f)]:String(_0x1754f9))+'\x0a');}}return _0x1853db['write']('\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,_0x10f80a(0x22f));var invokedDirectly=process[_0x10f80a(0x1f3)][0x1]&&fileURLToPath(import.meta.url)===process[_0x10f80a(0x1f3)][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x10f80a(0x1f3)][_0x10f80a(0x253)](0x2));process[_0x10f80a(0x208)](code);}export{runPrepareFix};
1
+ const _0x1f278b=_0x5912;(function(_0x3d5f68,_0x1c634b){const _0x31c2d8={_0x1cafc5:0x9d,_0x530238:0x81,_0x3073f0:0x75},_0x1aed3e=_0x5912,_0x37791d=_0x3d5f68();while(!![]){try{const _0xcbaf8a=-parseInt(_0x1aed3e(0xe2))/0x1+parseInt(_0x1aed3e(_0x31c2d8._0x1cafc5))/0x2+parseInt(_0x1aed3e(_0x31c2d8._0x530238))/0x3*(-parseInt(_0x1aed3e(_0x31c2d8._0x3073f0))/0x4)+-parseInt(_0x1aed3e(0xd4))/0x5+-parseInt(_0x1aed3e(0xa5))/0x6*(parseInt(_0x1aed3e(0xdb))/0x7)+-parseInt(_0x1aed3e(0x6c))/0x8+-parseInt(_0x1aed3e(0x71))/0x9*(-parseInt(_0x1aed3e(0xb0))/0xa);if(_0xcbaf8a===_0x1c634b)break;else _0x37791d['push'](_0x37791d['shift']());}catch(_0x56e1fe){_0x37791d['push'](_0x37791d['shift']());}}}(_0x4e42,0x80793));var __defProp=Object[_0x1f278b(0x90)],__name=(_0x5830ea,_0x2b78e6)=>__defProp(_0x5830ea,'name',{'value':_0x2b78e6,'configurable':!![]});import{writeFileSync as _0x37f6f2}from'fs';function _0x5912(_0x275f53,_0x2d7487){_0x275f53=_0x275f53-0x68;const _0x4e4204=_0x4e42();let _0x5912b3=_0x4e4204[_0x275f53];if(_0x5912['rRycnV']===undefined){var _0x5ce6b3=function(_0x5d0303){const _0x517ce5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37f6f2='',_0x445b07='';for(let _0x4580e2=0x0,_0x5c5060,_0x5830ea,_0x2b78e6=0x0;_0x5830ea=_0x5d0303['charAt'](_0x2b78e6++);~_0x5830ea&&(_0x5c5060=_0x4580e2%0x4?_0x5c5060*0x40+_0x5830ea:_0x5830ea,_0x4580e2++%0x4)?_0x37f6f2+=String['fromCharCode'](0xff&_0x5c5060>>(-0x2*_0x4580e2&0x6)):0x0){_0x5830ea=_0x517ce5['indexOf'](_0x5830ea);}for(let _0x18fe5b=0x0,_0xc2760b=_0x37f6f2['length'];_0x18fe5b<_0xc2760b;_0x18fe5b++){_0x445b07+='%'+('00'+_0x37f6f2['charCodeAt'](_0x18fe5b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x445b07);};_0x5912['LdniUI']=_0x5ce6b3,_0x5912['QpWsoY']={},_0x5912['rRycnV']=!![];}const _0x352270=_0x4e4204[0x0],_0x46eff9=_0x275f53+_0x352270,_0x48e93a=_0x5912['QpWsoY'][_0x46eff9];return!_0x48e93a?(_0x5912b3=_0x5912['LdniUI'](_0x5912b3),_0x5912['QpWsoY'][_0x46eff9]=_0x5912b3):_0x5912b3=_0x48e93a,_0x5912b3;}import{join as _0x445b07}from'path';function _0x4e42(){const _0x310014=['y2HHBMDLlwfZC2vYDgLVBG','y2XHC3nPzNK','mJi2nduYmZntwffhsgK','C3rKB3v0','zxjYB3i','y2fWDhvYzwrbDa','mtG0nefJzu92ra','zML4lxbYB21WDc5Tza','cI0GkIPfCNjVCIOQoIbG','iIaOBg9VA2vKigLUia','AxneAxjLy3rVCNK','Bg93','BMfTzq','zMfPBhvYzxnsB290','yaOTicOQu3rLCcbPBMrLEcOQoIa','BwfW','y29UzMLKzw5Jzq','Dg9mB3DLCKnHC2u','nJKZqM5sufbN','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','y29S','Dg9vChbLCKnHC2u','BwvZC2fNzq','zMLUAxnOzwq','y3DK','C291CMnLCW','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','AgLNAa','DhjHy2u','CMv3CML0zs1ZzwXLy3rVCG','DMfSDwvZ','DgvZDezU','zgvMAw5LuhjVCgvYDhK','ycbPBIbG','DxjS','C25HChnOB3q','C2nYzwvUC2HVDfbHDgG','BgLUzq','C3rHy2S','DMLKzw9qyxrO','AgfYlMPZB24','C3rKzxjY','AM9PBG','CNvUu3rHDgu','y29UC29SzuXPBwL0','odi4nduWsLvIAK9s','vgLTzw91DevYCM9Y','DgLTzxn0yw1W','yNvUzgXLrgLY','rxjYB3i','D3jPDgu','CgfYC2u','vvjmoIa','ntC4ndzbsxvxBK0','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','C2nLBMfYAw9qyxrO','zMfPBhvYzs5QC29U','Dw5RBM93BG','C25HChnOB3qUANnVBG','zw52','B3v0','zgvMyxvSDezHAwX1CMvZuM9VDa','DxrMoa','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','mtbqD05vvxe','C3bSAxq','kqOk','icb+','yxjNDG','CMvHzezHAwX1CMvcDw5KBgu','ywrKlxDHAxrMB3i','lcbJB2WG','ihrLC3qOCYKGkeqTmJuPcGO','Dgv4Da','CMvZB2X2zuj1BMrSzurPCG','cMbGyaO','BgLZDezHAwX1CMvZ','icaGicaG','C2nYzwvUC2HVDc5WBMC','CNvUswq','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','C2v0','iYmJifn0ywnRcMbGyaO','BMv0D29YAW','Bg9JywXLq29TCgfYzq','ChjLCgfYzs1MAxG6ig5VihrLC3rjzcbWCM92AwrLzcbHBMqGBM8GzMfPBgLUzYb0zxn0CYbMB3vUzc4k','ChjLCgfYzs1MAxG6ig5VigzHAwX1CMuGyNvUzgXLCYbMB3vUzcb1BMrLCIaUDw5VDgvZDc9MywLSDxjLCY8Uifj1BIbHigzHAwXPBMCGDgvZDcbMAxjZDdSGDgHLigj1BMrSzsbPCYb3CML0DgvUigf1Dg9TyxrPy2fSBhKUcG','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','cK5LEhq6ihbHC3rLigvHy2GGzML4lxbYB21WDc5TzcbPBNrVihLVDxiGteXnignSAwvUDcaOq2XHDwrLienVzguGlWPdDxjZB3iGlYbLDgmUks4GvgHLieXmtsbYzxr1CM5ZigeGDw5PzMLLzcbKAwzMoYbYzxzPzxCGAxqGyw5KigfWCgX5cM1HBNvHBgX5lIbxzsbUzxzLCIbHDxrVlwfWCgX5icHelti1ks4k','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','xYHUBYbZzw1HBNrPyY1KB20GC25HChnOB3qGy2fWDhvYzwqGzM9YihrOAxmGzMfPBhvYzsLF','AgfYugf0Aa','yNvPBgrqCM9TChrnyxjRzg93BG','CNvUuhjLCgfYzuzPEa','cKnHChr1CMvKoIa','ChjLCgfYzs1MAxG6ignVBxbVC2LUzYbMAxGGChjVBxb0CYbMB3iG','C29YDa','BwvKAxvT','BgvUz3rO','C3vNz2vZDgvKqwn0Aw9U','mZqXmtGZnvbYvgPYBa','C2nYzwvUC2HVDevYCM9Y','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','icbJB25MAwrLBMnLpq','BMv0D29YAY5QC29U','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','ChvZAa','mJe3AxzJC09J','yxbWCM94vg9Rzw5Z','AgfZ','ChjVBxb0twfYA2rVD24','C2XPy2u','C3rHCNrZv2L0Aa','zMLSDgvY','odC3mZK5ywzusw5H','y2vPBa','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','DgvZDa','zxHPDa','icdINjmG','C2nYzwvUC2HVDc1LCNjVCI50Ehq','tg9JyxrVCKvYCM9Y','mZuXmJa1nMv3uunvzG','y29TCg9ZzuzPEfbYB21WDa','qxnZzxj0Aw9UrxjYB3i'];_0x4e42=function(){return _0x310014;};return _0x4e42();}import{fileURLToPath}from'url';import{readFileSync as _0x4580e2,existsSync as _0x5c5060}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';import{artifactsRootFrom,FAILURES_DIR_SEGMENTS,failuresRootFrom}from'@unotest/protocol';function readFailureBundle(_0x18fe5b){const _0x9c9fad={_0x12eac5:0xae,_0x2eb6d8:0xaa,_0x22c7ad:0xa3,_0x421767:0xae,_0x2d50a8:0x93,_0x50cb47:0xbe,_0x175af5:0x94,_0x1d7302:0x98,_0x412054:0xcb,_0x810e56:0x97},_0x4d6240=_0x1f278b;if(!existsSync(_0x18fe5b))return null;const _0xc2760b=join(_0x18fe5b,_0x4d6240(0xa8));if(!existsSync(_0xc2760b))return null;const _0xd2dc8c=JSON[_0x4d6240(0xa3)](readFileSync(_0xc2760b,'utf8')),_0x58c060=join(_0x18fe5b,'console.json'),_0x8aefe4=existsSync(_0x58c060)?JSON[_0x4d6240(0xa3)](readFileSync(_0x58c060,_0x4d6240(_0x9c9fad._0x12eac5))):[],_0x1e8381=join(_0x18fe5b,_0x4d6240(_0x9c9fad._0x2eb6d8)),_0x5bcfd9=existsSync(_0x1e8381)?JSON['parse'](readFileSync(_0x1e8381,'utf8')):void 0x0,_0x496a60={'trace':_0xd2dc8c,'console':_0x8aefe4},_0x930d17=join(_0x18fe5b,_0x4d6240(0xd8));existsSync(_0x930d17)&&(_0x496a60[_0x4d6240(0xc3)]=JSON[_0x4d6240(_0x9c9fad._0x22c7ad)](readFileSync(_0x930d17,_0x4d6240(_0x9c9fad._0x421767))));if(_0x5bcfd9!==void 0x0)_0x496a60[_0x4d6240(_0x9c9fad._0x2d50a8)]=_0x5bcfd9;const _0x4d2039=join(_0x18fe5b,_0x4d6240(_0x9c9fad._0x50cb47));if(existsSync(_0x4d2039))_0x496a60[_0x4d6240(_0x9c9fad._0x175af5)]=_0x4d2039;else{const _0x230c63=join(_0x18fe5b,_0x4d6240(0x6a));existsSync(_0x230c63)&&(_0x496a60[_0x4d6240(0xd5)]=readFileSync(_0x230c63,'utf8'));}const _0x3367e9=join(_0x18fe5b,_0x4d6240(_0x9c9fad._0x1d7302));if(existsSync(_0x3367e9))_0x496a60[_0x4d6240(_0x9c9fad._0x412054)]=_0x3367e9;const _0x2c3e56=join(_0x18fe5b,'video.webm');if(existsSync(_0x2c3e56))_0x496a60[_0x4d6240(_0x9c9fad._0x810e56)]=_0x2c3e56;return _0x496a60;}__name(readFailureBundle,_0x1f278b(0xb5));function listFailures(_0x134e11){const _0x2545fe={_0x3d1ba1:0x79,_0x318f6d:0xae,_0x50a3b2:0x8f,_0x297f0c:0x9b},_0x1fecb1=_0x1f278b;if(!existsSync(_0x134e11))return[];const _0x4a0d8f=[];for(const _0x5c14be of readdirSync(_0x134e11)){const _0x74e98a=join(_0x134e11,_0x5c14be);if(!statSync(_0x74e98a)[_0x1fecb1(_0x2545fe._0x3d1ba1)]())continue;for(const _0x42cbc7 of readdirSync(_0x74e98a)){const _0x1abf63=join(_0x74e98a,_0x42cbc7);if(!statSync(_0x1abf63)[_0x1fecb1(0x79)]())continue;const _0x37a43d=join(_0x1abf63,_0x1fecb1(0xa8));if(!existsSync(_0x37a43d))continue;try{const _0x546849=JSON['parse'](readFileSync(_0x37a43d,_0x1fecb1(_0x2545fe._0x318f6d)));_0x4a0d8f[_0x1fecb1(0xda)]({'runId':_0x5c14be,'testFn':_0x546849[_0x1fecb1(_0x2545fe._0x50a3b2)],'scenarioPath':_0x546849[_0x1fecb1(0xa7)],'dir':_0x1abf63,'timestamp':_0x546849[_0x1fecb1(0x9f)],'runState':_0x546849[_0x1fecb1(_0x2545fe._0x297f0c)]??_0x1fecb1(0x87)});}catch{}}}return _0x4a0d8f[_0x1fecb1(0xd0)]((_0x238ef6,_0x34f087)=>_0x34f087[_0x1fecb1(0x9f)][_0x1fecb1(0xc4)](_0x238ef6[_0x1fecb1(0x9f)])),_0x4a0d8f;}__name(listFailures,_0x1f278b(0xbc));function defaultFailuresRoot(_0x4a4263=artifactsRootFrom(process[_0x1f278b(0xab)],process[_0x1f278b(0x88)]()),_0x1dcf2e=process['env']){return failuresRootFrom(_0x1dcf2e,join(_0x4a4263,...FAILURES_DIR_SEGMENTS));}__name(defaultFailuresRoot,_0x1f278b(0xad));function resolveBundleDir(_0x3849eb,_0x26e67f){if(existsSync(_0x3849eb)&&statSync(_0x3849eb)['isDirectory']())return _0x3849eb;return join(_0x26e67f,_0x3849eb);}__name(resolveBundleDir,_0x1f278b(0xba));function composeFixPrompt(_0x11c3fb,_0x2a63f6={}){const _0xf9d5d1={_0x34068f:0x83,_0x3fc1d9:0x88,_0x38c98c:0xa7,_0x52b2f5:0x8c,_0x1a71e1:0xdf,_0x501fca:0xe3,_0x5a5c68:0xa7,_0x2121c1:0x93},_0x1dd6b8=_0x1f278b,_0x41f793=_0x2a63f6[_0x1dd6b8(0x7c)]??defaultFailuresRoot(),_0x7628f6=resolveBundleDir(_0x11c3fb,_0x41f793),_0x288f63=readFailureBundle(_0x7628f6);if(!_0x288f63)throw new Error(_0x1dd6b8(_0xf9d5d1._0x34068f)+_0x11c3fb+_0x1dd6b8(0x78)+_0x7628f6+')');const _0xbe82cc=_0x2a63f6[_0x1dd6b8(0x88)]??process[_0x1dd6b8(_0xf9d5d1._0x3fc1d9)](),_0x5f4a76=_0x5c5060(_0x288f63[_0x1dd6b8(0x8c)][_0x1dd6b8(_0xf9d5d1._0x38c98c)])?_0x4580e2(_0x288f63[_0x1dd6b8(_0xf9d5d1._0x52b2f5)][_0x1dd6b8(0xa7)],'utf8'):'<scenario\x20file\x20no\x20longer\x20on\x20disk>',_0x2d6147=_0x2a63f6[_0x1dd6b8(0x9c)]??0x19,_0x15a05b=_0x288f63['console'][_0x1dd6b8(_0xf9d5d1._0x1a71e1)](-_0x2d6147),{suggestedAction:_0x101d1a,confidence:_0xbb968f}=classify(_0x288f63),_0x1a89cb=buildPromptMarkdown({'bundle':_0x288f63,'scenarioSource':_0x5f4a76,'scenarioRelative':relative(_0xbe82cc,_0x288f63[_0x1dd6b8(0x8c)][_0x1dd6b8(0xa7)]),'consoleTail':_0x15a05b,'suggestedAction':_0x101d1a,'confidence':_0xbb968f}),_0x20953d=Math[_0x1dd6b8(_0xf9d5d1._0x501fca)](_0x1a89cb['length']/0x4);return{'promptMarkdown':_0x1a89cb,'suggestedAction':_0x101d1a,'confidence':_0xbb968f,'sources':{'bundleDir':_0x7628f6,'scenarioPath':_0x288f63[_0x1dd6b8(_0xf9d5d1._0x52b2f5)][_0x1dd6b8(_0xf9d5d1._0x5a5c68)],'consoleEntries':_0x288f63['console'][_0x1dd6b8(0xd2)],'hasSnapshot':!!_0x288f63[_0x1dd6b8(_0xf9d5d1._0x2121c1)]},'approxTokens':_0x20953d};}__name(composeFixPrompt,_0x1f278b(0x6d));function classify(_0xef7ccf){const _0x578fb2={_0x1f2801:0x8c,_0x5c417f:0x86,_0x2f16a1:0x8c,_0x3cc2a1:0x7b,_0x2c2c15:0x7a,_0x3fc2a0:0x6b,_0x3f251d:0xe5,_0x4185b6:0x8d,_0x13ee2f:0xd1,_0x33b467:0xe5,_0x1d343e:0x6e,_0x599de1:0x8b},_0x5ac4fb=_0x1f278b,_0x45d69a=_0xef7ccf[_0x5ac4fb(_0x578fb2._0x1f2801)]['error'][_0x5ac4fb(_0x578fb2._0x5c417f)][_0x5ac4fb(0x80)](),_0x2020db=_0xef7ccf[_0x5ac4fb(_0x578fb2._0x2f16a1)]['error'][_0x5ac4fb(_0x578fb2._0x3cc2a1)]??'';let _0x2b1176=_0x5ac4fb(0xa9),_0x573611=_0x5ac4fb(_0x578fb2._0x2c2c15);if(_0x2020db===_0x5ac4fb(_0x578fb2._0x3fc2a0)||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i[_0x5ac4fb(_0x578fb2._0x3f251d)](_0x45d69a))_0x2b1176=_0x5ac4fb(_0x578fb2._0x4185b6),_0x573611=_0x2020db===_0x5ac4fb(0x6b)?_0x5ac4fb(0x8b):_0x5ac4fb(_0x578fb2._0x13ee2f);else{if(_0x2020db===_0x5ac4fb(0x9e)||/timeout|waiting for/i[_0x5ac4fb(_0x578fb2._0x3f251d)](_0x45d69a))_0x2b1176=_0x5ac4fb(0xb6),_0x573611=_0x2020db==='TimeoutError'?'high':_0x5ac4fb(_0x578fb2._0x13ee2f);else(_0x2020db===_0x5ac4fb(0x6e)||/asserttext|assertvisible|expected.*got/i[_0x5ac4fb(_0x578fb2._0x33b467)](_0x45d69a))&&(_0x2b1176=_0x5ac4fb(0x6f),_0x573611=_0x2020db===_0x5ac4fb(_0x578fb2._0x1d343e)?_0x5ac4fb(_0x578fb2._0x599de1):_0x5ac4fb(0xd1));}return{'suggestedAction':_0x2b1176,'confidence':_0x573611};}__name(classify,_0x1f278b(0x70));function buildPromptMarkdown(_0x244dd5){const _0xae048d={_0x4c9415:0xd2,_0x187f9b:0xa4,_0x2064d3:0x93,_0x543b63:0xce,_0x54008b:0xd9,_0x5b2780:0x91,_0x209054:0x7d,_0x51c0c6:0x8c,_0x5ddd93:0xb7,_0x2ce8ee:0x86,_0x4f6b7e:0xc7,_0x40f6a0:0xb2,_0x1875d0:0x96,_0x1847ea:0x73,_0x30b1b4:0xc9,_0x3f1e5c:0xd6,_0x2e807e:0xe4},_0x36d91c=_0x1f278b,{bundle:_0x55c78a,scenarioSource:_0x18b12f,scenarioRelative:_0x24fab3,consoleTail:_0x5be568,suggestedAction:_0x9ed048,confidence:_0x1d9f64}=_0x244dd5,_0x48216a=_0x18b12f[_0x36d91c(0xb1)]('\x0a')[_0x36d91c(0x7e)]((_0x347aad,_0x2b19a9)=>String(_0x2b19a9+0x1)['padStart'](0x3,'\x20')+'\x20\x20'+_0x347aad)[_0x36d91c(0x9a)]('\x0a'),_0x219e49=_0x5be568[_0x36d91c(_0xae048d._0x4c9415)]===0x0?_0x36d91c(0xc0):_0x5be568[_0x36d91c(0x7e)](_0x55f3a0=>'['+_0x55f3a0[_0x36d91c(0x9f)]+']\x20'+_0x55f3a0['level'][_0x36d91c(0x85)]()+':\x20'+_0x55f3a0[_0x36d91c(0xb9)])['join']('\x0a'),_0x4d55ba=_0x55c78a['snapshot']?_0x36d91c(_0xae048d._0x187f9b)+_0x55c78a[_0x36d91c(_0xae048d._0x2064d3)][_0x36d91c(0x92)]+_0x36d91c(_0xae048d._0x543b63)+_0x55c78a['snapshot'][_0x36d91c(0x74)]+_0x36d91c(0xa6):_0x36d91c(0xca);return _0x36d91c(_0xae048d._0x54008b)+_0x55c78a['trace']['testFn']+_0x36d91c(_0xae048d._0x5b2780)+_0x24fab3+_0x36d91c(_0xae048d._0x209054)+(_0x55c78a[_0x36d91c(0x8c)]['stepIndex']??'?')+_0x36d91c(0x8a)+_0x55c78a[_0x36d91c(_0xae048d._0x51c0c6)][_0x36d91c(0x95)]+_0x36d91c(_0xae048d._0x5ddd93)+_0x55c78a[_0x36d91c(0x8c)][_0x36d91c(0x84)]+_0x36d91c(0x77)+(_0x55c78a[_0x36d91c(_0xae048d._0x51c0c6)][_0x36d91c(0x73)][_0x36d91c(0x7b)]??_0x36d91c(0xa1))+'`\x20—\x20'+_0x55c78a[_0x36d91c(_0xae048d._0x51c0c6)]['error'][_0x36d91c(_0xae048d._0x2ce8ee)]+_0x36d91c(_0xae048d._0x4f6b7e)+_0x9ed048+'`\x20(confidence:\x20'+_0x1d9f64+_0x36d91c(_0xae048d._0x40f6a0)+(_0x55c78a[_0x36d91c(0x8c)][_0x36d91c(0x73)][_0x36d91c(_0xae048d._0x1875d0)]?_0x36d91c(0xc2)+_0x55c78a[_0x36d91c(0x8c)][_0x36d91c(_0xae048d._0x1847ea)]['stack']+_0x36d91c(0xbb):'')+_0x36d91c(_0xae048d._0x30b1b4)+_0x48216a+_0x36d91c(0x82)+_0x219e49+_0x36d91c(_0xae048d._0x3f1e5c)+_0x4d55ba+_0x36d91c(_0xae048d._0x2e807e);}__name(buildPromptMarkdown,_0x1f278b(0xcc));function runPrepareFix(_0x67fd27,_0x5231d5={}){const _0x2209f0={_0x3cf883:0xac,_0x193769:0x72,_0x50b55c:0x99,_0x48b697:0xe1,_0x19e3be:0xd2,_0x18a36a:0xa2,_0x4a33e9:0xd2,_0x48af04:0xdd,_0x5668ac:0xc1,_0x1ef08a:0x8f,_0x4a865f:0xc5,_0x54bf5d:0xcf,_0x340570:0x89,_0x46a27b:0xde,_0x57a2bb:0xa2,_0x2ee831:0xbd,_0x516e27:0xa2,_0x56853e:0xd3,_0x2061ed:0x7f},_0x4d0313=_0x1f278b,_0x28f3cf=_0x5231d5[_0x4d0313(_0x2209f0._0x3cf883)]??process[_0x4d0313(_0x2209f0._0x193769)],_0x3f2048=_0x5231d5['err']??process[_0x4d0313(_0x2209f0._0x50b55c)],_0x4b64d0=_0x5231d5[_0x4d0313(0x88)]??process[_0x4d0313(0x88)](),_0x23a48a=_0x67fd27['includes']('--failing');let _0x425b00=_0x67fd27[_0x4d0313(_0x2209f0._0x48b697)](_0x5e3fba=>!_0x5e3fba[_0x4d0313(0xe0)]('-'));if(_0x23a48a||_0x425b00[_0x4d0313(_0x2209f0._0x19e3be)]===0x0){const _0x3e5789=listFailures(defaultFailuresRoot(_0x4b64d0));if(_0x3e5789[_0x4d0313(0xd2)]===0x0)return _0x3f2048[_0x4d0313(_0x2209f0._0x18a36a)](_0x4d0313(0xc6)),0x1;if(_0x425b00[_0x4d0313(_0x2209f0._0x4a33e9)]===0x0){const _0x330ab8=new Map();for(const _0x1186ea of _0x3e5789){if(!_0x330ab8[_0x4d0313(_0x2209f0._0x48af04)](_0x1186ea[_0x4d0313(0x8f)]))_0x330ab8[_0x4d0313(_0x2209f0._0x5668ac)](_0x1186ea[_0x4d0313(_0x2209f0._0x1ef08a)],_0x1186ea);}_0x425b00=[..._0x330ab8[_0x4d0313(0x8e)]()][_0x4d0313(0x7e)](_0x2e3d99=>_0x2e3d99[_0x4d0313(0xbf)]+'/'+_0x2e3d99[_0x4d0313(0x8f)]);}}if(_0x425b00['length']===0x0)return _0x3f2048[_0x4d0313(0xa2)](_0x4d0313(_0x2209f0._0x4a865f)),0x1;_0x28f3cf[_0x4d0313(_0x2209f0._0x18a36a)](_0x4d0313(_0x2209f0._0x54bf5d)+_0x425b00[_0x4d0313(_0x2209f0._0x4a33e9)]+_0x4d0313(0xb8));const _0x5549f4=defaultFailuresRoot(_0x4b64d0);for(const _0x15f95c of _0x425b00){try{const _0x146715=composeFixPrompt(_0x15f95c,{'cwd':_0x4b64d0,'failuresRoot':_0x5549f4}),_0x1b8784=_0x445b07(_0x146715[_0x4d0313(_0x2209f0._0x340570)][_0x4d0313(0xa0)],_0x4d0313(0x76));_0x37f6f2(_0x1b8784,_0x146715[_0x4d0313(_0x2209f0._0x46a27b)]),_0x28f3cf[_0x4d0313(_0x2209f0._0x57a2bb)](_0x4d0313(0x69)+_0x15f95c+'\x0a'),_0x28f3cf[_0x4d0313(_0x2209f0._0x57a2bb)](_0x4d0313(_0x2209f0._0x2ee831)+_0x1b8784+'\x0a'),_0x28f3cf[_0x4d0313(_0x2209f0._0x516e27)](_0x4d0313(0xaf)+_0x146715[_0x4d0313(_0x2209f0._0x56853e)]+_0x4d0313(0xd7)+_0x146715[_0x4d0313(_0x2209f0._0x2061ed)]+_0x4d0313(0xb3)+_0x146715[_0x4d0313(0xdc)]+'t\x0a');}catch(_0x18e5ff){_0x3f2048[_0x4d0313(0xa2)]('\x20\x20✗\x20'+_0x15f95c+':\x20'+(_0x18e5ff instanceof Error?_0x18e5ff[_0x4d0313(0x86)]:String(_0x18e5ff))+'\x0a');}}return _0x28f3cf[_0x4d0313(_0x2209f0._0x18a36a)](_0x4d0313(0xc8)),0x0;}__name(runPrepareFix,_0x1f278b(0xcd));var invokedDirectly=process['argv'][0x1]&&fileURLToPath(import.meta.url)===process['argv'][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x1f278b(0xb4)]['slice'](0x2));process[_0x1f278b(0x68)](code);}export{runPrepareFix};
@@ -1 +1 @@
1
- const _0x407fd6=_0x1d5d;(function(_0x13e66f,_0x9eb63e){const _0xf2acfd={_0x30beb7:0x184,_0x3abee1:0x18c,_0x4241b8:0x18e,_0x4fcf05:0x170,_0x49aaa1:0x183,_0x5f3368:0x186},_0xfb40e1=_0x1d5d,_0x4684ba=_0x13e66f();while(!![]){try{const _0x316f14=-parseInt(_0xfb40e1(_0xf2acfd._0x30beb7))/0x1+-parseInt(_0xfb40e1(_0xf2acfd._0x3abee1))/0x2*(-parseInt(_0xfb40e1(_0xf2acfd._0x4241b8))/0x3)+parseInt(_0xfb40e1(0x172))/0x4+parseInt(_0xfb40e1(_0xf2acfd._0x4fcf05))/0x5+parseInt(_0xfb40e1(0x179))/0x6*(-parseInt(_0xfb40e1(0x18b))/0x7)+-parseInt(_0xfb40e1(0x17a))/0x8*(-parseInt(_0xfb40e1(0x185))/0x9)+-parseInt(_0xfb40e1(_0xf2acfd._0x49aaa1))/0xa*(parseInt(_0xfb40e1(_0xf2acfd._0x5f3368))/0xb);if(_0x316f14===_0x9eb63e)break;else _0x4684ba['push'](_0x4684ba['shift']());}catch(_0xc53061){_0x4684ba['push'](_0x4684ba['shift']());}}}(_0x45bc,0x6446f));var __defProp=Object[_0x407fd6(0x193)],__name=(_0x4791fd,_0x5c259e)=>__defProp(_0x4791fd,_0x407fd6(0x176),{'value':_0x5c259e,'configurable':!![]});import{mkdir,writeFile}from'fs/promises';import{existsSync}from'fs';import{join}from'path';var templates={'jsconfigJson':_0x407fd6(0x171),'scenarioTemplate':'//\x20Move\x20+\x20rename\x20this\x20file\x20to\x20<feature>/<your_name>.js\x20(e.g.\x0a//\x20auth/login.js)\x20and\x20the\x20function\x20below\x20to\x20test_<your_name>().\x20Scenarios\x20live\x0a//\x20in\x20feature\x20subfolders,\x20NOT\x20the\x20e2e\x20root\x20—\x20the\x20linter\x20(lint:scenario-in-root)\x0a//\x20rejects\x20a\x20test\x20file\x20placed\x20directly\x20in\x20unotest/e2e/.\x20The\x20loader\x20derives\x20the\x0a//\x20entry\x20name\x20from\x20the\x20file\x20basename\x20—\x20kebab-case\x20dashes\x20become\x20underscores.\x0a\x0a//\x20Every\x20executable\x20step\x20must\x20sit\x20inside\x20a\x20step(\x22...\x22,\x20()\x20=>\x20{\x20…\x20})\x20block.\x20The\x0a//\x20title\x20is\x20a\x20plain-English\x20description\x20of\x20the\x20group;\x20the\x20steps\x20inside\x20are\x0a//\x20the\x20implementation.\x20Group\x20by\x20intent\x20(Setup\x20/\x20Enter\x20/\x20Act\x20/\x20Assert\x20or\x0a//\x20whatever\x20reads\x20well)\x20—\x20one\x20block\x20per\x20logical\x20chunk.\x0a\x0afunction\x20test_your_name_here()\x20{\x0a\x20\x20step(\x22Seed\x20a\x20known\x20user\x20via\x20DB\x20/\x20API\x20fixtures\x20from\x20_helpers/\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20//\x20\x20\x20\x20wipe_e2e_users();\x0a\x20\x20\x20\x20//\x20\x20\x20\x20user_id\x20=\x20seed_user(\x27alice@example.com\x27,\x20\x27secret\x27);\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Sign\x20in\x20as\x20the\x20seeded\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27https://your-app.test/login\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20\x27alice@example.com\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20fill(getByLabel(\x27Password\x27),\x20\x27secret\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20click(getByRole(\x27button\x27,\x20{name:\x20\x27Log\x20in\x27}));\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Assert\x20the\x20dashboard\x20shows\x20the\x20signed-in\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertUrl(\x27/dashboard\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertText(getByRole(\x27heading\x27),\x20\x27Welcome,\x20Alice\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20count\x20=\x20dbQuery(\x27SELECT\x20count(*)\x20FROM\x20users\x20WHERE\x20active\x20=\x20true\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertTrue(count\x20>\x200,\x20\x27expected\x20at\x20least\x20one\x20active\x20user\x27);\x0a\x20\x20});\x0a}\x0a','agentsMd':_0x407fd6(0x18a),'claudeMdBody':_0x407fd6(0x191),'exampleCollection':_0x407fd6(0x180),'examples':{'01-smoke.js':_0x407fd6(0x16a),'02-form-fill.js':_0x407fd6(0x16b)},'secretsExample':_0x407fd6(0x17e),'envExample':_0x407fd6(0x18f)};function _0x1d5d(_0x439c75,_0x3b7b29){_0x439c75=_0x439c75-0x16a;const _0x45bc61=_0x45bc();let _0x1d5d8b=_0x45bc61[_0x439c75];if(_0x1d5d['AxdXtO']===undefined){var _0x4670f3=function(_0x937fe0){const _0x57f7c7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4791fd='',_0x5c259e='';for(let _0x509cdb=0x0,_0x8d9593,_0x1d8317,_0x16c6c2=0x0;_0x1d8317=_0x937fe0['charAt'](_0x16c6c2++);~_0x1d8317&&(_0x8d9593=_0x509cdb%0x4?_0x8d9593*0x40+_0x1d8317:_0x1d8317,_0x509cdb++%0x4)?_0x4791fd+=String['fromCharCode'](0xff&_0x8d9593>>(-0x2*_0x509cdb&0x6)):0x0){_0x1d8317=_0x57f7c7['indexOf'](_0x1d8317);}for(let _0x4045a5=0x0,_0x212daf=_0x4791fd['length'];_0x4045a5<_0x212daf;_0x4045a5++){_0x5c259e+='%'+('00'+_0x4791fd['charCodeAt'](_0x4045a5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c259e);};_0x1d5d['EdWEQQ']=_0x4670f3,_0x1d5d['lLsqHp']={},_0x1d5d['AxdXtO']=!![];}const _0x197ef9=_0x45bc61[0x0],_0xfc62e0=_0x439c75+_0x197ef9,_0x401923=_0x1d5d['lLsqHp'][_0xfc62e0];return!_0x401923?(_0x1d5d8b=_0x1d5d['EdWEQQ'](_0x1d5d8b),_0x1d5d['lLsqHp'][_0xfc62e0]=_0x1d5d8b):_0x1d5d8b=_0x401923,_0x1d5d8b;}function unotestConfigMjs(_0x509cdb){const _0x40eaf3={_0x28759c:0x181,_0x2f6bbc:0x16d},_0xf4515=_0x407fd6,_0x8d9593=_0x509cdb===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)':_0xf4515(0x174)+JSON[_0xf4515(_0x40eaf3._0x28759c)](_0x509cdb)+',';return _0xf4515(_0x40eaf3._0x2f6bbc)+_0x8d9593+_0xf4515(0x16f);}__name(unotestConfigMjs,_0x407fd6(0x17f));function suitePackageJson(_0x1d8317){const _0x582531={_0x486c21:0x192},_0x4b1ff5=_0x407fd6;return JSON[_0x4b1ff5(0x181)]({'name':_0x4b1ff5(_0x582531._0x486c21),'private':!![],'devDependencies':{'@unotest/web':'^'+_0x1d8317}},null,0x2)+'\x0a';}__name(suitePackageJson,_0x407fd6(0x188));import{readFileSync}from'fs';import{dirname,resolve}from'path';import{fileURLToPath}from'url';function readOwnVersion(){const _0x2c3c55={_0x6c0438:0x187},_0x5eeb52=_0x407fd6,_0x16c6c2=dirname(fileURLToPath(import.meta.url)),_0x4045a5=resolve(_0x16c6c2,_0x5eeb52(_0x2c3c55._0x6c0438)),_0x212daf=readFileSync(_0x4045a5,_0x5eeb52(0x18d)),_0x2a4f9a=JSON['parse'](_0x212daf);if(typeof _0x2a4f9a['version']!=='string'||_0x2a4f9a[_0x5eeb52(0x16e)]['length']===0x0)throw new Error('package.json\x20at\x20'+_0x4045a5+'\x20has\x20no\x20usable\x20\x22version\x22\x20field');return _0x2a4f9a['version'];}__name(readOwnVersion,'readOwnVersion');async function scaffoldWorkspace(_0x2a02a2,_0x1fb238={}){const _0x2734c9={_0x2882a6:0x175,_0x4bef17:0x175,_0x25ee53:0x17c,_0x5d48f3:0x178},_0x43af7a=_0x407fd6,_0x2f7af0=[],_0x46e954=[];await mkdir(join(_0x2a02a2,_0x43af7a(_0x2734c9._0x2882a6),'e2e',_0x43af7a(0x177)),{'recursive':!![]}),await mkdir(join(_0x2a02a2,_0x43af7a(0x175),'e2e',_0x43af7a(0x189)),{'recursive':!![]});const _0x558813=[{'rel':join(_0x43af7a(_0x2734c9._0x2882a6),'unotest.config.mjs'),'content':unotestConfigMjs(_0x1fb238['channel'])},{'rel':join('unotest',_0x43af7a(0x17b)),'content':suitePackageJson(readOwnVersion())},{'rel':join(_0x43af7a(_0x2734c9._0x4bef17),_0x43af7a(0x16c)),'content':templates[_0x43af7a(0x190)]},{'rel':join(_0x43af7a(0x175),_0x43af7a(0x182)),'content':templates[_0x43af7a(_0x2734c9._0x25ee53)]},{'rel':join('unotest','e2e','examples',_0x43af7a(_0x2734c9._0x5d48f3)),'content':templates['examples'][_0x43af7a(0x178)]}];for(const {rel:_0x2ee21a,content:_0xb63722}of _0x558813){const _0x1d8cd3=join(_0x2a02a2,_0x2ee21a);if(existsSync(_0x1d8cd3)){_0x46e954[_0x43af7a(0x173)](_0x2ee21a);continue;}await writeFile(_0x1d8cd3,_0xb63722),_0x2f7af0['push'](_0x2ee21a);}return{'projectRoot':_0x2a02a2,'created':_0x2f7af0,'skipped':_0x46e954};}__name(scaffoldWorkspace,_0x407fd6(0x17d));export{scaffoldWorkspace};function _0x45bc(){const _0x542fce=['lY8GrxHHBxbSzsaWmsdIGjqGC21VA2u6ig5HDMLNyxrLicSGy2XPy2SGkYbvuKWGyxnZzxj0Aw9UlGOVlWOVlYbuAguGBwLUAw1HBcb0AhjLzs1ZDgvWihbHDhrLCM4UieHPDhmGCgXHEwDYB3vUzc51BM90zxn0lMnVBsbZBYbUBYbWCM9Qzwn0cI8VihnLDhvWigLZig5LzwrLzc4GuNvUihDPDgG6icbUChGGqhvUB3rLC3qVD2vIiguYzsbLEgfTCgXLCY8Wms1ZBw9RzqOkzNvUy3rPB24GDgvZDf9ZBw9Rzv9WBgf5z3jVDw5KkcKGEWOGihn0zxaOiK9Wzw4GDgHLiejPzYbuywjSzsbZy2vUyxjPBYbMCM9TihrOzsbWBgf5z3jVDw5KigLUzgv4iIWGkcKGpt4GEWOGicaGz290BYGNlYCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDSAw5RjYWGE25HBwu6icDcAwCGvgfIBguNlcbLEgfJDdOGDhj1zx0PktSkicaGigfZC2vYDfvYBcGNl3nJzw5HCMLVCY9IAwCTDgfIBguNktSkicb9ktSkFqO','lY8GrxHHBxbSzsaWmIdIGjqGzMLSBcbHBIbPBNb1DcaRigfZC2vYDcb0AguGyxbWihjLywn0zwqUcI8VcI8ViefNywLUC3qGCgXHEwDYB3vUzc51BM90zxn0lMnVBs9Zy2vUyxjPB3mVyMLNlxrHyMXLlIbezw1VBNn0CMf0zxmGz2v0qNLsB2XLcI8VigzVCIbHigXHyMvSBgvKigLUChv0lcb0ExbLzcbPBNb1Dcb2AweGzMLSBcGPlcbHBMqGysbSB2nHDg9Yig1LDgHVzc1JAgfPBGOVlYaOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhr9ks5MAxjZDcGPksbPBIbHBIbHC3nLCNrPB24UcI8Vifj1BIb3AxrOoIaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdiTzM9YBs1MAwXScGPMDw5JDgLVBIb0zxn0x2zVCM1FzMLSBf9OyxbWEv9WyxrOkcKGEWOGihn0zxaOiKzPBhrLCIb0AguGqMLNifrHyMXLigj5igeGBMfTzsiSicGPid0+ihSkicaGigDVDg8OjY9Zy2vUyxjPB3mVyMLNlxrHyMXLjYK7cIaGicbMAwXSkgDLDej5uM9SzsGNDgv4DgjVEcCSihTUyw1LoIaNrMLSDgvYigj5ig5HBwuNFsKSicDvBweGuxvPBM4NktSkicb9ktSkcIaGC3rLCcGIrMLSDgvYAw5NihjLDMvHBhmGDgHLienSzwfYigzPBhrLCIbJB250CM9SigfUzcbTyxrJAgLUzYbYB3DZiIWGkcKGpt4GEWOGicaGyxnZzxj0vMLZAwjSzsHNzxrcEvjVBguOj2j1DhrVBICSihTUyw1LoIaNq2XLyxiGzMLSDgvYj30PktSkicaGigfZC2vYDfzPC2LIBguOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhq6icDvBweGuxvPBM4NFsKUzMLYC3qOksK7cIaGFsK7cN0k','lMvUDG','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWOGic8VihnHBMrIB3G6ihSGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GyxbPq2fSBcaVihvWBg9HzcaVigrIuxvLCNKGlYbZAgvSBaOGic8VicaGyxbPqMfZzvvYBdOGj2H0DhbZoI8VyxbPlNLVDxiTyxbWlNrLC3qNlcaGicaGlY8GyMfZzsbMB3iGyxbPq2fSBcGNue9tvcCSicCVCgf0AcCSiokaPIKkicaVlYaGihvWBg9HzerPCJOGj3vUB3rLC3qVzML4DhvYzxmNlcaGicaGicaGicaGicaGic8VihjVB3qGzM9YihvWBg9HzcGNzg9JlNbKzICPihbHDgHZoWOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGChjVAMvJDcbYB290lIbvCgXVywrZig1HEqOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GBM90igvZy2fWzsbPDcaOCMvSyxrPDMuGCgf0AhmGB25SEsKUcIaGlY8GicbKyxrHyMfZztOGj3bVC3rNCMvZCwW6lY9SB2nHBgHVC3q6ntqZmI9HChbFDgvZDcCSicaVlYbKyLf1zxj5ic8GzgjfEgvJcIaGlY8GFsWk','DMvYC2LVBG','cN07cG','otmZndCWuhPswvjk','EWOGicjJB21WAwXLCK9WDgLVBNmIoIb7cIaGicaIy2HLy2TkCYi6igzHBhnLlaOGicaGiNrHCMDLDci6icjLCZiWmJiIlaOGicaGiMXPyIi6ifSIzxmYmdiYiL0ScIaGicaIDhLWzxmIoIbBxqOGih0ScIaGiMLUy2X1zguIoIbBcIaGicaIkIOVkI5QCYiScIaGicaIlI4VlNvUB3rLC3qVDhLWzxmVzw52lMqUDhmIlaOGicaGiI4VBM9Kzv9TB2r1BgvZl0b1BM90zxn0l3DLyI90ExbLCY91BM90zxn0lwrZBc5KlNrZiGOGif0kFqO','mZi1nJyYnff5CLDXtG','ChvZAa','icbJAgfUBMvSoIa','Dw5VDgvZDa','BMfTzq','zxHHBxbSzxm','mdeTC21VA2uUANm','ndiWBhn2Cxzp','mte5otK0ngTZrM5jDq','CgfJA2fNzs5QC29U','ANnJB25MAwDkC29U','C2nHzMzVBgrxB3jRC3bHy2u','iYb1BM90zxn0lxDLyIdIGjqGC2vJCMv0ihnJzw5HCMLVihzHCMLHyMXLCY4Gq3jLyxrLzcbIEsbGAw5PDgaSigDPDgLNBM9YzwqUcImkiYbtyw1LieTfwt1wquXvrsbMB3jTyxqGyxmGDw5VDgvZDc8Uzw52lcbIDxqGDMfSDwvZigHLCMuGyxjLihrYzwf0zwqGyxmkiYbtrunsrvq6ihrOzxKGyxjLig1HC2TLzcaOC2HVD24GyxmGyokaUxnLy3jLDdPlrvNIGlPGksbHBNL3AgvYzsb0AguGCNvUBMvYig9YcImGtunqigrLyNvNigXVzYb3B3vSzcbVDgHLCNDPC2uGD3jPDguGDgHLBsdIGjqGzMLSBcGPihzHBhvLCYWGvvjmCYWGzxzHBhvHDgukiYbZDhjPBMDZlIbszwzLCMvUy2uGDgHLBsbPBIbHihnJzw5HCMLVigj5ihrOzwLYigjHCMuGvvbqrvjFu05bs0uGBMfTzsWGDgHLcImGC2fTzsb3yxKGyxmGlMvUDIb2yxjPywjSzxm6cImkiYaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGueftu1DpuKqPoWOJcImGu2vJCMv0CYbHCMuGtK9uigv4Cg9YDgvKihrVihn1yNbYB2nLC3nLCYaOC2HLBgWOksKG4OcuihrOzxKGC3rHEsbPBIb0AgukiYb2yxjPywjSzsbZDg9Yzs4GqsbZDwjWCM9JzxnZihrOyxqGz2vUDwLUzwX5ig5LzwrZig9UzsaOysbSAxn0zw5LCIb3AxrOigekiYb0B2TLBIKGz2v0CYbPDcb2AweGDgHLigv4CgXPy2L0igfSBg93BgLZDcbPBIb1BM90zxn0lMnVBMzPzY4QoGOJicaGC2fUzgjVEdOGEYbLEhbVCNrtzwnYzxrZoIbBj1rps0voj10GFqOJifb1DcbUB24TC2vJCMv0ihzHBhvLCYaOvvjmCYWGzw1HAwXZlcbPzhmPigLUihvUB3rLC3qVlMvUDI4kiWOJiezmruvux0vyqu1qteukte9hsu49cLbbu1nxt1jepqPut0TftJ0k','Dw5VDgvZDenVBMzPz01QCW','iYbuAguGy29SBgvJDgLVBIbHihjLBw90zsbYDw4GC3rHCNrZihDPDgGUcImkiYbbigjVEcbYDw5ZigeGy29SBgvJDgLVBIaOB3iGysbZy2HLzhvSzsKSig5VDcbHihnPBMDSzsbZy2vUyxjPBYbIEsbUyw1LoGOJicaGBNb4ieb1BM90zxn0l3DLyIbIDw5KBguGChvZAcaTlxj1BIaTlwvUDIa8zw52AxjVBM1LBNq+ic0Ty29SBgvJDgLVBIbLEgfTCgXLCWOJcImGvgHLC2uGDhDVigHPDcbWBgf5z3jVDw5KlNvUB3rLC3qUy29TlcbZBYb0Agv5ihbHC3mGyMvMB3jLihLVDxiGB3DUigfWCcbPCWOJihjLywnOywjSzsbMCM9TihrOzsbIB3GUiefKzcb5B3vYig93BIbZy2vUyxjPB3mGDg8GDgHPCYbSAxn0igfZihLVDsb3CML0zqOJihrOzw0Sig9YignVChKGDgHLigzPBguGDw5KzxiGyw5VDgHLCIbUyw1LigzVCIbHignVBgXLy3rPB24GB2yGEw91CIbVD24UcNnJzw5HCMLVCZOkicaTigv4yw1WBgvZlZaXlxnTB2TLcIaGlsbLEgfTCgXLCY8WmI1MB3jTlwzPBgWk','C3rYAw5NAwz5','ANnJB25MAwCUANnVBG','nty5me9jB1roBa','oda5nJGZqLbWq3rx','mJD0yu9Uu0G','oteZsvvfChjQ','lI4VlI4VCgfJA2fNzs5QC29U','C3vPDgvqywnRywDLsNnVBG','x2HLBhbLCNm','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','mZGYnJjiAvbxtKK','ntG0zKrYtxzx','DxrMoa','mJa0ouXnAgDuDa','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','zw52rxHHBxbSzq','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','Dw5VDgvZDc1ZDwL0zq','zgvMAw5LuhjVCgvYDhK'];_0x45bc=function(){return _0x542fce;};return _0x45bc();}
1
+ const _0x400da5=_0x5e04;(function(_0x670533,_0x210aee){const _0x519e3b={_0x497d7:0x1d5,_0x5a9509:0x1e4,_0x13eb5c:0x1ce,_0x377ea5:0x1c1,_0x4567bd:0x1c5,_0x307e1d:0x1dc,_0x102250:0x1d9,_0x2967a5:0x1cf},_0xb47d4e=_0x5e04,_0x1c4c30=_0x670533();while(!![]){try{const _0x16a7f9=-parseInt(_0xb47d4e(_0x519e3b._0x497d7))/0x1*(-parseInt(_0xb47d4e(0x1d0))/0x2)+parseInt(_0xb47d4e(_0x519e3b._0x5a9509))/0x3*(parseInt(_0xb47d4e(_0x519e3b._0x13eb5c))/0x4)+parseInt(_0xb47d4e(0x1cb))/0x5*(-parseInt(_0xb47d4e(_0x519e3b._0x377ea5))/0x6)+parseInt(_0xb47d4e(0x1d4))/0x7+parseInt(_0xb47d4e(_0x519e3b._0x4567bd))/0x8+-parseInt(_0xb47d4e(_0x519e3b._0x307e1d))/0x9*(parseInt(_0xb47d4e(_0x519e3b._0x102250))/0xa)+-parseInt(_0xb47d4e(_0x519e3b._0x2967a5))/0xb;if(_0x16a7f9===_0x210aee)break;else _0x1c4c30['push'](_0x1c4c30['shift']());}catch(_0x139524){_0x1c4c30['push'](_0x1c4c30['shift']());}}}(_0x1c0b,0x968ec));var __defProp=Object[_0x400da5(0x1bd)],__name=(_0x56bcfd,_0x5b4597)=>__defProp(_0x56bcfd,'name',{'value':_0x5b4597,'configurable':!![]});import{mkdir,writeFile}from'fs/promises';import{existsSync}from'fs';import{join}from'path';var templates={'jsconfigJson':'{\x0a\x20\x20\x22compilerOptions\x22:\x20{\x0a\x20\x20\x20\x20\x22checkJs\x22:\x20false,\x0a\x20\x20\x20\x20\x22target\x22:\x20\x22es2022\x22,\x0a\x20\x20\x20\x20\x22lib\x22:\x20[\x22es2022\x22],\x0a\x20\x20\x20\x20\x22types\x22:\x20[]\x0a\x20\x20},\x0a\x20\x20\x22include\x22:\x20[\x0a\x20\x20\x20\x20\x22**/*.js\x22,\x0a\x20\x20\x20\x20\x22../.unotest/types/env.d.ts\x22,\x0a\x20\x20\x20\x20\x22./node_modules/@unotest/web/types/unotest-dsl.d.ts\x22\x0a\x20\x20]\x0a}\x0a','scenarioTemplate':_0x400da5(0x1ca),'agentsMd':_0x400da5(0x1c6),'claudeMdBody':_0x400da5(0x1db),'exampleCollection':'#\x20The\x20collection\x20a\x20remote\x20run\x20starts\x20with.\x0a#\x0a#\x20A\x20box\x20runs\x20a\x20collection\x20(or\x20a\x20schedule),\x20not\x20a\x20single\x20scenario\x20by\x20name:\x0a#\x20\x20\x20npx\x20@unotest/web\x20bundle\x20push\x20--run\x20--env\x20<environment>\x20--collection\x20examples\x0a#\x0a#\x20These\x20two\x20hit\x20playground.unotest.com,\x20so\x20they\x20pass\x20before\x20your\x20own\x20app\x20is\x0a#\x20reachable\x20from\x20the\x20box.\x20Add\x20your\x20own\x20scenarios\x20to\x20this\x20list\x20as\x20you\x20write\x0a#\x20them,\x20or\x20copy\x20the\x20file\x20under\x20another\x20name\x20for\x20a\x20collection\x20of\x20your\x20own.\x0ascenarios:\x0a\x20\x20-\x20examples/01-smoke\x0a\x20\x20-\x20examples/02-form-fill\x0a','examples':{'01-smoke.js':_0x400da5(0x1e2),'02-form-fill.js':'//\x20Example\x2002\x20—\x20fill\x20an\x20input\x20+\x20assert\x20the\x20app\x20reacted.\x0a//\x0a//\x20Against\x20playground.unotest.com/scenarios/big-table.\x20Demonstrates\x20getByRole\x0a//\x20for\x20a\x20labelled\x20input,\x20typed\x20input\x20via\x20fill(),\x20and\x20a\x20locator\x20method-chain\x0a//\x20(getByRole(\x27row\x27).filter({hasText}).first())\x20in\x20an\x20assertion.\x0a//\x20Run\x20with:\x20\x20npx\x20@unotest/web\x20e2e\x20examples/02-form-fill\x0a\x0afunction\x20test_form_fill_happy_path()\x20{\x0a\x20\x20step(\x22Filter\x20the\x20Big\x20Table\x20by\x20a\x20name\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27/scenarios/big-table\x27);\x0a\x20\x20\x20\x20fill(getByRole(\x27textbox\x27,\x20{name:\x20\x27Filter\x20by\x20name\x27}),\x20\x27Uma\x20Quinn\x27);\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Filtering\x20reveals\x20the\x20Clear\x20filter\x20control\x20and\x20matching\x20rows\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20assertVisible(getByRole(\x27button\x27,\x20{name:\x20\x27Clear\x20filter\x27}));\x0a\x20\x20\x20\x20assertVisible(getByRole(\x27row\x27).filter({hasText:\x20\x27Uma\x20Quinn\x27}).first());\x0a\x20\x20});\x0a}\x0a'},'secretsExample':'#\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':_0x400da5(0x1c7)};function _0x1c0b(){const _0x59a9be=['zxHHBxbSzxm','ztjL','mJaXmdK4muDcuLnxvW','mte2ote0neL3t2jREa','lI4VlI4VCgfJA2fNzs5QC29U','icaVlYbJAgfUBMvSoIaNy2HYB21LjYWGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8Gj2nOCM9TzsCGlYaNBxnLzgDLjYaVig51BgWGkgj1BMrSzwqP','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWOGic8VihnHBMrIB3G6ihSGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GyxbPq2fSBcaVihvWBg9HzcaVigrIuxvLCNKGlYbZAgvSBaOGic8VicaGyxbPqMfZzvvYBdOGj2H0DhbZoI8VyxbPlNLVDxiTyxbWlNrLC3qNlcaGicaGlY8GyMfZzsbMB3iGyxbPq2fSBcGNue9tvcCSicCVCgf0AcCSiokaPIKkicaVlYaGihvWBg9HzerPCJOGj3vUB3rLC3qVzML4DhvYzxmNlcaGicaGicaGicaGicaGic8VihjVB3qGzM9YihvWBg9HzcGNzg9JlNbKzICPihbHDgHZoWOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGChjVAMvJDcbYB290lIbvCgXVywrZig1HEqOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GBM90igvZy2fWzsbPDcaOCMvSyxrPDMuGCgf0AhmGB25SEsKUcIaGlY8GicbKyxrHyMfZztOGj3bVC3rNCMvZCwW6lY9SB2nHBgHVC3q6ntqZmI9HChbFDgvZDcCSicaVlYbKyLf1zxj5ic8GzgjfEgvJcIaGlY8GFsWk','mte3mtaWqNLlvfDm','ANnJB25MAwDkC29U','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','nZm4zM96werk','C3vPDgvqywnRywDLsNnVBG','Dw5VDgvZDc5JB25MAwCUBwPZ','x2HLBhbLCNm','ChvZAa','CgfJA2fNzs5QC29U','lY8GrxHHBxbSzsaWmsdIGjqGC21VA2u6ig5HDMLNyxrLicSGy2XPy2SGkYbvuKWGyxnZzxj0Aw9UlGOVlWOVlYbuAguGBwLUAw1HBcb0AhjLzs1ZDgvWihbHDhrLCM4UieHPDhmGCgXHEwDYB3vUzc51BM90zxn0lMnVBsbZBYbUBYbWCM9Qzwn0cI8VihnLDhvWigLZig5LzwrLzc4GuNvUihDPDgG6icbUChGGqhvUB3rLC3qVD2vIiguYzsbLEgfTCgXLCY8Wms1ZBw9RzqOkzNvUy3rPB24GDgvZDf9ZBw9Rzv9WBgf5z3jVDw5KkcKGEWOGihn0zxaOiK9Wzw4GDgHLiejPzYbuywjSzsbZy2vUyxjPBYbMCM9TihrOzsbWBgf5z3jVDw5KigLUzgv4iIWGkcKGpt4GEWOGicaGz290BYGNlYCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDSAw5RjYWGE25HBwu6icDcAwCGvgfIBguNlcbLEgfJDdOGDhj1zx0PktSkicaGigfZC2vYDfvYBcGNl3nJzw5HCMLVCY9IAwCTDgfIBguNktSkicb9ktSkFqO','DxrMoa','mJrOwKDgvhy','mdeTC21VA2uUANm','zgvMAw5LuhjVCgvYDhK','C3rYAw5NAwz5','igHHCYbUBYb1C2fIBguGiNzLCNnPB24IigzPzwXK','CgfYC2u','nJaYotu4ufrdEhPh','lMvUDG','zw52rxHHBxbSzq','CgfJA2fNzs5QC29Uigf0ia','ntG2odq2nhDvquX2zq','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','C3rYAw5N','Dw5VDgvZDenVBMzPz01QCW','lY8Gtw92zsaRihjLBMfTzsb0AgLZigzPBguGDg8GpgzLyxr1CMu+lZX5B3vYx25HBwu+lMPZicHLlMCUcI8Vigf1DgGVBg9NAw4UANmPigfUzcb0AguGzNvUy3rPB24GyMvSB3CGDg8GDgvZDf88Ew91CL9Uyw1LpIGPlIbty2vUyxjPB3mGBgL2zqOVlYbPBIbMzwf0DxjLihn1yMzVBgrLCNmSie5pvcb0AguGztjLihjVB3qG4OcuihrOzsbSAw50zxiGkgXPBNq6C2nLBMfYAw8TAw4TCM9VDcKklY8GCMvQzwn0CYbHihrLC3qGzMLSzsbWBgfJzwqGzgLYzwn0BhKGAw4GDw5VDgvZDc9LmMuVlIbuAguGBg9HzgvYigrLCML2zxmGDgHLcI8VigvUDhj5ig5HBwuGzNjVBsb0AguGzMLSzsbIyxnLBMfTzsdIGjqGA2vIywiTy2fZzsbKyxnOzxmGyMvJB21LihvUzgvYC2nVCMvZlGOklY8GrxzLCNKGzxHLy3v0ywjSzsbZDgvWig11C3qGC2L0igLUC2LKzsbHihn0zxaOiI4UlIiSicGPid0+ihSG4OcMih0PigjSB2nRlIbuAguklY8GDgL0BguGAxmGysbWBgfPBI1fBMDSAxnOigrLC2nYAxb0Aw9Uig9MihrOzsbNCM91CdSGDgHLihn0zxbZigLUC2LKzsbHCMuklY8GDgHLigLTCgXLBwvUDgf0Aw9UlIbhCM91CcbIEsbPBNrLBNqGkfnLDhvWic8Grw50zxiGlYbby3qGlYbbC3nLCNqGB3iklY8GD2HHDgv2zxiGCMvHzhmGD2vSBcKG4Ocuig9UzsbIBg9JAYbWzxiGBg9NAwnHBcbJAhvUAY4kcMz1BMn0Aw9UihrLC3rFEw91CL9Uyw1Lx2HLCMuOksb7cIaGC3rLCcGIu2vLzcbHigTUB3DUihvZzxiGDMLHiercic8GqvbjigzPEhr1CMvZigzYB20Gx2HLBhbLCNmViIWGkcKGpt4GEWOGicaGlY8GicaGD2LWzv9LmMvFDxnLCNmOktSkicaGic8VicaGihvZzxjFAwqGpsbZzwvKx3vZzxiOj2fSAwnLqgv4yw1WBguUy29TjYWGj3nLy3jLDcCPoWOGih0PoWOkicbZDgvWkcjtAwDUigLUigfZihrOzsbZzwvKzwqGDxnLCIiSicGPid0+ihSkicaGigDVDg8Oj2H0DhbZoI8VEw91CI1HChaUDgvZDc9SB2DPBICPoWOGicaGlY8GicaGzMLSBcHNzxrcEuXHyMvSkcDfBwfPBcCPlcaNywXPy2vazxHHBxbSzs5JB20NktSkicaGic8VicaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGj3nLy3jLDcCPoWOGicaGlY8GicaGy2XPy2SOz2v0qNLsB2XLkcDIDxr0B24Nlcb7BMfTztOGj0XVzYbPBID9ksK7cIaGFsK7cGOGihn0zxaOiKfZC2vYDcb0AguGzgfZAgjVyxjKihnOB3DZihrOzsbZAwDUzwqTAw4GDxnLCIiSicGPid0+ihSkicaGic8VicaGigfZC2vYDfvYBcGNl2rHC2HIB2fYzcCPoWOGicaGlY8GicaGyxnZzxj0vgv4DcHNzxrcEvjVBguOj2HLywrPBMCNksWGj1DLBgnVBwuSiefSAwnLjYK7cIaGicaVlYaGicbJB3vUDca9igrIuxvLCNKOj1nftevdvcbJB3vUDcGQksbguK9nihvZzxjZifDirvjfigfJDgL2zsa9ihrYDwuNktSkicaGic8VicaGigfZC2vYDfrYDwuOy291BNqGpIaWlcaNzxHWzwn0zwqGyxqGBgvHC3qGB25LigfJDgL2zsb1C2vYjYK7cIaGFsK7cN0k','ntbOyvfnA2G','DMvYC2LVBG','ANnJB25MAwCUANnVBG','ndC5mJG4AgXICKPA','nJiZmZK5n2vVsxngta','mLrozhnutW','Dw5VDgvZDa'];_0x1c0b=function(){return _0x59a9be;};return _0x1c0b();}function _0x5e04(_0x1a28ad,_0x117f02){_0x1a28ad=_0x1a28ad-0x1bc;const _0x1c0b6f=_0x1c0b();let _0x5e04d1=_0x1c0b6f[_0x1a28ad];if(_0x5e04['OdpeJp']===undefined){var _0x4bae08=function(_0x2df5d3){const _0x39d93c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x56bcfd='',_0x5b4597='';for(let _0x3b8307=0x0,_0x7608b3,_0x4812c7,_0x3b985d=0x0;_0x4812c7=_0x2df5d3['charAt'](_0x3b985d++);~_0x4812c7&&(_0x7608b3=_0x3b8307%0x4?_0x7608b3*0x40+_0x4812c7:_0x4812c7,_0x3b8307++%0x4)?_0x56bcfd+=String['fromCharCode'](0xff&_0x7608b3>>(-0x2*_0x3b8307&0x6)):0x0){_0x4812c7=_0x39d93c['indexOf'](_0x4812c7);}for(let _0x2d5369=0x0,_0x42573a=_0x56bcfd['length'];_0x2d5369<_0x42573a;_0x2d5369++){_0x5b4597+='%'+('00'+_0x56bcfd['charCodeAt'](_0x2d5369)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5b4597);};_0x5e04['vEgScV']=_0x4bae08,_0x5e04['OAgOFX']={},_0x5e04['OdpeJp']=!![];}const _0x1d4f62=_0x1c0b6f[0x0],_0x243585=_0x1a28ad+_0x1d4f62,_0x1c7b47=_0x5e04['OAgOFX'][_0x243585];return!_0x1c7b47?(_0x5e04d1=_0x5e04['vEgScV'](_0x5e04d1),_0x5e04['OAgOFX'][_0x243585]=_0x5e04d1):_0x5e04d1=_0x1c7b47,_0x5e04d1;}function unotestConfigMjs(_0x3b8307){const _0x25eb2b={_0x20d0a3:0x1d7,_0x14ead4:0x1be},_0xfd3522=_0x400da5,_0x7608b3=_0x3b8307===void 0x0?_0xfd3522(_0x25eb2b._0x20d0a3):'\x20\x20channel:\x20'+JSON[_0xfd3522(_0x25eb2b._0x14ead4)](_0x3b8307)+',';return _0xfd3522(0x1d8)+_0x7608b3+'\x0a};\x0a';}__name(unotestConfigMjs,_0x400da5(0x1c9));function suitePackageJson(_0x4812c7){const _0x213aff=_0x400da5;return JSON[_0x213aff(0x1be)]({'name':'unotest-suite','private':!![],'devDependencies':{'@unotest/web':'^'+_0x4812c7}},null,0x2)+'\x0a';}__name(suitePackageJson,_0x400da5(0x1dd));import{readFileSync}from'fs';import{dirname,resolve}from'path';import{fileURLToPath}from'url';function readOwnVersion(){const _0x2eae27={_0x5e3d27:0x1d6,_0x49ab1a:0x1c0,_0x2cc2ff:0x1bf,_0x2b3c88:0x1cc},_0x33350e=_0x400da5,_0x3b985d=dirname(fileURLToPath(import.meta.url)),_0x2d5369=resolve(_0x3b985d,_0x33350e(_0x2eae27._0x5e3d27)),_0x42573a=readFileSync(_0x2d5369,_0x33350e(0x1e3)),_0x31762e=JSON[_0x33350e(_0x2eae27._0x49ab1a)](_0x42573a);if(typeof _0x31762e['version']!==_0x33350e(0x1c8)||_0x31762e[_0x33350e(0x1cc)]['length']===0x0)throw new Error(_0x33350e(0x1c4)+_0x2d5369+_0x33350e(_0x2eae27._0x2cc2ff));return _0x31762e[_0x33350e(_0x2eae27._0x2b3c88)];}__name(readOwnVersion,'readOwnVersion');async function scaffoldWorkspace(_0x565e53,_0x350d96={}){const _0x2920de={_0xaa5a16:0x1d3,_0x4b048b:0x1d2,_0x1fe144:0x1df,_0x210ad6:0x1d1,_0x4bf95e:0x1c3,_0x220ef6:0x1da,_0x2e7668:0x1d2,_0x512661:0x1e0},_0x3bc135=_0x400da5,_0x4072c0=[],_0x4ce41e=[];await mkdir(join(_0x565e53,'unotest',_0x3bc135(_0x2920de._0xaa5a16),_0x3bc135(_0x2920de._0x4b048b)),{'recursive':!![]}),await mkdir(join(_0x565e53,_0x3bc135(0x1d1),_0x3bc135(0x1d3),_0x3bc135(_0x2920de._0x1fe144)),{'recursive':!![]});const _0x1d935b=[{'rel':join(_0x3bc135(0x1d1),_0x3bc135(0x1de)),'content':unotestConfigMjs(_0x350d96['channel'])},{'rel':join(_0x3bc135(_0x2920de._0x210ad6),_0x3bc135(0x1e1)),'content':suitePackageJson(readOwnVersion())},{'rel':join(_0x3bc135(_0x2920de._0x210ad6),_0x3bc135(0x1c2)),'content':templates[_0x3bc135(_0x2920de._0x4bf95e)]},{'rel':join(_0x3bc135(0x1d1),_0x3bc135(0x1cd)),'content':templates[_0x3bc135(_0x2920de._0x220ef6)]},{'rel':join(_0x3bc135(_0x2920de._0x210ad6),_0x3bc135(0x1d3),'examples','01-smoke.js'),'content':templates[_0x3bc135(_0x2920de._0x2e7668)][_0x3bc135(0x1bc)]}];for(const {rel:_0x1b2ed5,content:_0x4af883}of _0x1d935b){const _0x1035fc=join(_0x565e53,_0x1b2ed5);if(existsSync(_0x1035fc)){_0x4ce41e[_0x3bc135(_0x2920de._0x512661)](_0x1b2ed5);continue;}await writeFile(_0x1035fc,_0x4af883),_0x4072c0['push'](_0x1b2ed5);}return{'projectRoot':_0x565e53,'created':_0x4072c0,'skipped':_0x4ce41e};}__name(scaffoldWorkspace,'scaffoldWorkspace');export{scaffoldWorkspace};
@@ -1 +1 @@
1
- var _0x3cd261=_0x1f69;(function(_0x1da5e8,_0x3a6d05){var _0x28a2dc={_0x1daa34:0x12d,_0x1643a4:0x133,_0x1e8eac:0x124,_0x43e2bb:0x12f,_0x566210:0x129,_0x75fcc8:0x130,_0x25b00b:0x12a},_0x432a5d=_0x1f69,_0x208db2=_0x1da5e8();while(!![]){try{var _0x6764dd=parseInt(_0x432a5d(_0x28a2dc._0x1daa34))/0x1+parseInt(_0x432a5d(_0x28a2dc._0x1643a4))/0x2*(parseInt(_0x432a5d(0x12c))/0x3)+-parseInt(_0x432a5d(0x136))/0x4*(-parseInt(_0x432a5d(0x128))/0x5)+parseInt(_0x432a5d(_0x28a2dc._0x1e8eac))/0x6*(-parseInt(_0x432a5d(0x123))/0x7)+-parseInt(_0x432a5d(_0x28a2dc._0x43e2bb))/0x8*(parseInt(_0x432a5d(_0x28a2dc._0x566210))/0x9)+-parseInt(_0x432a5d(_0x28a2dc._0x75fcc8))/0xa+parseInt(_0x432a5d(_0x28a2dc._0x25b00b))/0xb;if(_0x6764dd===_0x3a6d05)break;else _0x208db2['push'](_0x208db2['shift']());}catch(_0x21ed77){_0x208db2['push'](_0x208db2['shift']());}}}(_0x4e34,0xd6a79));import{fileURLToPath}from'url';import{dirname,resolve}from'path';import{spawn}from'child_process';import{existsSync}from'fs';function _0x1f69(_0x38adec,_0x1a63cb){_0x38adec=_0x38adec-0x123;var _0x4e3415=_0x4e34();var _0x1f699b=_0x4e3415[_0x38adec];if(_0x1f69['RxDDts']===undefined){var _0x2c4154=function(_0x53981f){var _0x28fec6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x2ad7f5='',_0x2ed4ff='';for(var _0x13b06f=0x0,_0x529228,_0x49aa23,_0x397d6f=0x0;_0x49aa23=_0x53981f['charAt'](_0x397d6f++);~_0x49aa23&&(_0x529228=_0x13b06f%0x4?_0x529228*0x40+_0x49aa23:_0x49aa23,_0x13b06f++%0x4)?_0x2ad7f5+=String['fromCharCode'](0xff&_0x529228>>(-0x2*_0x13b06f&0x6)):0x0){_0x49aa23=_0x28fec6['indexOf'](_0x49aa23);}for(var _0x301e48=0x0,_0x128d6b=_0x2ad7f5['length'];_0x301e48<_0x128d6b;_0x301e48++){_0x2ed4ff+='%'+('00'+_0x2ad7f5['charCodeAt'](_0x301e48)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2ed4ff);};_0x1f69['NbInNU']=_0x2c4154,_0x1f69['yzhLmO']={},_0x1f69['RxDDts']=!![];}var _0x5d0bd9=_0x4e3415[0x0],_0x1f160e=_0x38adec+_0x5d0bd9,_0x120ecd=_0x1f69['yzhLmO'][_0x1f160e];return!_0x120ecd?(_0x1f699b=_0x1f69['NbInNU'](_0x1f699b),_0x1f69['yzhLmO'][_0x1f160e]=_0x1f699b):_0x1f699b=_0x120ecd,_0x1f699b;}var here=dirname(fileURLToPath(import.meta.url)),candidates=[resolve(here,_0x3cd261(0x127)),resolve(here,'../../../examples/fixtures/break-fix-app/serve.mjs')],serverEntry=candidates[_0x3cd261(0x135)](_0x2ad7f5=>existsSync(_0x2ad7f5));!serverEntry&&(process[_0x3cd261(0x131)][_0x3cd261(0x132)](_0x3cd261(0x134)+candidates['map'](_0x2ed4ff=>'\x20\x20'+_0x2ed4ff+'\x0a')[_0x3cd261(0x125)]('')+'Did\x20you\x20publish\x20without\x20examples/fixtures/?\x0a'),process[_0x3cd261(0x137)](0x1));var child=spawn(process[_0x3cd261(0x12b)],[serverEntry,...process[_0x3cd261(0x12e)][_0x3cd261(0x126)](0x2)],{'stdio':'inherit'});function _0x4e34(){var _0x30abbe=['mZbgtvPcrMO','nJn4v3HgrLi','mZe0mtK5ndLHswHABK8','zxHLy1bHDgG','mta4ndq3A1jhEMDm','otu4mdi3uwXvwxH2','yxjNDG','mte2mduZnKvmu1jvuq','mtiYmJq2ntbUCMTprhG','C3rKzxjY','D3jPDgu','mJbXv0Hywva','C2vYDMuTzML4DhvYztOGy2fUBM90igXVy2f0zsbMAxH0DxjLihnLCNzLCIbLBNrYEs4GvhjPzwq6cG','zMLUza','mta1nJH0sgjMD1C','zxHPDa','n3rWDKXRqG','nJq0nZqXngXcv1nJwa','AM9PBG','C2XPy2u','lI4VlI4VzxHHBxbSzxmVzML4DhvYzxmVyNjLywSTzML4lwfWCc9Zzxj2zs5TANm'];_0x4e34=function(){return _0x30abbe;};return _0x4e34();}child['on'](_0x3cd261(0x137),_0x13b06f=>process[_0x3cd261(0x137)](_0x13b06f??0x1));
1
+ var _0x5221df=_0xbc57;(function(_0x26f603,_0x2e416e){var _0x26de2f={_0x1fd071:0x1a8,_0x372682:0x1b3,_0x57d430:0x1a0,_0x2c8ca4:0x1a3,_0x3d25d7:0x1af,_0x36cddc:0x1a6},_0x5cff18=_0xbc57,_0x26cdf1=_0x26f603();while(!![]){try{var _0x13a85b=-parseInt(_0x5cff18(_0x26de2f._0x1fd071))/0x1*(parseInt(_0x5cff18(0x1a2))/0x2)+parseInt(_0x5cff18(_0x26de2f._0x372682))/0x3+-parseInt(_0x5cff18(0x1a5))/0x4*(-parseInt(_0x5cff18(_0x26de2f._0x57d430))/0x5)+parseInt(_0x5cff18(0x1b0))/0x6*(-parseInt(_0x5cff18(0x1a1))/0x7)+parseInt(_0x5cff18(_0x26de2f._0x2c8ca4))/0x8+parseInt(_0x5cff18(0x1ae))/0x9+parseInt(_0x5cff18(_0x26de2f._0x3d25d7))/0xa*(-parseInt(_0x5cff18(_0x26de2f._0x36cddc))/0xb);if(_0x13a85b===_0x2e416e)break;else _0x26cdf1['push'](_0x26cdf1['shift']());}catch(_0x1b6095){_0x26cdf1['push'](_0x26cdf1['shift']());}}}(_0x6ae7,0x66d1f));import{fileURLToPath}from'url';import{dirname,resolve}from'path';import{spawn}from'child_process';function _0x6ae7(){var _0x1ef9a7=['nhfjCg9UCW','D3jPDgu','zxHPDa','zxHLy1bHDgG','BwfW','C2XPy2u','mtuZmJC3mK9PqxruBa','mteWqwL5ww5U','mtK4AwXiD0Tv','AM9PBG','lI4VlI4VlI4VzxHHBxbSzxmVzML4DhvYzxmVyNjLywSTzML4lwfWCc9Zzxj2zs5TANm','mJq0ode3nhHwzu9hAG','mZG1zffnwMz1','mtu2mdnoyNz3yvK','mZq0mJy0yKjWsK9U','ndq5odq5nM1Kz0Hmqq','yxjNDG','mZG2mgruuw5rCW','ndm5nZq3svnLDhvn','zMLUza'];_0x6ae7=function(){return _0x1ef9a7;};return _0x6ae7();}import{existsSync}from'fs';var here=dirname(fileURLToPath(import.meta.url)),candidates=[resolve(here,'../../examples/fixtures/break-fix-app/serve.mjs'),resolve(here,_0x5221df(0x1b2))],serverEntry=candidates[_0x5221df(0x1a7)](_0x5cefc4=>existsSync(_0x5cefc4));!serverEntry&&(process['stderr'][_0x5221df(0x1a9)]('serve-fixture:\x20cannot\x20locate\x20fixture\x20server\x20entry.\x20Tried:\x0a'+candidates[_0x5221df(0x1ac)](_0x5d9a56=>'\x20\x20'+_0x5d9a56+'\x0a')[_0x5221df(0x1b1)]('')+'Did\x20you\x20publish\x20without\x20examples/fixtures/?\x0a'),process[_0x5221df(0x1aa)](0x1));function _0xbc57(_0x452001,_0x12de77){_0x452001=_0x452001-0x1a0;var _0x6ae752=_0x6ae7();var _0xbc5794=_0x6ae752[_0x452001];if(_0xbc57['BDIQDf']===undefined){var _0x3374fb=function(_0x39e0c8){var _0xd4949a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x5cefc4='',_0x5d9a56='';for(var _0x503065=0x0,_0x22095a,_0x8b6ca2,_0x5de1c2=0x0;_0x8b6ca2=_0x39e0c8['charAt'](_0x5de1c2++);~_0x8b6ca2&&(_0x22095a=_0x503065%0x4?_0x22095a*0x40+_0x8b6ca2:_0x8b6ca2,_0x503065++%0x4)?_0x5cefc4+=String['fromCharCode'](0xff&_0x22095a>>(-0x2*_0x503065&0x6)):0x0){_0x8b6ca2=_0xd4949a['indexOf'](_0x8b6ca2);}for(var _0x33e500=0x0,_0x2b8656=_0x5cefc4['length'];_0x33e500<_0x2b8656;_0x33e500++){_0x5d9a56+='%'+('00'+_0x5cefc4['charCodeAt'](_0x33e500)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5d9a56);};_0xbc57['xsKjbD']=_0x3374fb,_0xbc57['NwVyLS']={},_0xbc57['BDIQDf']=!![];}var _0x438c46=_0x6ae752[0x0],_0x369e8b=_0x452001+_0x438c46,_0x376bcb=_0xbc57['NwVyLS'][_0x369e8b];return!_0x376bcb?(_0xbc5794=_0xbc57['xsKjbD'](_0xbc5794),_0xbc57['NwVyLS'][_0x369e8b]=_0xbc5794):_0xbc5794=_0x376bcb,_0xbc5794;}var child=spawn(process[_0x5221df(0x1ab)],[serverEntry,...process[_0x5221df(0x1a4)][_0x5221df(0x1ad)](0x2)],{'stdio':'inherit'});child['on']('exit',_0x503065=>process['exit'](_0x503065??0x1));
@@ -1 +1 @@
1
- const _0xa13976=_0x1d3a;(function(_0x248559,_0x469ba4){const _0x43c592={_0xcdcab8:0x1c1,_0x1d386b:0x1cd,_0x4535fb:0x219,_0x13cbc5:0x247,_0xf0a847:0x20a},_0x208ae6=_0x1d3a,_0x268962=_0x248559();while(!![]){try{const _0x401332=-parseInt(_0x208ae6(0x212))/0x1+parseInt(_0x208ae6(0x19b))/0x2*(-parseInt(_0x208ae6(0x223))/0x3)+-parseInt(_0x208ae6(_0x43c592._0xcdcab8))/0x4*(-parseInt(_0x208ae6(0x1f5))/0x5)+-parseInt(_0x208ae6(_0x43c592._0x1d386b))/0x6*(-parseInt(_0x208ae6(0x21e))/0x7)+-parseInt(_0x208ae6(_0x43c592._0x4535fb))/0x8+parseInt(_0x208ae6(_0x43c592._0x13cbc5))/0x9*(parseInt(_0x208ae6(0x1cb))/0xa)+parseInt(_0x208ae6(0x1b1))/0xb*(parseInt(_0x208ae6(_0x43c592._0xf0a847))/0xc);if(_0x401332===_0x469ba4)break;else _0x268962['push'](_0x268962['shift']());}catch(_0x3f1491){_0x268962['push'](_0x268962['shift']());}}}(_0x2e8f,0x9aca9));var __defProp=Object[_0xa13976(0x245)],__name=(_0x996fc3,_0x5731e7)=>__defProp(_0x996fc3,_0xa13976(0x1cf),{'value':_0x5731e7,'configurable':!![]});import{UnsupportedRunKindError}from'@unotest/protocol';import{readFileSync}from'fs';import{createRequire}from'module';import{dirname,join}from'path';import{existsSync as _0x4e11a9}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){const _0x54dee1={_0xb2c2ea:0x1ce},_0x38d39b=_0xa13976;for(const _0x57b7ba of[probeChrome,probeEdge,probeChromeBeta]){const _0x13124f=_0x57b7ba();if(_0x13124f[_0x38d39b(_0x54dee1._0xb2c2ea)]!==null)return _0x13124f;}return{'channel':null};}__name(probeSystemBrowser,_0xa13976(0x239));function probeChrome(){const _0x3e33fb={_0x5c6a9:0x1b9,_0x201c4e:0x1a8},_0x28f9ff=_0xa13976,_0x4c114e=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x4c114e)return{'channel':_0x28f9ff(_0x3e33fb._0x5c6a9),'path':_0x4c114e,'label':_0x28f9ff(_0x3e33fb._0x201c4e)};return{'channel':null};}__name(probeChrome,_0xa13976(0x195));function probeEdge(){const _0x3e2c5=_0xa13976,_0x786834=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x786834)return{'channel':_0x3e2c5(0x1be),'path':_0x786834,'label':_0x3e2c5(0x1bd)};return{'channel':null};}__name(probeEdge,_0xa13976(0x1d6));function probeChromeBeta(){const _0x5f27aa={_0x50dfea:0x1d9,_0x4589ba:0x210},_0x62b731=_0xa13976,_0x550017=firstExistingPath(CHROME_BETA_PATHS);if(_0x550017)return{'channel':_0x62b731(_0x5f27aa._0x50dfea),'path':_0x550017,'label':_0x62b731(_0x5f27aa._0x4589ba)};return{'channel':null};}__name(probeChromeBeta,_0xa13976(0x203));var CHROME_PATHS=((()=>{const _0x4ef24e={_0x4aab99:0x197,_0x38ec7:0x22e,_0x2ac8b7:0x214,_0xf2c171:0x1fc,_0x24a4e2:0x1ff,_0x186dcb:0x201},_0x2f137d=_0xa13976;switch(process['platform']){case _0x2f137d(_0x4ef24e._0x4aab99):return[_0x2f137d(_0x4ef24e._0x38ec7)];case _0x2f137d(_0x4ef24e._0x2ac8b7):return[process['env'][_0x2f137d(_0x4ef24e._0xf2c171)]+'\x5cGoogle\x5cChrome\x5cApplication\x5cchrome.exe',process[_0x2f137d(0x22d)][_0x2f137d(0x233)]+_0x2f137d(0x243),process['env']['LOCALAPPDATA']+_0x2f137d(0x243)];default:return[_0x2f137d(_0x4ef24e._0x24a4e2),'/usr/bin/google-chrome-stable',_0x2f137d(0x1fb),_0x2f137d(_0x4ef24e._0x186dcb),'/usr/bin/chromium-browser'];}})()),CHROME_BIN_NAMES=['google-chrome',_0xa13976(0x207),_0xa13976(0x1f3),'chromium-browser'],EDGE_PATHS=((()=>{const _0x240685={_0x8f696f:0x22c,_0x39d652:0x1a3,_0x3bd867:0x23b},_0x399ab3=_0xa13976;switch(process[_0x399ab3(0x1bb)]){case _0x399ab3(0x197):return[_0x399ab3(_0x240685._0x8f696f)];case _0x399ab3(0x214):return[process[_0x399ab3(0x22d)][_0x399ab3(0x1fc)]+_0x399ab3(_0x240685._0x39d652),process[_0x399ab3(0x22d)][_0x399ab3(0x233)]+_0x399ab3(0x1a3)];default:return[_0x399ab3(_0x240685._0x3bd867),'/usr/bin/microsoft-edge-stable'];}})()),EDGE_BIN_NAMES=['microsoft-edge',_0xa13976(0x19d)],CHROME_BETA_PATHS=((()=>{const _0x2f871a={_0x545b4b:0x225,_0x1cae9c:0x1fc},_0x41ad3f=_0xa13976;switch(process[_0x41ad3f(0x1bb)]){case _0x41ad3f(0x197):return[_0x41ad3f(_0x2f871a._0x545b4b)];case _0x41ad3f(0x214):return[process[_0x41ad3f(0x22d)][_0x41ad3f(_0x2f871a._0x1cae9c)]+_0x41ad3f(0x191)];default:return[_0x41ad3f(0x222)];}})());function firstExistingPath(_0x117920){const _0x28fe7c=_0xa13976;for(const _0x419d5a of _0x117920){if(!_0x419d5a||_0x419d5a[_0x28fe7c(0x22b)](_0x28fe7c(0x1a2)))continue;if(existsSync(_0x419d5a))return _0x419d5a;}return null;}__name(firstExistingPath,_0xa13976(0x244));function whichOf(_0x26bdd5){const _0x53110b={_0x756143:0x1d1},_0x549f58=_0xa13976;if(process[_0x549f58(0x1bb)]===_0x549f58(0x214))return void 0x0;for(const _0x2c9a5e of _0x26bdd5){try{const _0x12ba2c=execFileSync('which',[_0x2c9a5e],{'encoding':'utf8'})[_0x549f58(0x1a4)]();if(_0x12ba2c[_0x549f58(_0x53110b._0x756143)]>0x0&&existsSync(_0x12ba2c))return _0x12ba2c;}catch{}}return void 0x0;}__name(whichOf,'whichOf');function runEnvironmentChecks(_0x2fb39f={}){const _0x2bfe90=_0xa13976,_0x2fcc7f=_0x2fb39f[_0x2bfe90(0x199)]??process['cwd']();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x2fcc7f)];}function _0x2e8f(){const _0x1e6916=['mJmWBNLfzxzd','Aw50rw52','ndeZnde4mfPnveXhtq','y2HHBM5LBa','BMfTzq','yxbWu2vYDMvYqxjNCW','BgvUz3rO','zxjYB3i','Axnoyu4','y2fUBM90ihjLywnOihrOzsbQDwrNzsbZzxj2AwnLigf0ia','DMvYzgLJDa','ChjVyMvfzgDL','ls1ICMvHAW','C3rYAw5NAwz5','y2HYB21LlwjLDge','AgvHBhrOvgLTzw91De1Z','DgLTzw91Da','ksdIGjqGAxmGyg5WEcbaDw5VDgvZDc9QDwrNzwaGCNvUBMLUzYWGyw5KigrVzxmGvu5pvevtvf9kvurhrv9vuKWGCg9PBNqGyxqGAxq/','CMvHzhK','AM9PBG','y29SBgvJDgLVBG','uhjLyw1IBgvkDwrNzq','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','yxr0zw1WDhm','A2LUza','u3LZDgvTigjYB3DZzxi','AgvHzgvK','C3rHDhvZ','C2vUza','CMvHC29U','AgvHBhrO','igLZig5VDcbYzwfKEsaO','Aw5PDcb3AwXSig9MzMvYihrVigrVD25SB2fKigj1BMrSzwqGq2HYB21PDw0Gkh4XntaGtuiPlIbbBhrLCM5HDgL2zwX5lcbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4U','khvUA25VD24P','yMLU','D2fYBMLUzW','vgfYz2v0igrPCMvJDg9YEq','ihjLCgXPzwqG','sNvKz2vvBMf2ywLSywjSzuvYCM9Y','ANvKz2uGC2vYDMLJzsbHDca','y2HYB21PDw0','C3vWCg9YDgvKs2LUzhm','nvfyEwX6uq','DxjS','yMfPBa','ls1Kzwj1zW','zMfJDg9YEq','CMvTB3rL','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','uhjVz3jHBuzPBgvZ','igrPzcbUB3qGyw5ZD2vYihDPDgHPBIa','DxrMoa','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','CgfZC3DVCMq','l3vZCI9IAw4Vy2HYB21PDw0','yxbWBgLJyxrPB24VANnVBG','ChjVyMvdAhjVBwvczxrH','yNjLywTWB2LUDhm','CgfYC2vjBNq','ChjVAMvJDfjVB3q','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','teXnigP1zgDLicHHC3nLCNrkDwrNzsK','oIbUB3qGCMvHzhK','oda0C2vLzhPM','q29UzMLNrxjYB3i','tM9Kzs5QCYb2zxjZAw9U','C2HVD24','zMv0y2HjBxbS','l3bHy2THz2uUANnVBG','r29Vz2XLienOCM9TzsbczxrH','BxmG','nti1mtbpCvfIsgq','B2jQzwn0','D2LUmZi','ANvKz2u','CMvWBgfJzq','Cgf0Aa','Bw9KzwW','nZuXmti5nKXbAg95yW','CgLJA0jPBG','ue9tva','ANvKz2veB2n0B3jdAgvJAW','igrVzxmGBM90igv4Axn0','n3zrqvnTvq','Dg9Rzw4','ihjLCgXPzwqGD2L0Ag91DcbHihzLCMrPy3qG4OcuihzLCNnPB24GBwLZBwf0y2G/','Aw5Uzxi','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','mJDTANzzqwW','ihvUC2v0ksdIGjqGysbZy2vUyxjPBYb0Agf0ignHBgXZigfZC2vYDeP1zgDLigLZihjLzNvZzwqGyMvMB3jLigL0CYbMAxjZDcbZDgvW','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','BwvZC2fNzq','Bg9JywW','kg5VihjLyxnVBMLUzYK','kg5VDcbHifvstcK','qhvUB3rLC3qVD2vI','C3rHCNrZv2L0Aa','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','zw52','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','Bw9Kzq','DMvYC2LVBNm','CMvZB2X2zvjLBw90zuP1zgDLrw52','pxjLBw90zsbYzxf1AxjLCYa','uhjVz3jHBuzPBgvZkhG4nIK','zgvIDwC','CMvZB2X2zujPBG','BM8Gq2HYB21Lic8GrwrNzsaVienOCM9TAxvTigrLDgvJDgvK','DgHLigP1zgDLihnLCNzPy2uGyxqG','qMvHCMvYia','ChjVyMvtExn0zw1cCM93C2vY','yxv0Ag9YAw5N','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','DMfSDwvZ','vu5pvevtvf9kvurhrv9vuKWGy2fYCMLLCYbHihvZzxiGB3iGCgfZC3DVCMqSihDOAwnOigzLDgnOihjLzNvZzxmGDg8GC2vUzcdIGjqGz2L2zsb0AguGC2vYDMLJzsDZihrVA2vUigfZifvot1rfu1rFsLver0vFve9lru4GAw5ZDgvHzcaOANvKz2uGC2vYDMLJzsbHDca','C2nOzwr1BgvZ','vu5pvevtvf9kvurhrv9nt0rfig11C3qGyMuGiM9MzIiSicjSB2nHBciGB3iGiNjLBw90zsiSigDVDcaI','B2zMicG','Dw5Zzw5KywjSzq','igzVDw5K','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','zMLYC3rfEgLZDgLUz1bHDgG','zgvMAw5LuhjVCgvYDhK','CgfYC2u','mJaWnti5Dhzuyvjn','D29YA2vYCW','vgLTzw91DevYCM9Y','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','B3jPz2LU','C3bSAxq','Dw5HDxrOB3jPEMvK','ChjVyMvdAhjVBwu','ls13B3jRzxjZpq','zgfYD2LU','ztjL','y3DK','Bg9Hza','mtm1odm4vwfPuuHs','yNvPBgrfBNy','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','CNvICMLJ','C2HVD0P1zgDLvxjS','ChvZAa','DgfYz2v0ia','Dw5KzwzPBMvK','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','DhjPBq','CgfZCW','Cgf0Ag5HBwu','yNvPBgrbCMDZ','r29Vz2XLienOCM9Tzq','4OcuigLZigbUChGGqhvUB3rLC3qVANvKz2vGihj1BM5PBMCSigfUzcbKB2vZifvot1rfu1rFsLver0vFvvjmihbVAw50igf0igL0pW','yNvPBgrkDwrNzuzYB21fBNy','C3rYAw5N','tgf6EuP1zgDL','BM9Kzq','oIbYzwfKEq','zMfPBa','ihbHy2THz2uUANnVBIbKzwnSyxjLCYbUBYaNyMLUjYbMAwvSzcdIGjqGyNjVA2vUigLUC3rHBgW/','ote5odjlBuXbDLO','ig11C3qGyMuGyw4GAw50zwDLCIbPBIbBmtaWmcWGnJaWmdaWxsWGz290ici','Bg9JywWGANvKz2uGzMfPBgvKoIa','q3jLyxrLihrOzsbKAxjLy3rVCNKGB3iGCNvUigLUAxqGAw4Gyw4GzxHPC3rPBMCGChjVAMvJDcbYB290lG','CMvZB2X2zuP1zgDLuhjLyw1IBgu','yxv0Ag9Y','v2vIuNvUBMvYqwrHChrLCG','sw5ZDgfSBcboB2rLidiWkYb2AweGBNzTic8GzM5Tic8GDM9SDgeGyw5KihjLlxj1BI4','y2HYB21L','C2nLBMfYAw8','CgXHDgzVCM0','yMfZzvvYBa','twLJCM9ZB2z0ievKz2u','BxnLzgDL','y2fUugfYC2u','BgfIzwW','mtG5otG4ng1VBwreCq','DgHLBG','ANnVBG','ChjLyw1IBgu','Bg9HzgLUzW','B2zM','y29Kzq','ChjVDMLKzxi','C2nOzwr1BgvZqxjNCW','CNvUrw52AxjVBM1LBNrdAgvJA3m'];_0x2e8f=function(){return _0x1e6916;};return _0x2e8f();}__name(runEnvironmentChecks,_0xa13976(0x1ca));function checkNodeVersion(){const _0x4bf8cc={_0x3f4859:0x230,_0x1f2894:0x193,_0x2b4bea:0x20c,_0x5d864a:0x1d2,_0x89ee01:0x1e1},_0x2450d0=_0xa13976,_0x4f70d5=process[_0x2450d0(_0x4bf8cc._0x3f4859)][_0x2450d0(0x1ad)],_0x4f1174=Number(_0x4f70d5[_0x2450d0(_0x4bf8cc._0x1f2894)]('.')[0x0]);if(!Number['isFinite'](_0x4f1174)||_0x4f1174<0x14)return{'name':_0x2450d0(_0x4bf8cc._0x2b4bea),'severity':_0x2450d0(_0x4bf8cc._0x5d864a),'message':_0x2450d0(_0x4bf8cc._0x89ee01)+_0x4f70d5+')','detail':_0x2450d0(0x1b8)};return{'name':_0x2450d0(0x20c),'severity':'ok','message':_0x4f70d5};}function _0x1d3a(_0x1bf47a,_0x14190d){_0x1bf47a=_0x1bf47a-0x190;const _0x2e8fa3=_0x2e8f();let _0x1d3a85=_0x2e8fa3[_0x1bf47a];if(_0x1d3a['WqieaC']===undefined){var _0x295c24=function(_0x3abd64){const _0x53eb52='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4e11a9='',_0x55dd94='';for(let _0x11c28f=0x0,_0x996fc3,_0x5731e7,_0x57b7ba=0x0;_0x5731e7=_0x3abd64['charAt'](_0x57b7ba++);~_0x5731e7&&(_0x996fc3=_0x11c28f%0x4?_0x996fc3*0x40+_0x5731e7:_0x5731e7,_0x11c28f++%0x4)?_0x4e11a9+=String['fromCharCode'](0xff&_0x996fc3>>(-0x2*_0x11c28f&0x6)):0x0){_0x5731e7=_0x53eb52['indexOf'](_0x5731e7);}for(let _0x13124f=0x0,_0x4c114e=_0x4e11a9['length'];_0x13124f<_0x4c114e;_0x13124f++){_0x55dd94+='%'+('00'+_0x4e11a9['charCodeAt'](_0x13124f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55dd94);};_0x1d3a['NRsvZp']=_0x295c24,_0x1d3a['CVEWib']={},_0x1d3a['WqieaC']=!![];}const _0x4a5df2=_0x2e8fa3[0x0],_0xd218a3=_0x1bf47a+_0x4a5df2,_0x480d74=_0x1d3a['CVEWib'][_0xd218a3];return!_0x480d74?(_0x1d3a85=_0x1d3a['NRsvZp'](_0x1d3a85),_0x1d3a['CVEWib'][_0xd218a3]=_0x1d3a85):_0x1d3a85=_0x480d74,_0x1d3a85;}__name(checkNodeVersion,'checkNodeVersion');function checkSystemBrowser(){const _0x5bc49a={_0x1795de:0x1e4,_0x1a3686:0x1c0,_0x43ef14:0x242,_0x404cdf:0x217,_0x3380d4:0x1ee,_0x19971c:0x236},_0x6fd0f6=_0xa13976,_0x3f7038=probeSystemBrowser();if(_0x3f7038[_0x6fd0f6(0x1ce)]!==null)return{'name':_0x6fd0f6(_0x5bc49a._0x1795de),'severity':'ok','message':_0x3f7038[_0x6fd0f6(_0x5bc49a._0x1a3686)]+_0x6fd0f6(_0x5bc49a._0x43ef14),'detail':_0x3f7038[_0x6fd0f6(_0x5bc49a._0x404cdf)]};return{'name':_0x6fd0f6(0x1e4),'severity':_0x6fd0f6(_0x5bc49a._0x3380d4),'message':_0x6fd0f6(_0x5bc49a._0x19971c),'detail':_0x6fd0f6(0x1eb)};}__name(checkSystemBrowser,'checkSystemBrowser');function checkWritableCwd(_0x1536f0){const _0x34cf9a={_0x5d1f3f:0x1a1,_0x3b9e55:0x21d,_0x525e2b:0x1b4,_0x2ed557:0x1ef},_0x4a1533=_0xa13976;if(!_0x4e11a9(_0x1536f0))return{'name':_0x4a1533(0x1ef),'severity':_0x4a1533(0x1d2),'message':_0x4a1533(_0x34cf9a._0x5d1f3f)+_0x1536f0+_0x4a1533(_0x34cf9a._0x3b9e55),'detail':_0x4a1533(_0x34cf9a._0x525e2b)};return{'name':_0x4a1533(_0x34cf9a._0x2ed557),'severity':'ok','message':_0x1536f0};}__name(checkWritableCwd,'checkWritableCwd');import{JUDGE_ENV as _0x55dd94}from'@unotest/protocol';import{JUDGE_ENV}from'@unotest/protocol';function resolveJudgeMode(_0x375551){const _0x6d96b5={_0x1c7f59:0x22f,_0x2876f0:0x1c6,_0x213d66:0x23f},_0xeb4c24=_0xa13976,_0x4f6835=_0x375551[JUDGE_ENV[_0xeb4c24(_0x6d96b5._0x1c7f59)]];if(_0x4f6835===void 0x0||_0x4f6835===''||_0x4f6835===_0xeb4c24(_0x6d96b5._0x2876f0))return _0xeb4c24(_0x6d96b5._0x2876f0);if(_0x4f6835===_0xeb4c24(0x227)||_0x4f6835===_0xeb4c24(0x1fa))return _0x4f6835;throw new Error(_0xeb4c24(_0x6d96b5._0x213d66)+_0x4f6835+'\x22.\x20Unset\x20it\x20(or\x20\x22off\x22)\x20to\x20disable\x20assertJudge.');}__name(resolveJudgeMode,'resolveJudgeMode');var DEFAULT_REMOTE_TIMEOUT_MS=0xea60;function resolveRemoteJudgeEnv(_0x50cb4d){const _0x1562d9={_0x8e3939:0x1f6,_0x44ccd5:0x21f},_0x5044e8=_0xa13976,_0xea6c0e=_0x50cb4d[JUDGE_ENV[_0x5044e8(_0x1562d9._0x8e3939)]];if(!_0xea6c0e)throw new Error(JUDGE_ENV[_0x5044e8(0x22f)]+_0x5044e8(0x232)+JUDGE_ENV[_0x5044e8(0x1f6)]+'\x20(the\x20judge\x20service\x20URL,\x20e.g.\x20http://127.0.0.1:8790\x20from\x20`npx\x20@unotest/judge`)');const _0x563963={'baseUrl':_0xea6c0e,'timeoutMs':intEnv(_0x50cb4d,JUDGE_ENV['requestTimeoutMs'],DEFAULT_REMOTE_TIMEOUT_MS)},_0x448301=_0x50cb4d[JUDGE_ENV[_0x5044e8(0x21f)]];if(_0x448301)_0x563963[_0x5044e8(_0x1562d9._0x44ccd5)]=_0x448301;return _0x563963;}__name(resolveRemoteJudgeEnv,_0xa13976(0x231));function resolveJudgePreamble(_0x496b7a){const _0x57852a={_0x3070a8:0x1c4,_0xc5220a:0x1a4},_0x2c85db=_0xa13976,_0x35ddda=_0x496b7a[JUDGE_ENV[_0x2c85db(_0x57852a._0x3070a8)]]?.[_0x2c85db(_0x57852a._0xc5220a)]();return _0x35ddda?_0x35ddda:void 0x0;}__name(resolveJudgePreamble,_0xa13976(0x1b5));function intEnv(_0x4c08cb,_0x5d7c02,_0x7e039e){const _0x5e7277={_0x24ad74:0x205},_0x9b4543=_0xa13976,_0x53cb39=_0x4c08cb[_0x5d7c02];if(_0x53cb39===void 0x0||_0x53cb39==='')return _0x7e039e;const _0x43888f=Number[_0x9b4543(_0x5e7277._0x24ad74)](_0x53cb39,0xa);if(Number[_0x9b4543(0x1d3)](_0x43888f)||_0x43888f<0x3e8||_0x43888f>0x927c0)throw new Error(_0x5d7c02+_0x9b4543(0x1b2)+_0x53cb39+'\x22');return _0x43888f;}__name(intEnv,_0xa13976(0x1cc));import{JUDGE_ENV as _0x11c28f}from'@unotest/protocol';import{UnotestError}from'@unotest/core';var ConfigError=class extends UnotestError{static{__name(this,_0xa13976(0x20b));}},JudgeUnavailableError=class extends UnotestError{static{__name(this,_0xa13976(0x1f1));}};async function buildLocalJudge(_0x26a974){const _0x5bcedc={_0x5c8cc7:0x1b3},_0x46997d=_0xa13976;let _0x249722;try{_0x249722=await import('@unotest/judge');}catch(_0x41000a){const _0x24327a=_0x41000a instanceof Error?_0x41000a[_0x46997d(0x226)]:String(_0x41000a);throw new ConfigError('UNOTEST_JUDGE_MODE=local\x20needs\x20@unotest/judge\x20installed\x20in\x20the\x20project\x20(`npm\x20i\x20-D\x20@unotest/judge`),\x20or\x20use\x20UNOTEST_JUDGE_MODE=remote\x20with\x20a\x20running\x20service\x20(`npx\x20@unotest/judge`).\x20Import\x20failed\x20with:\x20'+_0x24327a);}let _0x7b92e3;try{_0x7b92e3=_0x249722['createJudgeServiceFromEnv'](_0x26a974);}catch(_0x2cf570){throw new ConfigError('UNOTEST_JUDGE_MODE=local:\x20'+(_0x2cf570 instanceof Error?_0x2cf570[_0x46997d(0x226)]:String(_0x2cf570)));}return{async 'ready'(){},async 'judge'(_0x1da249){const _0x2cabe6=_0x46997d;try{return await _0x7b92e3[_0x2cabe6(0x215)](_0x1da249);}catch(_0x1b1417){if(_0x1b1417 instanceof ConfigError||_0x1b1417 instanceof JudgeUnavailableError)throw _0x1b1417;throw new JudgeUnavailableError(_0x2cabe6(_0x5bcedc._0x5c8cc7)+(_0x1b1417 instanceof Error?_0x1b1417[_0x2cabe6(0x226)]:String(_0x1b1417)),{'provider':_0x26a974[_0x11c28f[_0x2cabe6(0x1c8)]]});}}};}__name(buildLocalJudge,'buildLocalJudge');var DEFAULT_REASON='assertJudge\x20needs\x20a\x20judge\x20backend\x20(UNOTEST_JUDGE_MODE=off)\x20—\x20set\x20UNOTEST_JUDGE_MODE=remote\x20+\x20UNOTEST_JUDGE_URL\x20(start\x20one\x20with\x20`npx\x20@unotest/judge`),\x20or\x20UNOTEST_JUDGE_MODE=local\x20with\x20@unotest/judge\x20installed\x20in\x20the\x20project.\x20Provider\x20config\x20(UNOTEST_JUDGE_PROVIDER\x20etc.)\x20lives\x20in\x20unotest/.env\x20/\x20the\x20--env\x20overlay.',NullJudge=class{constructor(_0x416604=DEFAULT_REASON){const _0x1f36c8=_0xa13976;this[_0x1f36c8(0x1e8)]=_0x416604;}[_0xa13976(0x1e8)];static{__name(this,'NullJudge');}['judge'](_0x2c30de){const _0x377fd0=_0xa13976;throw new ConfigError(this[_0x377fd0(0x1e8)]);}async[_0xa13976(0x1dd)](){throw new ConfigError(this['reason']);}},PreambleJudge=class{constructor(_0x386190,_0xcab390){const _0x544875={_0x15a9f3:0x221},_0x573d98=_0xa13976;this[_0x573d98(_0x544875._0x15a9f3)]=_0x386190,this[_0x573d98(0x1c4)]=_0xcab390;}[_0xa13976(0x221)];[_0xa13976(0x1c4)];static{__name(this,_0xa13976(0x1e0));}[_0xa13976(0x215)](_0xbf6cd0){const _0x4a6b1f={_0x3a92d2:0x1c4},_0x4355c0=_0xa13976;return this['inner']['judge']({..._0xbf6cd0,'rubric':this[_0x4355c0(_0x4a6b1f._0x3a92d2)]+'\x0a\x0a'+_0xbf6cd0[_0x4355c0(0x19e)]});}['ready'](){const _0x16d273={_0x29add8:0x221},_0x4e2985=_0xa13976;return this[_0x4e2985(_0x16d273._0x29add8)][_0x4e2985(0x1dd)]();}};function withPreamble(_0x9c902f,_0x43414c){return _0x43414c?new PreambleJudge(_0x9c902f,_0x43414c):_0x9c902f;}__name(withPreamble,'withPreamble');import{JUDGE_ROUTES}from'@unotest/protocol';var HEALTH_TIMEOUT_MS=0x1388;function showJudgeUrl(_0x4dbe2e){const _0x27f742={_0x260a0c:0x1bf,_0x5470ed:0x192,_0x42ed19:0x1a6,_0x124bf2:0x200},_0x5d3d79=_0xa13976;if(!URL[_0x5d3d79(_0x27f742._0x260a0c)](_0x4dbe2e))return{'shown':_0x5d3d79(0x229),'unsendable':'UNOTEST_JUDGE_URL\x20is\x20not\x20a\x20URL\x20—\x20e.g.\x20http://127.0.0.1:8790\x20from\x20`npx\x20@unotest/judge`'};const _0x4379fa=new URL(_0x4dbe2e),_0x11ed0d=_0x4379fa[_0x5d3d79(0x1a6)]==='/'?_0x4379fa[_0x5d3d79(_0x27f742._0x5470ed)]:''+_0x4379fa[_0x5d3d79(0x192)]+_0x4379fa[_0x5d3d79(_0x27f742._0x42ed19)];return{'shown':_0x11ed0d,'unsendable':_0x4379fa['username']||_0x4379fa[_0x5d3d79(_0x27f742._0x124bf2)]?_0x5d3d79(0x23d)+_0x11ed0d+')':null};}__name(showJudgeUrl,_0xa13976(0x19f));var RemoteJudge=class{constructor(_0x5a6791,_0xe4260f=fetch,_0x3b8b62=HEALTH_TIMEOUT_MS){const _0xcdca08={_0x25faef:0x22d,_0x1bc381:0x20e,_0x4e3a77:0x1da,_0x55d89a:0x1bc,_0x29261b:0x1bc,_0x47f698:0x216},_0x11778f=_0xa13976;this[_0x11778f(_0xcdca08._0x25faef)]=_0x5a6791,this[_0x11778f(_0xcdca08._0x1bc381)]=_0xe4260f,this[_0x11778f(_0xcdca08._0x4e3a77)]=_0x3b8b62,this[_0x11778f(_0xcdca08._0x55d89a)]=_0x5a6791[_0x11778f(_0xcdca08._0x29261b)][_0x11778f(_0xcdca08._0x47f698)](/\/+$/,''),this[_0x11778f(0x1f6)]=showJudgeUrl(this['baseUrl']);}[_0xa13976(0x22d)];[_0xa13976(0x20e)];['healthTimeoutMs'];static{__name(this,'RemoteJudge');}[_0xa13976(0x1bc)];[_0xa13976(0x1f6)];async[_0xa13976(0x215)](_0x3d4ca5){const _0x315cb6={_0x1e144d:0x202,_0x5440f:0x238,_0x47d6bd:0x22d,_0x28e695:0x1d8,_0x3bb6a6:0x1d2,_0x3944b7:0x1d2,_0x46e29c:0x1f0,_0x214293:0x1d2,_0xad2974:0x1d2,_0x629c73:0x1e6,_0x4a0b92:0x1af,_0x50cb9b:0x1f6,_0x4c265f:0x20d,_0xd7dd96:0x1f6,_0x3e3632:0x218,_0x222051:0x1e2},_0x18475e=_0xa13976,_0x10286c=await this['send'](JUDGE_ROUTES['judge'],{'method':_0x18475e(0x21b),'headers':{'content-type':_0x18475e(_0x315cb6._0x1e144d),...this[_0x18475e(0x22d)][_0x18475e(0x21f)]?{'authorization':_0x18475e(_0x315cb6._0x5440f)+this[_0x18475e(_0x315cb6._0x47d6bd)][_0x18475e(0x21f)]}:{}},'body':JSON[_0x18475e(_0x315cb6._0x28e695)](_0x3d4ca5)},this['env']['timeoutMs'],'(UNOTEST_JUDGE_TIMEOUT_MS)\x20—\x20raise\x20it,\x20or\x20lower\x20the\x20service\x27s\x20own\x20per-call\x20budget\x20(UNOTEST_JUDGE_CALL_TIMEOUT_MS)'),_0x31fadd=await _0x10286c[_0x18475e(0x1c3)]()['catch'](()=>({}));if(!_0x10286c['ok']){if(_0x31fadd[_0x18475e(0x1c7)]==='config'&&_0x31fadd[_0x18475e(_0x315cb6._0x3bb6a6)])throw new ConfigError(_0x18475e(0x1f2)+this[_0x18475e(0x1f6)]['shown']+':\x20'+_0x31fadd[_0x18475e(_0x315cb6._0x3944b7)]);throw new JudgeUnavailableError(_0x18475e(0x1f2)+this['url']['shown']+_0x18475e(_0x315cb6._0x46e29c)+_0x10286c[_0x18475e(0x1e6)]+(_0x31fadd[_0x18475e(_0x315cb6._0x214293)]?':\x20'+_0x31fadd[_0x18475e(_0x315cb6._0xad2974)]:'')+(_0x31fadd[_0x18475e(0x1c7)]===_0x18475e(0x194)?'\x20—\x20UNOTEST_JUDGE_TOKEN\x20must\x20match\x20the\x20one\x20the\x20service\x20was\x20started\x20with':''),{'url':this[_0x18475e(0x1f6)][_0x18475e(0x20d)],'status':_0x10286c[_0x18475e(_0x315cb6._0x629c73)],'code':_0x31fadd[_0x18475e(0x1c7)]});}if(_0x31fadd['verdict']!==_0x18475e(0x1a5)&&_0x31fadd[_0x18475e(0x1d5)]!==_0x18475e(_0x315cb6._0x4a0b92))throw new JudgeUnavailableError('judge\x20service\x20at\x20'+this[_0x18475e(_0x315cb6._0x50cb9b)][_0x18475e(_0x315cb6._0x4c265f)]+_0x18475e(0x220),{'url':this[_0x18475e(_0x315cb6._0xd7dd96)][_0x18475e(_0x315cb6._0x4c265f)]});return{'verdict':_0x31fadd[_0x18475e(0x1d5)],'reasoning':_0x31fadd['reasoning']??_0x18475e(0x228),'model':_0x31fadd[_0x18475e(_0x315cb6._0x3e3632)]??_0x18475e(0x1ec),'attempts':_0x31fadd[_0x18475e(_0x315cb6._0x222051)]??0x1};}async['ready'](){const _0x5f1c69={_0x17a513:0x1a9,_0x2cf4cf:0x1f6,_0xe5f0d6:0x20d},_0x5f38bd=_0xa13976,_0x4b6e62=await this[_0x5f38bd(0x1e7)](JUDGE_ROUTES[_0x5f38bd(0x1e9)],{'method':'GET'},this['healthTimeoutMs'],_0x5f38bd(_0x5f1c69._0x17a513));if(_0x4b6e62['ok'])return;const _0x3145ed=await _0x4b6e62[_0x5f38bd(0x1c3)]()['catch'](()=>({}));throw new ConfigError('judge\x20service\x20at\x20'+this[_0x5f38bd(_0x5f1c69._0x2cf4cf)][_0x5f38bd(_0x5f1c69._0xe5f0d6)]+_0x5f38bd(0x1ea)+_0x4b6e62[_0x5f38bd(0x1e6)]+')'+(_0x3145ed[_0x5f38bd(0x1d2)]?':\x20'+_0x3145ed['error']:''));}async[_0xa13976(0x1e7)](_0x31a6f9,_0x1c168,_0x41d8a7,_0x486267){const _0x1e4b89={_0x4bdd09:0x1f6,_0x168148:0x1db,_0x4bae5e:0x1cf,_0x3d6965:0x190,_0x4e050e:0x237,_0x49325b:0x20d,_0x4a5fa3:0x1fd,_0x2e9c87:0x211,_0xe8bef1:0x1f6,_0x8a6fcd:0x20d},_0x182f92=_0xa13976;if(this[_0x182f92(_0x1e4b89._0x4bdd09)][_0x182f92(0x241)]!==null)throw new ConfigError(this[_0x182f92(0x1f6)]['unsendable']);try{return await this[_0x182f92(0x20e)](''+this[_0x182f92(0x1bc)]+_0x31a6f9,{..._0x1c168,'signal':AbortSignal[_0x182f92(_0x1e4b89._0x168148)](_0x41d8a7)});}catch(_0x4cae38){if(_0x4cae38 instanceof Error&&_0x4cae38[_0x182f92(_0x1e4b89._0x4bae5e)]===_0x182f92(_0x1e4b89._0x3d6965))throw new JudgeUnavailableError(_0x182f92(_0x1e4b89._0x4e050e)+this[_0x182f92(0x1f6)][_0x182f92(_0x1e4b89._0x49325b)]+_0x182f92(_0x1e4b89._0x4a5fa3)+_0x41d8a7+_0x182f92(_0x1e4b89._0x2e9c87)+_0x486267,{'url':this[_0x182f92(0x1f6)][_0x182f92(0x20d)],'timeoutMs':_0x41d8a7});throw new JudgeUnavailableError(_0x182f92(0x1d4)+this[_0x182f92(0x1f6)][_0x182f92(0x20d)]+'\x20('+(_0x4cae38 instanceof Error?_0x4cae38[_0x182f92(0x226)]:String(_0x4cae38))+_0x182f92(0x1dc),{'url':this[_0x182f92(_0x1e4b89._0xe8bef1)][_0x182f92(_0x1e4b89._0x8a6fcd)]});}}},LazyJudge=class{constructor(_0x9602cf){const _0x2191c2={_0x272dc8:0x1f9},_0x9968bc=_0xa13976;this[_0x9968bc(_0x2191c2._0x272dc8)]=_0x9602cf;}['factory'];static{__name(this,_0xa13976(0x1ac));}[_0xa13976(0x1c5)];[_0xa13976(0x215)](_0x34a0f7){const _0x9507ef={_0x4dd7cc:0x19a,_0x4f3529:0x1c2},_0x3c7e2f=_0xa13976;return this[_0x3c7e2f(_0x9507ef._0x4dd7cc)]()[_0x3c7e2f(_0x9507ef._0x4f3529)](_0xf7603a=>_0xf7603a[_0x3c7e2f(0x215)](_0x34a0f7));}async['ready'](){const _0x113d60={_0x20f2b9:0x19a,_0x2354fa:0x1dd},_0x4cb804=_0xa13976;await(await this[_0x4cb804(_0x113d60._0x20f2b9)]())[_0x4cb804(_0x113d60._0x2354fa)]();}[_0xa13976(0x19a)](){const _0x54b9ca=_0xa13976;return this['loading']??=this['factory'](),this[_0x54b9ca(0x1c5)];}};function buildJudgeFromEnv(_0x1fe8c6,_0x37f65c=resolveJudgeMode(_0x1fe8c6)){const _0x178c79={_0x5dee93:0x1c6,_0x4e2565:0x226},_0x543f28=_0xa13976;switch(_0x37f65c){case _0x543f28(_0x178c79._0x5dee93):return new NullJudge();case _0x543f28(0x227):return withPreamble(new LazyJudge(()=>buildLocalJudge(_0x1fe8c6)),resolveJudgePreamble(_0x1fe8c6));case'remote':try{return withPreamble(new RemoteJudge(resolveRemoteJudgeEnv(_0x1fe8c6)),resolveJudgePreamble(_0x1fe8c6));}catch(_0x3516e6){return new NullJudge(_0x3516e6 instanceof Error?_0x3516e6[_0x543f28(_0x178c79._0x4e2565)]:String(_0x3516e6));}}}__name(buildJudgeFromEnv,_0xa13976(0x1aa));var NAME=_0xa13976(0x208);async function judgeDoctorCheck(_0x53c76d,_0x14e617=buildJudgeFromEnv){const _0x3aec3a={_0x24eed7:0x1d2,_0x2fdaf4:0x240,_0x14d714:0x209},_0x23a705=_0xa13976;let _0x31742d;try{_0x31742d=resolveJudgeMode(_0x53c76d);}catch(_0x210842){return{'name':NAME,'severity':_0x23a705(_0x3aec3a._0x24eed7),'message':_0x210842 instanceof Error?_0x210842['message']:String(_0x210842)};}if(_0x31742d===_0x23a705(0x1c6))return{'name':NAME,'severity':'ok','message':_0x23a705(_0x3aec3a._0x2fdaf4)+_0x55dd94[_0x23a705(0x22f)]+_0x23a705(0x224)};try{return await _0x14e617(_0x53c76d)['ready'](),{'name':NAME,'severity':'ok','message':_0x31742d+_0x23a705(0x1ae)};}catch(_0x3c181c){return{'name':NAME,'severity':_0x23a705(_0x3aec3a._0x24eed7),'message':_0x31742d+_0x23a705(_0x3aec3a._0x14d714),'detail':_0x3c181c instanceof Error?_0x3c181c[_0x23a705(0x226)]:String(_0x3c181c)};}}__name(judgeDoctorCheck,_0xa13976(0x21c));var PACKAGE_NAME=_0xa13976(0x22a),WebRunnerAdapter=class{static{__name(this,_0xa13976(0x1b7));}[_0xa13976(0x1cf)]=PACKAGE_NAME;['suffix']='';[_0xa13976(0x234)]={'picker':!![],'attach':!![],'resumeFromFailure':![]};[_0xa13976(0x1f4)]=['scenario',_0xa13976(0x1df),'authoring'];[_0xa13976(0x235)](){const _0xaac16d={_0x3d9c50:0x20f,_0x2011fb:0x1fe,_0x20b89a:0x1b0},_0x4e5856=_0xa13976,_0x191c33=createRequire(import.meta.url),_0x2c4aca=_0x191c33['resolve'](PACKAGE_NAME+_0x4e5856(_0xaac16d._0x3d9c50)),_0x1d5358=JSON[_0x4e5856(0x246)](readFileSync(_0x2c4aca,_0x4e5856(_0xaac16d._0x2011fb))),_0x400cf2=pickBin(_0x1d5358);if(!_0x400cf2)throw new Error(PACKAGE_NAME+_0x4e5856(_0xaac16d._0x20b89a));return join(dirname(_0x2c4aca),_0x400cf2);}[_0xa13976(0x1a7)](_0x556de6){const _0x189bba={_0x124bea:0x1ba,_0x5252d6:0x1f8,_0x184f7c:0x204,_0x5839ee:0x1d1,_0x4a1433:0x1de,_0x41f2c0:0x248,_0x3a3f0e:0x1a0,_0x477f29:0x1e3,_0x3bf925:0x1cf},_0x19a44d=_0xa13976;if(_0x556de6[_0x19a44d(0x1e3)]===_0x19a44d(_0x189bba._0x124bea)){const _0x51e6e9=[_0x19a44d(0x198),_0x556de6[_0x19a44d(0x1ba)]];if(_0x556de6[_0x19a44d(0x234)])_0x51e6e9[_0x19a44d(0x1a0)](_0x19a44d(_0x189bba._0x5252d6));return _0x556de6[_0x19a44d(_0x189bba._0x184f7c)]&&_0x556de6[_0x19a44d(_0x189bba._0x184f7c)][_0x19a44d(_0x189bba._0x5839ee)]>0x0&&_0x51e6e9[_0x19a44d(0x1a0)](_0x19a44d(0x1d7),_0x556de6[_0x19a44d(_0x189bba._0x184f7c)][_0x19a44d(_0x189bba._0x4a1433)](',')),_0x51e6e9;}if(_0x556de6[_0x19a44d(0x1e3)]==='collection'){const _0x519046=['collection',_0x556de6[_0x19a44d(0x1df)]];_0x556de6[_0x19a44d(0x248)]!==void 0x0&&_0x556de6[_0x19a44d(_0x189bba._0x41f2c0)]>0x1&&_0x519046[_0x19a44d(_0x189bba._0x3a3f0e)](_0x19a44d(0x196)+_0x556de6['workers']);if(_0x556de6[_0x19a44d(0x1f7)])_0x519046[_0x19a44d(0x1a0)]('--bail');return _0x519046;}if(_0x556de6[_0x19a44d(0x1e3)]===_0x19a44d(0x23a))return[_0x19a44d(0x1b6),_0x556de6[_0x19a44d(0x1ba)]];const _0x3d41ad=_0x556de6;throw new UnsupportedRunKindError(_0x3d41ad[_0x19a44d(_0x189bba._0x477f29)],this[_0x19a44d(_0x189bba._0x3bf925)]);}[_0xa13976(0x19c)](_0x740b70){const _0x147336=_0xa13976,_0x3a98d7={};if(_0x740b70[_0x147336(0x1e5)])_0x3a98d7['UNOTEST_HEADED']='1';return _0x3a98d7;}[_0xa13976(0x1d0)](){return['app-server'];}[_0xa13976(0x1c9)](){const _0x59f5b2={_0x233a11:0x23e},_0x379096=_0xa13976;return[_0x379096(_0x59f5b2._0x233a11),'--json'];}async['doctor'](_0x200163){const _0x4c528a=_0xa13976;return[...runEnvironmentChecks({'cwd':_0x200163[_0x4c528a(0x206)]}),await judgeDoctorCheck(process[_0x4c528a(0x22d)])];}},webRunnerAdapter=new WebRunnerAdapter(),web_runner_adapter_default=webRunnerAdapter;function pickBin(_0x4cb133){const _0xeb1d0e={_0x394221:0x1ed,_0x54f1ec:0x1ab,_0x25af4d:0x213},_0x43a765=_0xa13976;if(typeof _0x4cb133[_0x43a765(_0xeb1d0e._0x394221)]===_0x43a765(_0xeb1d0e._0x54f1ec))return _0x4cb133[_0x43a765(0x1ed)];if(_0x4cb133[_0x43a765(_0xeb1d0e._0x394221)]&&typeof _0x4cb133[_0x43a765(0x1ed)]===_0x43a765(_0xeb1d0e._0x25af4d))return _0x4cb133['bin']['unotest-web']??Object[_0x43a765(0x23c)](_0x4cb133[_0x43a765(0x1ed)])[0x0]??null;return null;}__name(pickBin,_0xa13976(0x21a));export{web_runner_adapter_default as default,webRunnerAdapter};
1
+ const _0x30e57e=_0x2441;(function(_0x5b4e17,_0x84236f){const _0x65a89b={_0x5f661d:0x234,_0x3e22ec:0x256,_0xc79bed:0x2b1},_0x16ef46=_0x2441,_0x5eb323=_0x5b4e17();while(!![]){try{const _0x53ca01=-parseInt(_0x16ef46(0x225))/0x1+parseInt(_0x16ef46(0x214))/0x2*(parseInt(_0x16ef46(0x273))/0x3)+parseInt(_0x16ef46(_0x65a89b._0x5f661d))/0x4+-parseInt(_0x16ef46(0x228))/0x5+parseInt(_0x16ef46(0x264))/0x6*(parseInt(_0x16ef46(0x27a))/0x7)+parseInt(_0x16ef46(_0x65a89b._0x3e22ec))/0x8+parseInt(_0x16ef46(_0x65a89b._0xc79bed))/0x9*(-parseInt(_0x16ef46(0x255))/0xa);if(_0x53ca01===_0x84236f)break;else _0x5eb323['push'](_0x5eb323['shift']());}catch(_0x5c1c1c){_0x5eb323['push'](_0x5eb323['shift']());}}}(_0x57e0,0x50807));var __defProp=Object[_0x30e57e(0x211)],__name=(_0x1482e5,_0x1bcc17)=>__defProp(_0x1482e5,'name',{'value':_0x1bcc17,'configurable':!![]});import{UnsupportedRunKindError}from'@unotest/protocol';import{readFileSync}from'fs';import{createRequire}from'module';import{dirname,join}from'path';import{existsSync as _0x2aaff2}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){const _0x2c9318=_0x30e57e;for(const _0x3309f7 of[probeChrome,probeEdge,probeChromeBeta]){const _0x409974=_0x3309f7();if(_0x409974[_0x2c9318(0x2a4)]!==null)return _0x409974;}return{'channel':null};}__name(probeSystemBrowser,'probeSystemBrowser');function probeChrome(){const _0x288de8=_0x30e57e,_0x274020=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x274020)return{'channel':_0x288de8(0x22a),'path':_0x274020,'label':_0x288de8(0x258)};return{'channel':null};}__name(probeChrome,_0x30e57e(0x2b0));function probeEdge(){const _0x8cd93f={_0x1c1d8c:0x26e},_0x43b50c=_0x30e57e,_0x368978=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x368978)return{'channel':_0x43b50c(0x274),'path':_0x368978,'label':_0x43b50c(_0x8cd93f._0x1c1d8c)};return{'channel':null};}__name(probeEdge,'probeEdge');function probeChromeBeta(){const _0x57b9cb=_0x30e57e,_0x147383=firstExistingPath(CHROME_BETA_PATHS);if(_0x147383)return{'channel':_0x57b9cb(0x29d),'path':_0x147383,'label':'Google\x20Chrome\x20Beta'};return{'channel':null};}__name(probeChromeBeta,'probeChromeBeta');var CHROME_PATHS=((()=>{const _0x491d05={_0x2b4fdc:0x288,_0x47d0f3:0x1f1,_0x18c537:0x263,_0x19095e:0x224,_0x27cb16:0x269,_0x771147:0x277,_0xb62c66:0x24f},_0x420a5b=_0x30e57e;switch(process[_0x420a5b(0x278)]){case _0x420a5b(0x1ef):return[_0x420a5b(_0x491d05._0x2b4fdc)];case _0x420a5b(0x248):return[process[_0x420a5b(0x263)]['ProgramFiles']+_0x420a5b(_0x491d05._0x47d0f3),process[_0x420a5b(_0x491d05._0x18c537)][_0x420a5b(_0x491d05._0x19095e)]+_0x420a5b(0x1f1),process[_0x420a5b(0x263)][_0x420a5b(_0x491d05._0x27cb16)]+_0x420a5b(0x1f1)];default:return['/usr/bin/google-chrome','/usr/bin/google-chrome-stable',_0x420a5b(_0x491d05._0x771147),_0x420a5b(_0x491d05._0xb62c66),_0x420a5b(0x298)];}})()),CHROME_BIN_NAMES=[_0x30e57e(0x1f9),'google-chrome-stable',_0x30e57e(0x22e),_0x30e57e(0x275)],EDGE_PATHS=((()=>{const _0x23163c={_0xd71167:0x209,_0x4078ef:0x263,_0x237986:0x224,_0x478893:0x1f5},_0x4841ab=_0x30e57e;switch(process['platform']){case'darwin':return[_0x4841ab(_0x23163c._0xd71167)];case _0x4841ab(0x248):return[process[_0x4841ab(0x263)]['ProgramFiles']+_0x4841ab(0x1f5),process[_0x4841ab(_0x23163c._0x4078ef)][_0x4841ab(_0x23163c._0x237986)]+_0x4841ab(_0x23163c._0x478893)];default:return[_0x4841ab(0x2aa),_0x4841ab(0x205)];}})()),EDGE_BIN_NAMES=[_0x30e57e(0x24b),'microsoft-edge-stable'],CHROME_BETA_PATHS=((()=>{const _0x443990={_0x4a9fa3:0x278,_0x4f7663:0x1ef,_0x238a25:0x248,_0x159166:0x220,_0x196033:0x281},_0xe9d59d=_0x30e57e;switch(process[_0xe9d59d(_0x443990._0x4a9fa3)]){case _0xe9d59d(_0x443990._0x4f7663):return[_0xe9d59d(0x27e)];case _0xe9d59d(_0x443990._0x238a25):return[process['env'][_0xe9d59d(0x238)]+_0xe9d59d(_0x443990._0x159166)];default:return[_0xe9d59d(_0x443990._0x196033)];}})());function firstExistingPath(_0x4c77ba){const _0x32c8ea={_0x5df31f:0x27f,_0x3836c3:0x1fe},_0x463732=_0x30e57e;for(const _0x386e44 of _0x4c77ba){if(!_0x386e44||_0x386e44[_0x463732(_0x32c8ea._0x5df31f)](_0x463732(_0x32c8ea._0x3836c3)))continue;if(existsSync(_0x386e44))return _0x386e44;}return null;}__name(firstExistingPath,_0x30e57e(0x20d));function whichOf(_0x205374){const _0x2dbd32={_0x365352:0x1ed,_0x593272:0x227},_0x505ced=_0x30e57e;if(process['platform']===_0x505ced(0x248))return void 0x0;for(const _0x134a74 of _0x205374){try{const _0x74800a=execFileSync('which',[_0x134a74],{'encoding':_0x505ced(_0x2dbd32._0x365352)})[_0x505ced(_0x2dbd32._0x593272)]();if(_0x74800a[_0x505ced(0x229)]>0x0&&existsSync(_0x74800a))return _0x74800a;}catch{}}return void 0x0;}__name(whichOf,_0x30e57e(0x29b));function runEnvironmentChecks(_0x2730a2={}){const _0x3da20c={_0x4d3b81:0x1f7,_0x2c596a:0x1f7},_0x552c63=_0x30e57e,_0x4da8af=_0x2730a2[_0x552c63(_0x3da20c._0x4d3b81)]??process[_0x552c63(_0x3da20c._0x2c596a)]();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x4da8af)];}__name(runEnvironmentChecks,_0x30e57e(0x22d));function checkNodeVersion(){const _0x30eff2={_0x55d5fb:0x23d,_0x351795:0x25e,_0x1482eb:0x280},_0x74243=_0x30e57e,_0x492e97=process['versions'][_0x74243(0x282)],_0x36ab0c=Number(_0x492e97[_0x74243(_0x30eff2._0x55d5fb)]('.')[0x0]);if(!Number[_0x74243(0x25d)](_0x36ab0c)||_0x36ab0c<0x14)return{'name':_0x74243(_0x30eff2._0x351795),'severity':'error','message':_0x74243(0x28b)+_0x492e97+')','detail':_0x74243(_0x30eff2._0x1482eb)};return{'name':_0x74243(_0x30eff2._0x351795),'severity':'ok','message':_0x492e97};}__name(checkNodeVersion,_0x30e57e(0x247));function checkSystemBrowser(){const _0x43a8f9={_0x8211a6:0x24c,_0x28e59b:0x23a,_0x2306d6:0x257,_0x1444b8:0x245},_0x2cbad5=_0x30e57e,_0x3bc1fa=probeSystemBrowser();if(_0x3bc1fa[_0x2cbad5(0x2a4)]!==null)return{'name':'System\x20browser','severity':'ok','message':_0x3bc1fa[_0x2cbad5(_0x43a8f9._0x8211a6)]+_0x2cbad5(_0x43a8f9._0x28e59b),'detail':_0x3bc1fa['path']};return{'name':_0x2cbad5(0x262),'severity':_0x2cbad5(_0x43a8f9._0x2306d6),'message':_0x2cbad5(0x29a),'detail':_0x2cbad5(_0x43a8f9._0x1444b8)};}__name(checkSystemBrowser,_0x30e57e(0x232));function checkWritableCwd(_0xd3a655){const _0x4226a6=_0x30e57e;if(!_0x2aaff2(_0xd3a655))return{'name':_0x4226a6(0x200),'severity':_0x4226a6(0x28e),'message':_0x4226a6(0x2ae)+_0xd3a655+_0x4226a6(0x2ac),'detail':'Create\x20the\x20directory\x20or\x20run\x20init\x20in\x20an\x20existing\x20project\x20root.'};return{'name':_0x4226a6(0x200),'severity':'ok','message':_0xd3a655};}__name(checkWritableCwd,_0x30e57e(0x28f));import{JUDGE_ENV as _0x3a1cfb}from'@unotest/protocol';import{JUDGE_ENV}from'@unotest/protocol';function resolveJudgeMode(_0x36c7eb){const _0xb9e55f={_0x56b0cf:0x21e,_0x1efb7a:0x1f3},_0x4e8bc7=_0x30e57e,_0x2379e1=_0x36c7eb[JUDGE_ENV[_0x4e8bc7(0x20b)]];if(_0x2379e1===void 0x0||_0x2379e1===''||_0x2379e1===_0x4e8bc7(_0xb9e55f._0x56b0cf))return _0x4e8bc7(0x21e);if(_0x2379e1===_0x4e8bc7(0x203)||_0x2379e1===_0x4e8bc7(_0xb9e55f._0x1efb7a))return _0x2379e1;throw new Error(_0x4e8bc7(0x28c)+_0x2379e1+'\x22.\x20Unset\x20it\x20(or\x20\x22off\x22)\x20to\x20disable\x20assertJudge.');}__name(resolveJudgeMode,_0x30e57e(0x297));var DEFAULT_REMOTE_TIMEOUT_MS=0xea60;function resolveRemoteJudgeEnv(_0xe86a9f){const _0x14d28a={_0x53859c:0x20b,_0x94e05c:0x295,_0x178e8e:0x206},_0x10befe=_0x30e57e,_0x3a44b5=_0xe86a9f[JUDGE_ENV['url']];if(!_0x3a44b5)throw new Error(JUDGE_ENV[_0x10befe(_0x14d28a._0x53859c)]+_0x10befe(0x267)+JUDGE_ENV[_0x10befe(0x23c)]+_0x10befe(0x24d));const _0x448abf={'baseUrl':_0x3a44b5,'timeoutMs':intEnv(_0xe86a9f,JUDGE_ENV[_0x10befe(_0x14d28a._0x94e05c)],DEFAULT_REMOTE_TIMEOUT_MS)},_0x4a582a=_0xe86a9f[JUDGE_ENV[_0x10befe(0x206)]];if(_0x4a582a)_0x448abf[_0x10befe(_0x14d28a._0x178e8e)]=_0x4a582a;return _0x448abf;}__name(resolveRemoteJudgeEnv,_0x30e57e(0x26b));function resolveJudgePreamble(_0x4fa910){const _0x3ac8ce=_0x30e57e,_0xa7059b=_0x4fa910[JUDGE_ENV['preamble']]?.[_0x3ac8ce(0x227)]();return _0xa7059b?_0xa7059b:void 0x0;}__name(resolveJudgePreamble,_0x30e57e(0x259));function intEnv(_0x5c0ca8,_0x3390d9,_0x40cdbf){const _0x2f682a=_0x30e57e,_0x466d4c=_0x5c0ca8[_0x3390d9];if(_0x466d4c===void 0x0||_0x466d4c==='')return _0x40cdbf;const _0x5c1181=Number[_0x2f682a(0x270)](_0x466d4c,0xa);if(Number['isNaN'](_0x5c1181)||_0x5c1181<0x3e8||_0x5c1181>0x927c0)throw new Error(_0x3390d9+'\x20must\x20be\x20an\x20integer\x20in\x20[1000,\x20600000],\x20got\x20\x22'+_0x466d4c+'\x22');return _0x5c1181;}__name(intEnv,'intEnv');import{JUDGE_ENV as _0xc4afa7}from'@unotest/protocol';import{UnotestError}from'@unotest/core';var ConfigError=class extends UnotestError{static{__name(this,_0x30e57e(0x29e));}},JudgeUnavailableError=class extends UnotestError{static{__name(this,_0x30e57e(0x21d));}};function _0x2441(_0xf02bcf,_0x19d810){_0xf02bcf=_0xf02bcf-0x1ed;const _0x57e004=_0x57e0();let _0x244116=_0x57e004[_0xf02bcf];if(_0x2441['CJMvUy']===undefined){var _0x573a95=function(_0x3b7e61){const _0x49480d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2aaff2='',_0x3a1cfb='';for(let _0xc4afa7=0x0,_0x1482e5,_0x1bcc17,_0x3309f7=0x0;_0x1bcc17=_0x3b7e61['charAt'](_0x3309f7++);~_0x1bcc17&&(_0x1482e5=_0xc4afa7%0x4?_0x1482e5*0x40+_0x1bcc17:_0x1bcc17,_0xc4afa7++%0x4)?_0x2aaff2+=String['fromCharCode'](0xff&_0x1482e5>>(-0x2*_0xc4afa7&0x6)):0x0){_0x1bcc17=_0x49480d['indexOf'](_0x1bcc17);}for(let _0x409974=0x0,_0x274020=_0x2aaff2['length'];_0x409974<_0x274020;_0x409974++){_0x3a1cfb+='%'+('00'+_0x2aaff2['charCodeAt'](_0x409974)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3a1cfb);};_0x2441['aJBcFz']=_0x573a95,_0x2441['vvRSaE']={},_0x2441['CJMvUy']=!![];}const _0x56571f=_0x57e004[0x0],_0x4abe54=_0xf02bcf+_0x56571f,_0xfb35cc=_0x2441['vvRSaE'][_0x4abe54];return!_0xfb35cc?(_0x244116=_0x2441['aJBcFz'](_0x244116),_0x2441['vvRSaE'][_0x4abe54]=_0x244116):_0x244116=_0xfb35cc,_0x244116;}async function buildLocalJudge(_0x5c5560){const _0x3a8a6a={_0x33f270:0x2ad,_0xf0bc78:0x2a6},_0x18ff52={_0x2ee255:0x24e},_0x33174b=_0x30e57e;let _0x4ed6b0;try{_0x4ed6b0=await import(_0x33174b(0x207));}catch(_0x4397ab){const _0x2b3a3c=_0x4397ab instanceof Error?_0x4397ab[_0x33174b(0x279)]:String(_0x4397ab);throw new ConfigError(_0x33174b(_0x3a8a6a._0x33f270)+_0x2b3a3c);}let _0x578839;try{_0x578839=_0x4ed6b0['createJudgeServiceFromEnv'](_0x5c5560);}catch(_0x58a29d){throw new ConfigError(_0x33174b(_0x3a8a6a._0xf0bc78)+(_0x58a29d instanceof Error?_0x58a29d[_0x33174b(0x279)]:String(_0x58a29d)));}return{async 'ready'(){},async 'judge'(_0x412696){const _0x2f98b5=_0x33174b;try{return await _0x578839['judge'](_0x412696);}catch(_0x2402bc){if(_0x2402bc instanceof ConfigError||_0x2402bc instanceof JudgeUnavailableError)throw _0x2402bc;throw new JudgeUnavailableError(_0x2f98b5(_0x18ff52._0x2ee255)+(_0x2402bc instanceof Error?_0x2402bc[_0x2f98b5(0x279)]:String(_0x2402bc)),{'provider':_0x5c5560[_0xc4afa7[_0x2f98b5(0x223)]]});}}};}__name(buildLocalJudge,_0x30e57e(0x290));var DEFAULT_REASON=_0x30e57e(0x218),NullJudge=class{constructor(_0x5b2d59=DEFAULT_REASON){const _0x138f37={_0x581b6b:0x28d},_0x78163=_0x30e57e;this[_0x78163(_0x138f37._0x581b6b)]=_0x5b2d59;}[_0x30e57e(0x28d)];static{__name(this,_0x30e57e(0x27c));}[_0x30e57e(0x292)](_0x152cf8){throw new ConfigError(this['reason']);}async[_0x30e57e(0x2a8)](){const _0x4d7833={_0x41fcc8:0x28d},_0x4f3b57=_0x30e57e;throw new ConfigError(this[_0x4f3b57(_0x4d7833._0x41fcc8)]);}},PreambleJudge=class{constructor(_0x29fff8,_0x2efe58){const _0x41a03e={_0x54b0ea:0x284},_0x5450da=_0x30e57e;this[_0x5450da(0x1ff)]=_0x29fff8,this[_0x5450da(_0x41a03e._0x54b0ea)]=_0x2efe58;}[_0x30e57e(0x1ff)];[_0x30e57e(0x284)];static{__name(this,_0x30e57e(0x287));}[_0x30e57e(0x292)](_0x1b7029){const _0x1adb6c={_0xd804f1:0x1ff,_0x43dc40:0x292,_0x22f483:0x204},_0x32720c=_0x30e57e;return this[_0x32720c(_0x1adb6c._0xd804f1)][_0x32720c(_0x1adb6c._0x43dc40)]({..._0x1b7029,'rubric':this['preamble']+'\x0a\x0a'+_0x1b7029[_0x32720c(_0x1adb6c._0x22f483)]});}[_0x30e57e(0x2a8)](){const _0x565e3e=_0x30e57e;return this[_0x565e3e(0x1ff)][_0x565e3e(0x2a8)]();}};function withPreamble(_0x47efe4,_0x350b0a){return _0x350b0a?new PreambleJudge(_0x47efe4,_0x350b0a):_0x47efe4;}__name(withPreamble,_0x30e57e(0x1fd));import{JUDGE_ROUTES}from'@unotest/protocol';var HEALTH_TIMEOUT_MS=0x1388;function showJudgeUrl(_0x164d41){const _0x17c4a7={_0x3f21b8:0x235,_0x3ecc45:0x26a,_0x28d676:0x21a,_0x59d39e:0x21a,_0x5d8494:0x26a,_0x17c1a9:0x294},_0x2a289c=_0x30e57e;if(!URL[_0x2a289c(0x25b)](_0x164d41))return{'shown':_0x2a289c(0x215),'unsendable':_0x2a289c(_0x17c4a7._0x3f21b8)};const _0x27663d=new URL(_0x164d41),_0x4c83c7=_0x27663d[_0x2a289c(_0x17c4a7._0x3ecc45)]==='/'?_0x27663d[_0x2a289c(_0x17c4a7._0x28d676)]:''+_0x27663d[_0x2a289c(_0x17c4a7._0x59d39e)]+_0x27663d[_0x2a289c(_0x17c4a7._0x5d8494)];return{'shown':_0x4c83c7,'unsendable':_0x27663d['username']||_0x27663d[_0x2a289c(_0x17c4a7._0x17c1a9)]?_0x2a289c(0x289)+_0x4c83c7+')':null};}__name(showJudgeUrl,_0x30e57e(0x285));var RemoteJudge=class{constructor(_0x25e1ab,_0x4ea944=fetch,_0x56f6ea=HEALTH_TIMEOUT_MS){const _0x3a07eb={_0xdb861b:0x243,_0x1b3484:0x231,_0x15e00d:0x23c},_0x4c3624=_0x30e57e;this['env']=_0x25e1ab,this[_0x4c3624(0x2a1)]=_0x4ea944,this['healthTimeoutMs']=_0x56f6ea,this[_0x4c3624(0x243)]=_0x25e1ab[_0x4c3624(_0x3a07eb._0xdb861b)][_0x4c3624(_0x3a07eb._0x1b3484)](/\/+$/,''),this[_0x4c3624(_0x3a07eb._0x15e00d)]=showJudgeUrl(this['baseUrl']);}[_0x30e57e(0x263)];[_0x30e57e(0x2a1)];['healthTimeoutMs'];static{__name(this,_0x30e57e(0x244));}[_0x30e57e(0x243)];[_0x30e57e(0x23c)];async[_0x30e57e(0x292)](_0x4f9b5e){const _0x15fd4c={_0x500759:0x213,_0x1fe9a1:0x22c,_0x1186d4:0x206,_0xe4f57c:0x29f,_0x44c3d2:0x206,_0x32692f:0x29c,_0xda4175:0x208,_0x1bc126:0x23c,_0x15d2de:0x233,_0x3b1899:0x28e,_0x48b635:0x1f4,_0x2e7734:0x28e,_0x419568:0x25a,_0x256a99:0x2a9,_0x528db1:0x25a,_0x491736:0x1f8,_0x440fa1:0x233,_0x139d3c:0x2a0,_0x15a31d:0x23c,_0x19c756:0x25f,_0x162e26:0x20c},_0x1bb162=_0x30e57e,_0x5cf5ec=await this[_0x1bb162(0x226)](JUDGE_ROUTES['judge'],{'method':_0x1bb162(_0x15fd4c._0x500759),'headers':{'content-type':_0x1bb162(_0x15fd4c._0x1fe9a1),...this['env'][_0x1bb162(_0x15fd4c._0x1186d4)]?{'authorization':_0x1bb162(_0x15fd4c._0xe4f57c)+this['env'][_0x1bb162(_0x15fd4c._0x44c3d2)]}:{}},'body':JSON['stringify'](_0x4f9b5e)},this[_0x1bb162(0x263)][_0x1bb162(_0x15fd4c._0x32692f)],'(UNOTEST_JUDGE_TIMEOUT_MS)\x20—\x20raise\x20it,\x20or\x20lower\x20the\x20service\x27s\x20own\x20per-call\x20budget\x20(UNOTEST_JUDGE_CALL_TIMEOUT_MS)'),_0x53b3f0=await _0x5cf5ec[_0x1bb162(_0x15fd4c._0xda4175)]()[_0x1bb162(0x286)](()=>({}));if(!_0x5cf5ec['ok']){if(_0x53b3f0['code']===_0x1bb162(0x230)&&_0x53b3f0[_0x1bb162(0x28e)])throw new ConfigError(_0x1bb162(0x250)+this[_0x1bb162(_0x15fd4c._0x1bc126)][_0x1bb162(_0x15fd4c._0x15d2de)]+':\x20'+_0x53b3f0[_0x1bb162(_0x15fd4c._0x3b1899)]);throw new JudgeUnavailableError(_0x1bb162(0x250)+this[_0x1bb162(0x23c)][_0x1bb162(0x233)]+_0x1bb162(0x26c)+_0x5cf5ec[_0x1bb162(_0x15fd4c._0x48b635)]+(_0x53b3f0[_0x1bb162(_0x15fd4c._0x2e7734)]?':\x20'+_0x53b3f0[_0x1bb162(0x28e)]:'')+(_0x53b3f0[_0x1bb162(_0x15fd4c._0x419568)]==='unauthorized'?_0x1bb162(_0x15fd4c._0x256a99):''),{'url':this[_0x1bb162(_0x15fd4c._0x1bc126)][_0x1bb162(0x233)],'status':_0x5cf5ec[_0x1bb162(_0x15fd4c._0x48b635)],'code':_0x53b3f0[_0x1bb162(_0x15fd4c._0x528db1)]});}if(_0x53b3f0[_0x1bb162(_0x15fd4c._0x491736)]!==_0x1bb162(0x293)&&_0x53b3f0[_0x1bb162(0x1f8)]!==_0x1bb162(0x1f6))throw new JudgeUnavailableError(_0x1bb162(0x250)+this[_0x1bb162(0x23c)][_0x1bb162(_0x15fd4c._0x440fa1)]+_0x1bb162(_0x15fd4c._0x139d3c),{'url':this[_0x1bb162(_0x15fd4c._0x15a31d)][_0x1bb162(_0x15fd4c._0x15d2de)]});return{'verdict':_0x53b3f0['verdict'],'reasoning':_0x53b3f0['reasoning']??'(no\x20reasoning)','model':_0x53b3f0[_0x1bb162(_0x15fd4c._0x19c756)]??_0x1bb162(0x241),'attempts':_0x53b3f0[_0x1bb162(_0x15fd4c._0x162e26)]??0x1};}async[_0x30e57e(0x2a8)](){const _0x4c457e={_0x59bd6d:0x1fb,_0x2ba516:0x239,_0xc39065:0x250,_0x4cd0cf:0x233,_0x57d79c:0x1f4,_0x100ca1:0x28e},_0x2a3d90=_0x30e57e,_0x2b4c73=await this[_0x2a3d90(0x226)](JUDGE_ROUTES[_0x2a3d90(_0x4c457e._0x59bd6d)],{'method':_0x2a3d90(_0x4c457e._0x2ba516)},this[_0x2a3d90(0x221)],_0x2a3d90(0x272));if(_0x2b4c73['ok'])return;const _0x4edd44=await _0x2b4c73[_0x2a3d90(0x208)]()[_0x2a3d90(0x286)](()=>({}));throw new ConfigError(_0x2a3d90(_0x4c457e._0xc39065)+this[_0x2a3d90(0x23c)][_0x2a3d90(_0x4c457e._0x4cd0cf)]+_0x2a3d90(0x2af)+_0x2b4c73[_0x2a3d90(_0x4c457e._0x57d79c)]+')'+(_0x4edd44[_0x2a3d90(_0x4c457e._0x100ca1)]?':\x20'+_0x4edd44[_0x2a3d90(0x28e)]:''));}async[_0x30e57e(0x226)](_0x1c90a3,_0x46aa05,_0x188666,_0x2c0809){const _0x4bb804={_0x3be075:0x246,_0x29f669:0x23c,_0x32f84d:0x2a1,_0x4e3158:0x21c,_0x3db1a4:0x266,_0x30e7eb:0x254,_0x8b1627:0x233,_0x3a735f:0x236,_0x126d14:0x251,_0x513c3f:0x26d,_0x360491:0x253},_0x522722=_0x30e57e;if(this[_0x522722(0x23c)][_0x522722(_0x4bb804._0x3be075)]!==null)throw new ConfigError(this[_0x522722(_0x4bb804._0x29f669)]['unsendable']);try{return await this[_0x522722(_0x4bb804._0x32f84d)](''+this[_0x522722(0x243)]+_0x1c90a3,{..._0x46aa05,'signal':AbortSignal['timeout'](_0x188666)});}catch(_0x4784b5){if(_0x4784b5 instanceof Error&&_0x4784b5[_0x522722(_0x4bb804._0x4e3158)]===_0x522722(_0x4bb804._0x3db1a4))throw new JudgeUnavailableError(_0x522722(_0x4bb804._0x30e7eb)+this[_0x522722(_0x4bb804._0x29f669)][_0x522722(_0x4bb804._0x8b1627)]+_0x522722(_0x4bb804._0x3a735f)+_0x188666+_0x522722(_0x4bb804._0x126d14)+_0x2c0809,{'url':this[_0x522722(_0x4bb804._0x29f669)][_0x522722(0x233)],'timeoutMs':_0x188666});throw new JudgeUnavailableError(_0x522722(_0x4bb804._0x513c3f)+this[_0x522722(_0x4bb804._0x29f669)][_0x522722(_0x4bb804._0x8b1627)]+'\x20('+(_0x4784b5 instanceof Error?_0x4784b5[_0x522722(0x279)]:String(_0x4784b5))+_0x522722(_0x4bb804._0x360491),{'url':this[_0x522722(0x23c)][_0x522722(0x233)]});}}},LazyJudge=class{constructor(_0x5ab584){const _0x56f1f4={_0x576def:0x299},_0x3b5e43=_0x30e57e;this[_0x3b5e43(_0x56f1f4._0x576def)]=_0x5ab584;}[_0x30e57e(0x299)];static{__name(this,_0x30e57e(0x1fa));}[_0x30e57e(0x27b)];['judge'](_0x58262f){const _0x1e0b48={_0x39ab06:0x23e,_0x11a801:0x1fc},_0x179bc3=_0x30e57e;return this[_0x179bc3(_0x1e0b48._0x39ab06)]()[_0x179bc3(_0x1e0b48._0x11a801)](_0x57a7e6=>_0x57a7e6[_0x179bc3(0x292)](_0x58262f));}async[_0x30e57e(0x2a8)](){const _0x4a3a0b={_0x434014:0x2a8},_0x39c266=_0x30e57e;await(await this[_0x39c266(0x23e)]())[_0x39c266(_0x4a3a0b._0x434014)]();}[_0x30e57e(0x23e)](){const _0xe33e78={_0x297855:0x299},_0x220d23=_0x30e57e;return this['loading']??=this[_0x220d23(_0xe33e78._0x297855)](),this['loading'];}};function buildJudgeFromEnv(_0x298684,_0x35edee=resolveJudgeMode(_0x298684)){const _0x475827={_0x5ecd9b:0x21e,_0x33d729:0x203},_0x215e51=_0x30e57e;switch(_0x35edee){case _0x215e51(_0x475827._0x5ecd9b):return new NullJudge();case _0x215e51(_0x475827._0x33d729):return withPreamble(new LazyJudge(()=>buildLocalJudge(_0x298684)),resolveJudgePreamble(_0x298684));case _0x215e51(0x1f3):try{return withPreamble(new RemoteJudge(resolveRemoteJudgeEnv(_0x298684)),resolveJudgePreamble(_0x298684));}catch(_0x13960f){return new NullJudge(_0x13960f instanceof Error?_0x13960f[_0x215e51(0x279)]:String(_0x13960f));}}}__name(buildJudgeFromEnv,'buildJudgeFromEnv');function _0x57e0(){const _0xfe8119=['mJy0mZi4ogDuC1nHva','D2fYBMLUzW','r29Vz2XLienOCM9Tzq','CMvZB2X2zuP1zgDLuhjLyw1IBgu','y29Kzq','y2fUugfYC2u','zgvIDwC','AxngAw5PDgu','tM9Kzs5QCYb2zxjZAw9U','Bw9KzwW','ztjL','DMfSDwvZ','u3LZDgvTigjYB3DZzxi','zw52','mJeWnJzts0vRvxi','yMfPBa','vgLTzw91DevYCM9Y','pxjLBw90zsbYzxf1AxjLCYa','AM9PBG','te9dquXbufbeqvrb','Cgf0Ag5HBwu','CMvZB2X2zvjLBw90zuP1zgDLrw52','ihjLCgXPzwqG','y2fUBM90ihjLywnOihrOzsbQDwrNzsbZzxj2AwnLigf0ia','twLJCM9ZB2z0ievKz2u','ls1QC29U','CgfYC2vjBNq','C3rYAw5N','4OcuigLZigbUChGGqhvUB3rLC3qVANvKz2vGihj1BM5PBMCSigfUzcbKB2vZifvot1rfu1rFsLver0vFvvjmihbVAw50igf0igL0pW','mZnbCgDJC2C','BxnLzgDL','y2HYB21PDw0TyNjVD3nLCG','yNjLywTWB2LUDhm','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','CgXHDgzVCM0','BwvZC2fNzq','mJCZAxHlAeHl','Bg9HzgLUzW','tNvSBeP1zgDL','CMvZB2X2zujPBG','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','C3rHCNrZv2L0Aa','sw5ZDgfSBcboB2rLidiWkYb2AweGBNzTic8GzM5Tic8GDM9SDgeGyw5KihjLlxj1BI4','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','BM9Kzq','C3vMzML4','ChjLyw1IBgu','C2HVD0P1zgDLvxjS','y2f0y2G','uhjLyw1IBgvkDwrNzq','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','vu5pvevtvf9kvurhrv9vuKWGy2fYCMLLCYbHihvZzxiGB3iGCgfZC3DVCMqSihDOAwnOigzLDgnOihjLzNvZzxmGDg8GC2vUzcdIGjqGz2L2zsb0AguGC2vYDMLJzsDZihrVA2vUigfZifvot1rfu1rFsLver0vFve9lru4GAw5ZDgvHzcaOANvKz2uGC2vYDMLJzsbHDca','ls1IywLS','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','vu5pvevtvf9kvurhrv9nt0rfig11C3qGyMuGiM9MzIiSicjSB2nHBciGB3iGiNjLBw90zsiSigDVDcaI','CMvHC29U','zxjYB3i','y2HLy2TxCML0ywjSzun3za','yNvPBgrmB2nHBeP1zgDL','D29YA2vYCW','ANvKz2u','CgfZCW','CgfZC3DVCMq','CMvXDwvZDfrPBwvVDxrnCW','ChjVAMvJDfjVB3q','CMvZB2X2zuP1zgDLtw9Kzq','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','zMfJDg9YEq','BM8Gq2HYB21Lic8GrwrNzsaVienOCM9TAxvTigrLDgvJDgvK','D2HPy2HpzG','DgLTzw91De1Z','y2HYB21LlwjLDge','q29UzMLNrxjYB3i','qMvHCMvYia','ihjLCgXPzwqGD2L0Ag91DcbHihzLCMrPy3qG4OcuihzLCNnPB24GBwLZBwf0y2G/','zMv0y2HjBxbS','A2LUza','vu5pvevtvf9iruferuq','y2HHBM5LBa','CgfYC2u','vu5pvevtvf9kvurhrv9nt0rfpwXVy2fSoIa','ls1Kzwj1zW','CMvHzhK','iokaLcbvtK9urvnux0PvreDfx1rps0voig11C3qGBwf0y2GGDgHLig9Uzsb0AguGC2vYDMLJzsb3yxmGC3rHCNrLzcb3AxrO','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','AgvHzgvK','igrVzxmGBM90igv4Axn0','vu5pvevtvf9kvurhrv9nt0rfpwXVy2fSig5LzwrZieb1BM90zxn0l2P1zgDLigLUC3rHBgXLzcbPBIb0AguGChjVAMvJDcaOyg5WBsbPic1eieb1BM90zxn0l2P1zgDLycKSig9YihvZzsbvtK9urvnux0PvreDfx01preu9CMvTB3rLihDPDgGGysbYDw5UAw5NihnLCNzPy2uGkgbUChGGqhvUB3rLC3qVANvKz2vGks4Gsw1WB3j0igzHAwXLzcb3AxrOoIa','DgfYz2v0ia','igLZig5VDcbYzwfKEsaO','ChjVyMvdAhjVBwu','otu3mtqXu2jQwhvn','DxrMoa','yxv0Ag9YAw5N','zgfYD2LU','zg9JDg9Y','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','yxbWu2vYDMvYqxjNCW','CMvTB3rL','C3rHDhvZ','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','zMfPBa','y3DK','DMvYzgLJDa','z29Vz2XLlwnOCM9Tzq','tgf6EuP1zgDL','AgvHBhrO','DgHLBG','D2L0AfbYzwfTyMXL','Dw5KzwzPBMvK','Aw5Uzxi','vgfYz2v0igrPCMvJDg9YEq','yMLU','CgLJA0jPBG','Bg9JywW','CNvICMLJ','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','Dg9Rzw4','qhvUB3rLC3qVANvKz2u','ANnVBG','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','yNvPBgrbCMDZ','Bw9Kzq','yxr0zw1WDhm','zMLYC3rfEgLZDgLUz1bHDgG','qhvUB3rLC3qVD2vI','yxv0Ag9Y','oIbYzwfKEq','zgvMAw5LuhjVCgvYDhK','yNvPBgrfBNy','ue9tva','mtaZmZG2CwHVvLnw','kg5VDcbHifvstcK','Dw5VDgvZDc13zwi','y29SBgvJDgLVBG','yxnZzxj0sNvKz2uGBMvLzhmGysbQDwrNzsbIywnRzw5KicHvtK9urvnux0PvreDfx01preu9B2zMksdIGjqGC2v0ifvot1rfu1rFsLver0vFtu9ert1Yzw1VDguGkYbvtK9urvnux0PvreDfx1vstcaOC3rHCNqGB25LihDPDgGGyg5WEcbaDw5VDgvZDc9QDwrNzwaPlcbVCIbvtK9urvnux0PvreDfx01preu9Bg9JywWGD2L0AcbaDw5VDgvZDc9QDwrNzsbPBNn0ywXSzwqGAw4GDgHLihbYB2PLy3qUifbYB3zPzgvYignVBMzPzYaOvu5pvevtvf9kvurhrv9quK9wsurfuIbLDgmUksbSAxzLCYbPBIb1BM90zxn0lY5LBNyGlYb0AguGls1LBNyGB3zLCMXHEs4','ChvZAa','B3jPz2LU','l3bHy2THz2uUANnVBG','BMfTzq','sNvKz2vvBMf2ywLSywjSzuvYCM9Y','B2zM','ihbHy2THz2uUANnVBIbKzwnSyxjLCYbUBYaNyMLUjYbMAwvSzcdIGjqGyNjVA2vUigLUC3rHBgW/','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','AgvHBhrOvgLTzw91De1Z','C3vWCg9YDgvKs2LUzhm','ChjVDMLKzxi','uhjVz3jHBuzPBgvZkhG4nIK','nZm4mdb1uxLYwfe','C2vUza','DhjPBq','mZGWmdb2tNrurxK','BgvUz3rO','y2HYB21L','C2nOzwr1BgvZqxjNCW','yxbWBgLJyxrPB24VANnVBG','CNvUrw52AxjVBM1LBNrdAgvJA3m','y2HYB21PDw0','CMvZB2X2zq','y29UzMLN','CMvWBgfJzq','y2HLy2TtExn0zw1cCM93C2vY','C2HVD24','ndC4ndyWu2n6rgDw','vu5pvevtvf9kvurhrv9vuKWGAxmGBM90igeGvvjmiokaLcbLlMCUigH0Dha6lY8XmJCUmc4WlJe6odC5mcbMCM9TigbUChGGqhvUB3rLC3qVANvKz2vG','igrPzcbUB3qGyw5ZD2vYihDPDgHPBIa','teXnigP1zgDLicHHC3nLCNrkDwrNzsK','uhjVz3jHBuzPBgvZ','r0vu','igzVDw5K','yxbWlxnLCNzLCG','DxjS','C3bSAxq','Bg9Hza','ls1ICMvHAW','B2jQzwn0','khvUA25VD24P','C2nLBMfYAw8','yMfZzvvYBa','uMvTB3rLsNvKz2u','Aw5PDcb3AwXSig9MzMvYihrVigrVD25SB2fKigj1BMrSzwqGq2HYB21PDw0Gkh4XntaGtuiPlIbbBhrLCM5HDgL2zwX5lcbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4U','Dw5Zzw5KywjSzq','y2HLy2ToB2rLvMvYC2LVBG','D2LUmZi','ANvKz2veB2n0B3jdAgvJAW','oIbUB3qGCMvHzhK','BwLJCM9ZB2z0lwvKz2u','BgfIzwW','icH0AguGANvKz2uGC2vYDMLJzsbvuKWSiguUzY4GAhr0CdOVlZeYnY4WlJaUmtO4nZKWigzYB20Gyg5WEcbaDw5VDgvZDc9QDwrNzwaP','Bg9JywWGANvKz2uGzMfPBgvKoIa','l3vZCI9IAw4Vy2HYB21PDw0','ANvKz2uGC2vYDMLJzsbHDca','BxmG','ls13B3jRzxjZpq','ksdIGjqGAxmGyg5WEcbaDw5VDgvZDc9QDwrNzwaGCNvUBMLUzYWGyw5KigrVzxmGvu5pvevtvf9kvurhrv9vuKWGCg9PBNqGyxqGAxq/','DgHLigP1zgDLihnLCNzPy2uGyxqG','nZbNv2PXBhe'];_0x57e0=function(){return _0xfe8119;};return _0x57e0();}var NAME=_0x30e57e(0x237);async function judgeDoctorCheck(_0x40c88b,_0x2bc1c1=buildJudgeFromEnv){const _0xf778d0={_0x50da0e:0x20b,_0x4f84ed:0x28e},_0x232a10=_0x30e57e;let _0x2961f5;try{_0x2961f5=resolveJudgeMode(_0x40c88b);}catch(_0x394716){return{'name':NAME,'severity':_0x232a10(0x28e),'message':_0x394716 instanceof Error?_0x394716['message']:String(_0x394716)};}if(_0x2961f5==='off')return{'name':NAME,'severity':'ok','message':'off\x20('+_0x3a1cfb[_0x232a10(_0xf778d0._0x50da0e)]+'\x20unset)\x20—\x20a\x20scenario\x20that\x20calls\x20assertJudge\x20is\x20refused\x20before\x20its\x20first\x20step'};try{return await _0x2bc1c1(_0x40c88b)['ready'](),{'name':NAME,'severity':'ok','message':_0x2961f5+_0x232a10(0x210)};}catch(_0x3c56d7){return{'name':NAME,'severity':_0x232a10(_0xf778d0._0x4f84ed),'message':_0x2961f5+_0x232a10(0x24a),'detail':_0x3c56d7 instanceof Error?_0x3c56d7[_0x232a10(0x279)]:String(_0x3c56d7)};}}__name(judgeDoctorCheck,_0x30e57e(0x249));var PACKAGE_NAME=_0x30e57e(0x20e),WebRunnerAdapter=class{static{__name(this,'WebRunnerAdapter');}[_0x30e57e(0x21c)]=PACKAGE_NAME;[_0x30e57e(0x283)]='';[_0x30e57e(0x25c)]={'picker':!![],'attach':!![],'resumeFromFailure':![]};[_0x30e57e(0x222)]=[_0x30e57e(0x242),_0x30e57e(0x217),_0x30e57e(0x1ee)];[_0x30e57e(0x27d)](){const _0x59c954={_0x5ee99f:0x22f,_0x44906c:0x21b},_0x4d3f17=_0x30e57e,_0x447ac7=createRequire(import.meta.url),_0x3fb3c7=_0x447ac7[_0x4d3f17(_0x59c954._0x5ee99f)](PACKAGE_NAME+_0x4d3f17(_0x59c954._0x44906c)),_0x336ec7=JSON[_0x4d3f17(0x2a5)](readFileSync(_0x3fb3c7,_0x4d3f17(0x1ed))),_0xbcc3ee=pickBin(_0x336ec7);if(!_0xbcc3ee)throw new Error(PACKAGE_NAME+_0x4d3f17(0x21f));return join(dirname(_0x3fb3c7),_0xbcc3ee);}[_0x30e57e(0x20a)](_0x500551){const _0x53ab44={_0x1e075d:0x2a2,_0x4f8607:0x260,_0x3dbb85:0x25c,_0x36e8c4:0x219,_0x35dca2:0x229,_0x5260bf:0x276,_0x47df9e:0x217,_0x10db15:0x265,_0x4b5411:0x28a,_0x35fa92:0x2a2},_0x533d2c=_0x30e57e;if(_0x500551[_0x533d2c(_0x53ab44._0x1e075d)]==='scenario'){const _0xa83f76=[_0x533d2c(_0x53ab44._0x4f8607),_0x500551['scenario']];if(_0x500551[_0x533d2c(_0x53ab44._0x3dbb85)])_0xa83f76[_0x533d2c(_0x53ab44._0x36e8c4)](_0x533d2c(0x2a7));return _0x500551['breakpoints']&&_0x500551[_0x533d2c(0x276)][_0x533d2c(_0x53ab44._0x35dca2)]>0x0&&_0xa83f76[_0x533d2c(0x219)](_0x533d2c(0x23f),_0x500551[_0x533d2c(_0x53ab44._0x5260bf)][_0x533d2c(0x268)](',')),_0xa83f76;}if(_0x500551[_0x533d2c(0x2a2)]==='collection'){const _0x521049=[_0x533d2c(0x217),_0x500551[_0x533d2c(_0x53ab44._0x47df9e)]];_0x500551[_0x533d2c(0x291)]!==void 0x0&&_0x500551['workers']>0x1&&_0x521049['push'](_0x533d2c(0x252)+_0x500551[_0x533d2c(0x291)]);if(_0x500551[_0x533d2c(_0x53ab44._0x10db15)])_0x521049[_0x533d2c(_0x53ab44._0x36e8c4)](_0x533d2c(_0x53ab44._0x4b5411));return _0x521049;}if(_0x500551[_0x533d2c(_0x53ab44._0x35fa92)]===_0x533d2c(0x1ee))return[_0x533d2c(0x20f),_0x500551[_0x533d2c(0x242)]];const _0x3f2919=_0x500551;throw new UnsupportedRunKindError(_0x3f2919[_0x533d2c(0x2a2)],this['name']);}[_0x30e57e(0x212)](_0x144f80){const _0x169725={_0x49e225:0x2a3},_0x1e7d78=_0x30e57e,_0x1c56eb={};if(_0x144f80[_0x1e7d78(0x2ab)])_0x1c56eb[_0x1e7d78(_0x169725._0x49e225)]='1';return _0x1c56eb;}[_0x30e57e(0x1f2)](){const _0x19d9cb=_0x30e57e;return[_0x19d9cb(0x23b)];}[_0x30e57e(0x22b)](){const _0x403104={_0x4f9df5:0x26f},_0x3cca6c=_0x30e57e;return['schedules',_0x3cca6c(_0x403104._0x4f9df5)];}async[_0x30e57e(0x1f0)](_0x419a93){const _0x2b1049={_0x115e22:0x296},_0x2fe9b2=_0x30e57e;return[...runEnvironmentChecks({'cwd':_0x419a93[_0x2fe9b2(_0x2b1049._0x115e22)]}),await judgeDoctorCheck(process['env'])];}},webRunnerAdapter=new WebRunnerAdapter(),web_runner_adapter_default=webRunnerAdapter;function pickBin(_0xc7193e){const _0x11a16c={_0x379c30:0x201,_0xeb9683:0x271,_0x5e4972:0x216},_0x24b3f4=_0x30e57e;if(typeof _0xc7193e[_0x24b3f4(_0x11a16c._0x379c30)]===_0x24b3f4(_0x11a16c._0xeb9683))return _0xc7193e['bin'];if(_0xc7193e[_0x24b3f4(0x201)]&&typeof _0xc7193e[_0x24b3f4(0x201)]===_0x24b3f4(0x240))return _0xc7193e[_0x24b3f4(0x201)][_0x24b3f4(_0x11a16c._0x5e4972)]??Object[_0x24b3f4(0x261)](_0xc7193e[_0x24b3f4(0x201)])[0x0]??null;return null;}__name(pickBin,_0x30e57e(0x202));export{web_runner_adapter_default as default,webRunnerAdapter};
@@ -79,6 +79,11 @@ step.soft("label", {tag: <expr>}, () => { … });
79
79
  with the next statement and records nothing — same as resuming past
80
80
  any failure on web.
81
81
 
82
+ Porting a `@playwright/test` spec with several `test(...)` calls — one
83
+ `step.soft` per former test — and running one test over a table or a
84
+ JSONL file of cases are worked through in
85
+ [Port a @playwright/test spec](https://docs.unotest.com/guides/port-a-spec/).
86
+
82
87
  The data-driven gate, in full (`readJsonLine` reads the cases; the outer
83
88
  `step` satisfies step coverage):
84
89
 
@@ -459,9 +464,11 @@ assertAttribute(getByRole('form'), 'aria-busy', 'true', {not: true})
459
464
 
460
465
  ### `assertVisible(loc, options?)` / `assertHidden(loc, options?)`
461
466
 
467
+ **Options:** `timeout?`.
468
+
462
469
  ```js
463
470
  assertVisible(getByTestId('toast'))
464
- assertHidden(getByTestId('spinner'))
471
+ assertHidden(getByTestId('spinner'), {timeout: 10000})
465
472
  ```
466
473
 
467
474
  ### `assertNeverAppears(loc, options)`
@@ -486,6 +493,8 @@ the whole window.
486
493
 
487
494
  Compares `inputValue()` (`<input>`, `<textarea>`, native `<select>`).
488
495
 
496
+ **Options:** `timeout?`.
497
+
489
498
  ```js
490
499
  assertValue(getByLabel('Email'), 'a@b.c')
491
500
  ```
@@ -509,8 +518,11 @@ value, and so does the failure.
509
518
 
510
519
  ### `assertCount(loc, expected, options?)`
511
520
 
521
+ **Options:** `timeout?`.
522
+
512
523
  ```js
513
524
  assertCount(getByRole('listitem'), 5)
525
+ assertCount(getByRole('row'), 20, {timeout: 15000})
514
526
  ```
515
527
 
516
528
  ### `assertUrl(pattern, options?)`
@@ -1254,9 +1266,13 @@ Both fields are required. Anything else is refused on that line,
1254
1266
  and changing it would need a new browser context — the page under test
1255
1267
  would be lost. See [Viewport and scale](#viewport-and-scale).
1256
1268
 
1257
- `setViewport(null)` is refused too: once a size is set on an open page,
1258
- Playwright keeps it, and nothing hands the page back to the window. For
1259
- the real window, set `viewport: null` in the config.
1269
+ `setViewport(null)` runs the test on the real window — but only before
1270
+ the test does anything in its browser: the first navigation, `mockRoute`,
1271
+ a cookie or storage value, the page clock, `emulateMedia`, a second page
1272
+ or context. It opens the browser context again with the same options;
1273
+ after any of those it is refused, since the new context would lose them.
1274
+ On a browser profile (`launch.userDataDir`, `launch.profile`) it is
1275
+ refused always. For a whole suite, set `viewport: null` in the config.
1260
1276
 
1261
1277
  ### `emulateMedia({reducedMotion?, colorScheme?})`
1262
1278
 
@@ -1367,9 +1383,10 @@ goto('chrome-extension://' + id + '/popup.html');
1367
1383
  `chrome-extension://<id>/sw.js`. A running worker comes back at once;
1368
1384
  otherwise it waits up to `timeoutMs` (default: the navigation timeout).
1369
1385
  `url` — a substring or `/regex/` when several extensions run.
1370
- - `evaluateInServiceWorker(js, ...args)` — `evaluate` in the worker, same
1371
- argument rules (one extra → the value, two or more → ONE array) and
1372
- JSON return; a returned Promise is awaited. Not discouraged by the
1386
+ - `evaluateInServiceWorker(js, ...args)` — `evaluate` in the worker. The
1387
+ extras reach the body by the same rule as `evaluate`: none →
1388
+ `undefined`, one → the value itself, two or more → one array. JSON
1389
+ return; a returned Promise is awaited. Not discouraged by the
1373
1390
  linter: `chrome.*` has no other way in.
1374
1391
  - `extensionId()` — the id out of the worker's URL.
1375
1392
  - MV3 stops an idle worker after ~30 s. Each call finds the worker anew,
@@ -2226,12 +2243,16 @@ getters or the action API.
2226
2243
  height = evaluate(`document.documentElement.scrollHeight`);
2227
2244
  ```
2228
2245
 
2229
- Multi-arg form (args destructured in the page-side function):
2246
+ The extra arguments reach the body by one rule: none → `undefined`,
2247
+ exactly one → the value itself, two or more → ONE array the body
2248
+ destructures. So one argument is `function(x)`, not `function([x])` —
2249
+ that one fails with `2 is not iterable`.
2230
2250
 
2231
2251
  ```js
2252
+ doubled = evaluate(`function(n) { return n * 2; }`, 21); // one → the value
2232
2253
  result = evaluate(
2233
2254
  `function([a, b]) { return window.myApp.compute(a, b); }`,
2234
- 10, 20
2255
+ 10, 20 // two → one array
2235
2256
  );
2236
2257
  ```
2237
2258
 
@@ -2239,8 +2260,9 @@ Backticks are **raw** — `${…}` interpolation is rejected at parse time
2239
2260
  (see `vendor/dsl/EXTENSIONS.md`).
2240
2261
 
2241
2262
  `evaluateOnLocator(loc, js, ...args)` — the same hatch on one element.
2242
- The body gets the element first, then the extras by the same rule: one
2243
- → the value itself, two or more → one array.
2263
+ The body gets the element first, then the extras by the same rule as
2264
+ `evaluate`: none → `undefined`, one → the value itself, two or more → one
2265
+ array.
2244
2266
 
2245
2267
  ```js
2246
2268
  ok = evaluateOnLocator(getByRole('main'), `(el, [a, b]) => el.children.length > a + b`, 1, 2);
@@ -2426,7 +2448,8 @@ The DSL is JavaScript-shaped but parsed by a small AST engine
2426
2448
  - **Assignments** — `name = expression;` (no `let`/`const`/`var`).
2427
2449
  - **`if` / `else`** and **`for` in the canonical shape**
2428
2450
  `for (i = 0; i < N; i = i + 1) { … }` (increment must be an
2429
- assignment — `i++` is rejected everywhere).
2451
+ assignment — `i++` is rejected everywhere). A loop over cases, each a
2452
+ tagged soft step: [Port a @playwright/test spec](https://docs.unotest.com/guides/port-a-spec/).
2430
2453
  - **`break`** — inside a loop body only. Typical polling loop:
2431
2454
 
2432
2455
  ```js
@@ -2446,7 +2469,8 @@ The DSL is JavaScript-shaped but parsed by a small AST engine
2446
2469
  - **Index access on data** — `docs[0]`, `docs[0].objectsCount`,
2447
2470
  `res.body.items[0].id`: see [Strings, objects, indexes](#strings-objects-indexes).
2448
2471
  Indexing a **Locator** is rejected — disambiguate with chain methods
2449
- (`.filter(...)`), and `arr[i] = v` assignment stays unsupported.
2472
+ (`.filter(...)`), and `arr[i] = v` assignment stays unsupported —
2473
+ `arr.push(v)` appends: see [Logical not and arrays](#logical-not-and-arrays).
2450
2474
  - **Object literals** — as call arguments (`click(loc, {force: true})`)
2451
2475
  and as values in a variable: see [Strings, objects, indexes](#strings-objects-indexes).
2452
2476
  - **Member access** — `row.email` (dot form; `obj['key']` doesn't
@@ -2457,7 +2481,8 @@ The DSL is JavaScript-shaped but parsed by a small AST engine
2457
2481
  [Escape rules](#escape-rules).
2458
2482
  - **Comparison operators** — `==` / `!=` (loose: `"1" == 1` is true,
2459
2483
  numeric strings coerce), `===` / `!==` (strict: type AND value must
2460
- match, `1 === "1"` is false), `<` `<=` `>` `>=`, logical `&&` / `||`.
2484
+ match, `1 === "1"` is false), `<` `<=` `>` `>=`, logical `&&` / `||`
2485
+ and `!` (see [Logical not and arrays](#logical-not-and-arrays)).
2461
2486
  Caveat: DOM reads (`textContent`, `getInputValue`, `getAttribute`)
2462
2487
  return **strings** — for comparing against a number use `==`
2463
2488
  (`getAttribute(loc, "data-count") === 5` is always false; write
@@ -2548,6 +2573,41 @@ assertTrue(res.body.items[0].status == 'ready', json(res.body));
2548
2573
  first = dbQuery('SELECT id FROM users ORDER BY id')[0].id;
2549
2574
  ```
2550
2575
 
2576
+ ### Logical not and arrays
2577
+
2578
+ Since 0.48.0.
2579
+
2580
+ **`!x`** negates, as in JS: the result is always `true` or `false`, and
2581
+ `0`, `""`, `null` and `false` are the falsy values — the same ones `if`
2582
+ treats as false. An array or an object is truthy, empty or not. `!`
2583
+ binds tighter than any other operator: `!a && b` is `(!a) && b`.
2584
+
2585
+ ```js
2586
+ if (!isVisible(getByRole('dialog'))) { log('dialog closed'); }
2587
+ assertTrue(!out.stdout.includes('error'), out.stdout);
2588
+ ```
2589
+
2590
+ **`arr.push(x, …)`** appends to the array in place and returns its new
2591
+ length. Other array methods (`pop`, `map`, `join`, …) are not there;
2592
+ `length` is.
2593
+
2594
+ ```js
2595
+ rows = getByRole('row');
2596
+ ids = [];
2597
+ for (i = 0; i < count(rows); i = i + 1) {
2598
+ ids.push(textContent(rows.nth(i)));
2599
+ }
2600
+ assertTrue(ids.length > 0, json(ids));
2601
+ ```
2602
+
2603
+ A variable holds the array itself, not a copy, as in JS: after
2604
+ `b = a; a.push(1)`, `b` has the new element too. So does a caller whose
2605
+ array a helper pushed onto. A helper that assigns a new array to its
2606
+ parameter (`list = []`) changes only its own name. `push` on a value
2607
+ that is not an array — a string, a number, a `null` field — fails the
2608
+ step with that type in the message; on a string the linter flags it
2609
+ first.
2610
+
2551
2611
  ### `teardown` — give the stand back
2552
2612
 
2553
2613
  Since 0.44.0.