@unotest/web 0.49.0 → 0.49.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +144 -3
- package/README.md +5 -4
- package/bin/unotest-web.js +34 -17
- package/dist/config/schema.d.ts +11 -11
- package/dist/config/schema.js +1 -1
- package/dist/driver/index.d.ts +8 -2
- package/dist/driver/index.js +1 -1
- package/dist/dsl/index.d.ts +10 -2
- package/dist/dsl/index.js +1 -1
- package/dist/dsl/web-dsl-language-service.js +1 -1
- package/dist/inspection/page-inject.d.ts +17 -2
- package/dist/inspection/page-inject.js +36 -9
- package/dist/{interfaces-CTMGjJIs.d.ts → interfaces-mlRtu8mL.d.ts} +23 -1
- package/dist/mcp/server.js +1 -1
- package/dist/runner/cli.d.ts +3 -2
- package/dist/runner/cli.js +1 -1
- package/dist/runner/init/chrome-probe.js +1 -1
- package/dist/runner/init.js +1 -1
- package/dist/runner/install-chromium.js +1 -1
- package/dist/runner/prepare-fix.js +1 -1
- package/dist/runner/scaffold-workspace.js +1 -1
- package/dist/runner/serve-fixture.js +1 -1
- package/dist/runner/web-runner-adapter.js +1 -1
- package/guides/agent-integration.md +15 -1
- package/guides/dsl-reference.md +256 -28
- package/package.json +8 -8
- package/types/unotest-dsl.d.ts +37 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x4b48eb=_0x39f0;(function(_0x3404bd,_0x3e99f0){const _0xcb38c8={_0xab50c9:0x1a6,_0x2afa5a:0x191,_0x3bf33f:0x1c0,_0x30d62c:0x1c6,_0x467417:0x1ce,_0x4da635:0x1b4},_0x59b295=_0x39f0,_0x537776=_0x3404bd();while(!![]){try{const _0x40d48a=parseInt(_0x59b295(_0xcb38c8._0xab50c9))/0x1+-parseInt(_0x59b295(_0xcb38c8._0x2afa5a))/0x2+-parseInt(_0x59b295(_0xcb38c8._0x3bf33f))/0x3*(-parseInt(_0x59b295(0x1ba))/0x4)+parseInt(_0x59b295(0x16a))/0x5+-parseInt(_0x59b295(_0xcb38c8._0x30d62c))/0x6*(-parseInt(_0x59b295(_0xcb38c8._0x467417))/0x7)+parseInt(_0x59b295(_0xcb38c8._0x4da635))/0x8*(parseInt(_0x59b295(0x1a3))/0x9)+parseInt(_0x59b295(0x1bf))/0xa*(-parseInt(_0x59b295(0x18c))/0xb);if(_0x40d48a===_0x3e99f0)break;else _0x537776['push'](_0x537776['shift']());}catch(_0x11be43){_0x537776['push'](_0x537776['shift']());}}}(_0xe9ff,0x37636));var __defProp=Object['defineProperty'],__name=(_0x472c12,_0x185635)=>__defProp(_0x472c12,_0x4b48eb(0x19a),{'value':_0x185635,'configurable':!![]});import{writeFileSync as _0x453611}from'fs';import{join as _0x5a9131}from'path';function _0xe9ff(){const _0x4c17c1=['icdINjCG','vvjmoIa','DhjHy2u','DxrMoa','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','C2nYzwvUC2HVDfbHDgG','yNvUzgXLrgLY','y2XHC3nPzNK','iYmJifn0ywnRcMbGyaO','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','C3rKB3v0','ycaOy29UzMLKzw5JztOG','zMfPBhvYzxnsB290','cMbGyaO','lcbJB2WG','ndC4ote0n2TMtuH1ra','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','C29YDa','AxneAxjLy3rVCNK','Aw5JBhvKzxm','nZe0nJiWzMfbDMTb','C3rLCeLUzgv4','kqOk','Dg9mB3DLCKnHC2u','C3vNz2vZDgvKqwn0Aw9U','ywrKlxDHAxrMB3i','D3jPDgu','CNvUuhjLCgfYzuzPEa','zMLUAxnOzwq','BMfTzq','CgfYC2u','C3rHy2S','qxnZzxj0Aw9UrxjYB3i','DgLTzxn0yw1W','zxjY','Dgv4Da','y29UzMLKzw5Jzq','CMvHzezHAwX1CMvcDw5KBgu','mtKXoda0nhngwLb0sW','BwfW','icbJB25MAwrLBMnLpq','nZCXofvWrNP2ta','C2nYzwvUC2HVDevYCM9Y','Bgv2zwW','AgLNAa','BgLZDezHAwX1CMvZ','ChvZAa','zML4lxbYB21WDc5Tza','DMfSDwvZ','zgvMyxvSDezHAwX1CMvZuM9VDa','BMv0D29YAW','y3DK','C2nYzwvUC2HVDc5WBMC','vgLTzw91DevYCM9Y','BMv0D29YAY5QC29U','ohzKDMrsuq','CMv3CML0zs1ZzwXLy3rVCG','phnJzw5HCMLVigzPBguGBM8GBg9Uz2vYig9UigrPC2S+','C2v0','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','C25HChnOB3qUANnVBG','mta1mLDABe1hCG','BgvUz3rO','ihrLC3qOCYKGkeqTmJuPcGO','zxjYB3i','yxjNDG','mtbbu09iy3O','nZe3wMnXvNrK','zMfPBhvYzs5QC29U','AM9PBG','y29TCg9ZzuzPEfbYB21WDa','tg9JyxrVCKvYCM9Y','y2HHBMDLlwfZC2vYDgLVBG','mJK0A1bzC2rx','C3bSAxq','C2nYzwvUC2HVDc1LCNjVCI50Ehq','y29UC29SzuXPBwL0','xYHUBYbZzw1HBNrPyY1KB20GC25HChnOB3qGy2fWDhvYzwqGzM9YihrOAxmGzMfPBhvYzsLF','C3rHCNrZv2L0Aa','DgvZDa','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','ndy0odbeuMj6DhC','ls1MywLSAw5N','AgfZ','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','C25HChnOB3q','icb+','y2fWDhvYzwrbDa','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','C2nLBMfYAw9qyxrO','Bg9JywXLq29TCgfYzq','DMLKzw8UD2vIBq','y29UC29Szq','y29S','zxHPDa','ChjLCgfYzs1MAxG6ig5VihrLC3rjzcbWCM92AwrLzcbHBMqGBM8GzMfPBgLUzYb0zxn0CYbMB3vUzc4k','cKnHChr1CMvKoIa','yNvPBgrqCM9TChrnyxjRzg93BG','Bg93','rxjYB3i','BwvZC2fNzq','mJa1mJuZmgvtshflyW','BgLUzq','ycdIGjqG','ChjVBxb0twfYA2rVD24','C2XPy2u','ycbPBIbG','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','Dg9vChbLCKnHC2u','DgvZDezU','y2vPBa','CNvUu3rHDgu','ChjLCgfYzs1MAxG6ig5VigzHAwX1CMuGyNvUzgXLCYbMB3vUzcb1BMrLCIaUDw5VDgvZDc9MywLSDxjLCY8Uifj1BIbHigzHAwXPBMCGDgvZDcbMAxjZDdSGDgHLigj1BMrSzsbPCYb3CML0DgvUigf1Dg9TyxrPy2fSBhKUcG','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','AgfYlMPZB24','zw52','B3v0','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','icaGicaG','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG'];_0xe9ff=function(){return _0x4c17c1;};return _0xe9ff();}import{fileURLToPath}from'url';import{readFileSync as _0x1708db,existsSync as _0x4d635f}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(_0x3a9969){const _0x373cee={_0x24c489:0x19b,_0x4022c9:0x180,_0x4dc885:0x1b9,_0x434bc1:0x1b3,_0x5b5261:0x1af,_0x3243b9:0x15a,_0xc1277f:0x1b1,_0x458faf:0x1c8,_0x18e66b:0x1a7,_0x2b6523:0x180,_0x141088:0x160},_0x2383f1=_0x4b48eb;if(!existsSync(_0x3a9969))return null;const _0x5a0788=join(_0x3a9969,_0x2383f1(0x1c1));if(!existsSync(_0x5a0788))return null;const _0x48cbb3=JSON['parse'](readFileSync(_0x5a0788,'utf8')),_0x31527b=join(_0x3a9969,'console.json'),_0x3eb4b6=existsSync(_0x31527b)?JSON[_0x2383f1(_0x373cee._0x24c489)](readFileSync(_0x31527b,_0x2383f1(_0x373cee._0x4022c9))):[],_0x2f9a10=join(_0x3a9969,_0x2383f1(_0x373cee._0x4dc885)),_0x592370=existsSync(_0x2f9a10)?JSON[_0x2383f1(_0x373cee._0x24c489)](readFileSync(_0x2f9a10,_0x2383f1(0x180))):void 0x0,_0x3a1ef7={'trace':_0x48cbb3,'console':_0x3eb4b6},_0x4e6c06=join(_0x3a9969,_0x2383f1(_0x373cee._0x434bc1));existsSync(_0x4e6c06)&&(_0x3a1ef7[_0x2383f1(_0x373cee._0x5b5261)]=JSON['parse'](readFileSync(_0x4e6c06,_0x2383f1(0x180))));if(_0x592370!==void 0x0)_0x3a1ef7[_0x2383f1(_0x373cee._0x3243b9)]=_0x592370;const _0xc80685=join(_0x3a9969,_0x2383f1(_0x373cee._0xc1277f));if(existsSync(_0xc80685))_0x3a1ef7[_0x2383f1(0x182)]=_0xc80685;else{const _0x5af003=join(_0x3a9969,_0x2383f1(_0x373cee._0x458faf));existsSync(_0x5af003)&&(_0x3a1ef7[_0x2383f1(_0x373cee._0x18e66b)]=readFileSync(_0x5af003,_0x2383f1(_0x373cee._0x2b6523)));}const _0x3fef78=join(_0x3a9969,_0x2383f1(0x177));if(existsSync(_0x3fef78))_0x3a1ef7['harPath']=_0x3fef78;const _0x1346b4=join(_0x3a9969,_0x2383f1(_0x373cee._0x141088));if(existsSync(_0x1346b4))_0x3a1ef7['videoPath']=_0x1346b4;return _0x3a1ef7;}__name(readFailureBundle,_0x4b48eb(0x1a2));function listFailures(_0x372b42){const _0x2e2c6d={_0x35f748:0x18f,_0x19076c:0x1c1,_0x28006b:0x1ab,_0x4b1846:0x172},_0x3af225=_0x4b48eb;if(!existsSync(_0x372b42))return[];const _0x1e3502=[];for(const _0xad7cae of readdirSync(_0x372b42)){const _0x52f2fc=join(_0x372b42,_0xad7cae);if(!statSync(_0x52f2fc)[_0x3af225(_0x2e2c6d._0x35f748)]())continue;for(const _0x2c42c6 of readdirSync(_0x52f2fc)){const _0x2c52b1=join(_0x52f2fc,_0x2c42c6);if(!statSync(_0x2c52b1)[_0x3af225(0x18f)]())continue;const _0x40a571=join(_0x2c52b1,_0x3af225(_0x2e2c6d._0x19076c));if(!existsSync(_0x40a571))continue;try{const _0x12b9f8=JSON['parse'](readFileSync(_0x40a571,_0x3af225(0x180)));_0x1e3502[_0x3af225(_0x2e2c6d._0x28006b)]({'runId':_0xad7cae,'testFn':_0x12b9f8[_0x3af225(_0x2e2c6d._0x4b1846)],'scenarioPath':_0x12b9f8['scenarioPath'],'dir':_0x2c52b1,'timestamp':_0x12b9f8[_0x3af225(0x19e)],'runState':_0x12b9f8[_0x3af225(0x174)]??_0x3af225(0x199)});}catch{}}}return _0x1e3502[_0x3af225(0x18e)]((_0xcc01e2,_0xd05c90)=>_0xd05c90['timestamp'][_0x3af225(0x15f)](_0xcc01e2['timestamp'])),_0x1e3502;}__name(listFailures,_0x4b48eb(0x1aa));function defaultFailuresRoot(_0x2673a9=artifactsRootFrom(process[_0x4b48eb(0x178)],process['cwd']()),_0x36dc4f=process['env']){return failuresRootFrom(_0x36dc4f,join(_0x2673a9,...FAILURES_DIR_SEGMENTS));}__name(defaultFailuresRoot,_0x4b48eb(0x1ae));function resolveBundleDir(_0x2a5074,_0x372b84){if(existsSync(_0x2a5074)&&statSync(_0x2a5074)['isDirectory']())return _0x2a5074;return join(_0x372b84,_0x2a5074);}__name(resolveBundleDir,'resolveBundleDir');function composeFixPrompt(_0x2d60a6,_0x39d392={}){const _0x55a33b={_0xb3536d:0x189,_0x5f9b2f:0x17c,_0x2e8fb2:0x1b0,_0xeebadb:0x15e,_0xb23356:0x15e,_0x2a43ce:0x1b6,_0x3a9f80:0x1c9,_0x280421:0x17f,_0x47612a:0x15e,_0x17c2f5:0x173,_0x58efa5:0x15e,_0x4e43d8:0x161,_0x29106d:0x1bb},_0x3f703a=_0x4b48eb,_0x4255da=_0x39d392[_0x3f703a(_0x55a33b._0xb3536d)]??defaultFailuresRoot(),_0x452f89=resolveBundleDir(_0x2d60a6,_0x4255da),_0xb012ca=readFailureBundle(_0x452f89);if(!_0xb012ca)throw new Error(_0x3f703a(_0x55a33b._0x5f9b2f)+_0x2d60a6+'\x22\x20(looked\x20in\x20'+_0x452f89+')');const _0x5be888=_0x39d392[_0x3f703a(0x1b0)]??process[_0x3f703a(_0x55a33b._0x2e8fb2)](),_0x5a97a0=_0x4d635f(_0xb012ca[_0x3f703a(0x17f)][_0x3f703a(_0x55a33b._0xeebadb)])?_0x1708db(_0xb012ca[_0x3f703a(0x17f)][_0x3f703a(_0x55a33b._0xb23356)],_0x3f703a(0x180)):_0x3f703a(_0x55a33b._0x2a43ce),_0x3ebb85=_0x39d392[_0x3f703a(_0x55a33b._0x3a9f80)]??0x19,_0x5e0e15=_0xb012ca['console'][_0x3f703a(0x16e)](-_0x3ebb85),{suggestedAction:_0x372989,confidence:_0x28a64d}=classify(_0xb012ca),_0x56272b=buildPromptMarkdown({'bundle':_0xb012ca,'scenarioSource':_0x5a97a0,'scenarioRelative':relative(_0x5be888,_0xb012ca[_0x3f703a(_0x55a33b._0x280421)][_0x3f703a(_0x55a33b._0x47612a)]),'consoleTail':_0x5e0e15,'suggestedAction':_0x372989,'confidence':_0x28a64d}),_0x1c3c3d=Math[_0x3f703a(_0x55a33b._0x17c2f5)](_0x56272b[_0x3f703a(0x1bb)]/0x4);return{'promptMarkdown':_0x56272b,'suggestedAction':_0x372989,'confidence':_0x28a64d,'sources':{'bundleDir':_0x452f89,'scenarioPath':_0xb012ca[_0x3f703a(_0x55a33b._0x280421)][_0x3f703a(_0x55a33b._0x58efa5)],'consoleEntries':_0xb012ca[_0x3f703a(_0x55a33b._0x4e43d8)][_0x3f703a(_0x55a33b._0x29106d)],'hasSnapshot':!!_0xb012ca[_0x3f703a(0x15a)]},'approxTokens':_0x1c3c3d};}__name(composeFixPrompt,_0x4b48eb(0x1c3));function classify(_0x3f5390){const _0x25b354={_0x51a323:0x17f,_0x2498bd:0x1bd,_0x3fa844:0x167,_0x231ae4:0x1b5,_0x5aa544:0x1c4,_0x52d024:0x1cc,_0x4eddec:0x1b2,_0x58633f:0x1c5},_0x7cd56=_0x4b48eb,_0x21e02f=_0x3f5390[_0x7cd56(_0x25b354._0x51a323)]['error'][_0x7cd56(0x169)][_0x7cd56(0x194)](),_0x200cd2=_0x3f5390[_0x7cd56(0x17f)][_0x7cd56(_0x25b354._0x2498bd)][_0x7cd56(0x19a)]??'';let _0x4c057a='unknown',_0x2284f0=_0x7cd56(_0x25b354._0x3fa844);if(_0x200cd2===_0x7cd56(0x1c4)||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i[_0x7cd56(0x1cc)](_0x21e02f))_0x4c057a=_0x7cd56(_0x25b354._0x231ae4),_0x2284f0=_0x200cd2===_0x7cd56(_0x25b354._0x5aa544)?'high':'medium';else{if(_0x200cd2===_0x7cd56(0x1b2)||/timeout|waiting for/i[_0x7cd56(_0x25b354._0x52d024)](_0x21e02f))_0x4c057a=_0x7cd56(0x196),_0x2284f0=_0x200cd2===_0x7cd56(_0x25b354._0x4eddec)?_0x7cd56(0x1a9):'medium';else(_0x200cd2===_0x7cd56(0x19d)||/asserttext|assertvisible|expected.*got/i[_0x7cd56(0x1cc)](_0x21e02f))&&(_0x4c057a=_0x7cd56(_0x25b354._0x58633f),_0x2284f0=_0x200cd2===_0x7cd56(0x19d)?'high':'medium');}return{'suggestedAction':_0x4c057a,'confidence':_0x2284f0};}function _0x39f0(_0x403160,_0x21725a){_0x403160=_0x403160-0x15a;const _0xe9ffd2=_0xe9ff();let _0x39f065=_0xe9ffd2[_0x403160];if(_0x39f0['dZkJVi']===undefined){var _0x37c5e1=function(_0x4b3134){const _0x36cee1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x453611='',_0x5a9131='';for(let _0x1708db=0x0,_0x4d635f,_0x472c12,_0x185635=0x0;_0x472c12=_0x4b3134['charAt'](_0x185635++);~_0x472c12&&(_0x4d635f=_0x1708db%0x4?_0x4d635f*0x40+_0x472c12:_0x472c12,_0x1708db++%0x4)?_0x453611+=String['fromCharCode'](0xff&_0x4d635f>>(-0x2*_0x1708db&0x6)):0x0){_0x472c12=_0x36cee1['indexOf'](_0x472c12);}for(let _0x3a9969=0x0,_0x5a0788=_0x453611['length'];_0x3a9969<_0x5a0788;_0x3a9969++){_0x5a9131+='%'+('00'+_0x453611['charCodeAt'](_0x3a9969)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5a9131);};_0x39f0['NJIQKZ']=_0x37c5e1,_0x39f0['RwbtPR']={},_0x39f0['dZkJVi']=!![];}const _0x1260a9=_0xe9ffd2[0x0],_0x37dd0b=_0x403160+_0x1260a9,_0x47f2e5=_0x39f0['RwbtPR'][_0x37dd0b];return!_0x47f2e5?(_0x39f065=_0x39f0['NJIQKZ'](_0x39f065),_0x39f0['RwbtPR'][_0x37dd0b]=_0x39f065):_0x39f065=_0x47f2e5,_0x39f065;}__name(classify,_0x4b48eb(0x184));function buildPromptMarkdown(_0x4f7110){const _0x5afc05={_0x112255:0x1c7,_0x34ca3c:0x1a4,_0x5a5f86:0x1c2,_0x550143:0x1a4,_0xf55bb5:0x1c2,_0x342d0c:0x17e,_0x25fce3:0x17f,_0x171d74:0x170,_0x2358c7:0x17f,_0xa58337:0x16b,_0x3c88b1:0x162,_0x19b21b:0x1bd,_0x86759f:0x16c,_0x14584d:0x169,_0x2e7538:0x1cd,_0x5d94ef:0x188,_0x44630c:0x185,_0x45a145:0x18a},_0x5bf6d7=_0x4b48eb,{bundle:_0xab43b6,scenarioSource:_0x1c512d,scenarioRelative:_0x1d4c28,consoleTail:_0x16d264,suggestedAction:_0x44eae4,confidence:_0x374772}=_0x4f7110,_0x1c9e21=_0x1c512d[_0x5bf6d7(_0x5afc05._0x112255)]('\x0a')[_0x5bf6d7(_0x5afc05._0x34ca3c)]((_0x2da81b,_0x29a4c0)=>String(_0x29a4c0+0x1)['padStart'](0x3,'\x20')+'\x20\x20'+_0x2da81b)[_0x5bf6d7(_0x5afc05._0x5a5f86)]('\x0a'),_0xc87d1d=_0x16d264[_0x5bf6d7(0x1bb)]===0x0?_0x5bf6d7(0x1d1):_0x16d264[_0x5bf6d7(_0x5afc05._0x550143)](_0x247caf=>'['+_0x247caf[_0x5bf6d7(0x19e)]+']\x20'+_0x247caf[_0x5bf6d7(0x1a8)][_0x5bf6d7(0x171)]()+':\x20'+_0x247caf[_0x5bf6d7(0x1a0)])[_0x5bf6d7(_0x5afc05._0xf55bb5)]('\x0a'),_0x4eb00a=_0xab43b6['snapshot']?_0x5bf6d7(_0x5afc05._0x342d0c)+_0xab43b6[_0x5bf6d7(0x15a)]['url']+_0x5bf6d7(0x165)+_0xab43b6[_0x5bf6d7(0x15a)][_0x5bf6d7(0x15c)]+_0x5bf6d7(0x181):_0x5bf6d7(0x1ca);return _0x5bf6d7(0x17a)+_0xab43b6[_0x5bf6d7(_0x5afc05._0x25fce3)]['testFn']+_0x5bf6d7(0x16f)+_0x1d4c28+'`\x0a-\x20**Step\x20index**:\x20'+(_0xab43b6[_0x5bf6d7(_0x5afc05._0x25fce3)][_0x5bf6d7(0x192)]??'?')+_0x5bf6d7(_0x5afc05._0x171d74)+_0xab43b6[_0x5bf6d7(_0x5afc05._0x2358c7)][_0x5bf6d7(_0x5afc05._0xa58337)]+_0x5bf6d7(0x18b)+_0xab43b6[_0x5bf6d7(0x17f)][_0x5bf6d7(_0x5afc05._0x3c88b1)]+'\x0a-\x20**Error**:\x20`'+(_0xab43b6[_0x5bf6d7(0x17f)][_0x5bf6d7(_0x5afc05._0x19b21b)]['name']??_0x5bf6d7(0x168))+_0x5bf6d7(_0x5afc05._0x86759f)+_0xab43b6[_0x5bf6d7(_0x5afc05._0x25fce3)][_0x5bf6d7(_0x5afc05._0x19b21b)][_0x5bf6d7(_0x5afc05._0x14584d)]+_0x5bf6d7(_0x5afc05._0x2e7538)+_0x44eae4+_0x5bf6d7(_0x5afc05._0x5d94ef)+_0x374772+_0x5bf6d7(0x193)+(_0xab43b6[_0x5bf6d7(0x17f)][_0x5bf6d7(0x1bd)]['stack']?_0x5bf6d7(_0x5afc05._0x44630c)+_0xab43b6[_0x5bf6d7(0x17f)][_0x5bf6d7(0x1bd)][_0x5bf6d7(0x19c)]+_0x5bf6d7(_0x5afc05._0x45a145):'')+_0x5bf6d7(0x186)+_0x1c9e21+_0x5bf6d7(0x18d)+_0xc87d1d+_0x5bf6d7(0x1b8)+_0x4eb00a+_0x5bf6d7(0x15d);}__name(buildPromptMarkdown,_0x4b48eb(0x166));function runPrepareFix(_0xf7ec34,_0x5a183b={}){const _0x537c3d={_0x193170:0x179,_0x2fae0e:0x187,_0x4cc383:0x1b0,_0x1448f1:0x190,_0x2503a1:0x1cf,_0x593e96:0x1bb,_0xf80c91:0x175,_0x19deb4:0x172,_0x10da02:0x1ac,_0x41b5b7:0x197,_0x283104:0x176,_0x21a42c:0x195,_0x246d9a:0x1a5,_0x3fc65e:0x197},_0x3ad33b=_0x4b48eb,_0x1d420e=_0x5a183b[_0x3ad33b(_0x537c3d._0x193170)]??process[_0x3ad33b(_0x537c3d._0x2fae0e)],_0x56ef99=_0x5a183b[_0x3ad33b(0x19f)]??process['stderr'],_0x1ddce3=_0x5a183b[_0x3ad33b(_0x537c3d._0x4cc383)]??process['cwd'](),_0x3b2438=_0xf7ec34[_0x3ad33b(_0x537c3d._0x1448f1)](_0x3ad33b(_0x537c3d._0x2503a1));let _0x55eb6b=_0xf7ec34['filter'](_0x3680a3=>!_0x3680a3[_0x3ad33b(0x1cb)]('-'));if(_0x3b2438||_0x55eb6b[_0x3ad33b(_0x537c3d._0x593e96)]===0x0){const _0x5207d1=listFailures(defaultFailuresRoot(_0x1ddce3));if(_0x5207d1['length']===0x0)return _0x56ef99[_0x3ad33b(0x197)](_0x3ad33b(_0x537c3d._0xf80c91)),0x1;if(_0x55eb6b['length']===0x0){const _0x25ee0a=new Map();for(const _0x5f0c14 of _0x5207d1){if(!_0x25ee0a[_0x3ad33b(0x1d0)](_0x5f0c14[_0x3ad33b(_0x537c3d._0x19deb4)]))_0x25ee0a[_0x3ad33b(0x1b7)](_0x5f0c14[_0x3ad33b(0x172)],_0x5f0c14);}_0x55eb6b=[..._0x25ee0a[_0x3ad33b(0x1ad)]()][_0x3ad33b(0x1a4)](_0x16fc5a=>_0x16fc5a['runId']+'/'+_0x16fc5a[_0x3ad33b(0x172)]);}}if(_0x55eb6b['length']===0x0)return _0x56ef99[_0x3ad33b(0x197)](_0x3ad33b(0x164)),0x1;_0x1d420e[_0x3ad33b(0x197)]('prepare-fix:\x20composing\x20fix\x20prompts\x20for\x20'+_0x55eb6b[_0x3ad33b(_0x537c3d._0x593e96)]+_0x3ad33b(0x1bc));const _0x5c4d23=defaultFailuresRoot(_0x1ddce3);for(const _0x184cff of _0x55eb6b){try{const _0x269bc4=composeFixPrompt(_0x184cff,{'cwd':_0x1ddce3,'failuresRoot':_0x5c4d23}),_0xfcb4f9=_0x5a9131(_0x269bc4['sources'][_0x3ad33b(0x183)],_0x3ad33b(_0x537c3d._0x10da02));_0x453611(_0xfcb4f9,_0x269bc4[_0x3ad33b(0x16d)]),_0x1d420e[_0x3ad33b(_0x537c3d._0x41b5b7)]('\x20\x20✓\x20'+_0x184cff+'\x0a'),_0x1d420e[_0x3ad33b(_0x537c3d._0x41b5b7)](_0x3ad33b(0x17b)+_0xfcb4f9+'\x0a'),_0x1d420e['write'](_0x3ad33b(_0x537c3d._0x283104)+_0x269bc4[_0x3ad33b(_0x537c3d._0x21a42c)]+_0x3ad33b(_0x537c3d._0x246d9a)+_0x269bc4[_0x3ad33b(0x1a1)]+_0x3ad33b(0x15b)+_0x269bc4['approxTokens']+'t\x0a');}catch(_0x38cf66){_0x56ef99['write'](_0x3ad33b(0x17d)+_0x184cff+':\x20'+(_0x38cf66 instanceof Error?_0x38cf66[_0x3ad33b(0x169)]:String(_0x38cf66))+'\x0a');}}return _0x1d420e[_0x3ad33b(_0x537c3d._0x3fc65e)]('\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,_0x4b48eb(0x198));var invokedDirectly=process[_0x4b48eb(0x1be)][0x1]&&fileURLToPath(import.meta.url)===process[_0x4b48eb(0x1be)][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x4b48eb(0x1be)][_0x4b48eb(0x16e)](0x2));process[_0x4b48eb(0x163)](code);}export{runPrepareFix};
|
|
1
|
+
const _0xc52612=_0xdab4;(function(_0x3d9ce8,_0x52f1f8){const _0x35552f={_0x1f6ec6:0x1f9,_0x3d7697:0x1ca,_0x541d02:0x1cb,_0x8136a1:0x1fc,_0x226f01:0x22c,_0x4a42f2:0x225},_0x408dbe=_0xdab4,_0x55b0fa=_0x3d9ce8();while(!![]){try{const _0x5c506f=parseInt(_0x408dbe(_0x35552f._0x1f6ec6))/0x1*(parseInt(_0x408dbe(_0x35552f._0x3d7697))/0x2)+parseInt(_0x408dbe(_0x35552f._0x541d02))/0x3+-parseInt(_0x408dbe(_0x35552f._0x8136a1))/0x4+parseInt(_0x408dbe(0x1f0))/0x5*(-parseInt(_0x408dbe(_0x35552f._0x226f01))/0x6)+-parseInt(_0x408dbe(0x1e7))/0x7+parseInt(_0x408dbe(0x21a))/0x8+-parseInt(_0x408dbe(_0x35552f._0x4a42f2))/0x9;if(_0x5c506f===_0x52f1f8)break;else _0x55b0fa['push'](_0x55b0fa['shift']());}catch(_0xf0ee0f){_0x55b0fa['push'](_0x55b0fa['shift']());}}}(_0x92ac,0xc5133));var __defProp=Object[_0xc52612(0x1f2)],__name=(_0x480030,_0x5a993b)=>__defProp(_0x480030,_0xc52612(0x212),{'value':_0x5a993b,'configurable':!![]});import{writeFileSync as _0x5fce67}from'fs';import{join as _0x2dd1c6}from'path';function _0x92ac(){const _0x1d921d=['yNvUzgXLrgLY','AM9PBG','C2nYzwvUC2HVDc5WBMC','BwfW','C3bSAxq','tg9JyxrVCKvYCM9Y','Dg9vChbLCKnHC2u','nJG0ntK5m0vfwevYrq','D3jPDgu','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','kqOk','zMLSDgvY','ChjLCgfYzs1MAxG6ig5VihrLC3rjzcbWCM92AwrLzcbHBMqGBM8GzMfPBgLUzYb0zxn0CYbMB3vUzc4k','BgLZDezHAwX1CMvZ','iYmJifn0ywnRcMbGyaO','cKnHChr1CMvKoIa','mtbxC214y1O','zgvMyxvSDezHAwX1CMvZuM9VDa','zgvMAw5LuhjVCgvYDhK','AgfZ','CMvZB2X2zuj1BMrSzurPCG','C3rKB3v0','y3DK','CMv3CML0zs1ZzwXLy3rVCG','DMfSDwvZ','mwP4yxvAzG','C2XPy2u','iIaOBg9VA2vKigLUia','mti5ndeWmhPIt3vvvW','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','ChvZAa','DgLTzxn0yw1W','DMLKzw8UD2vIBq','Bgv2zwW','vvjmoIa','CgfYC2u','C2nYzwvUC2HVDevYCM9Y','Bg9JywXLq29TCgfYzq','zxjYB3i','yxjNDG','zxjY','lcbJB2WG','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','y2XHC3nPzNK','cI0GkIPfCNjVCIOQoIbG','y29UC29Szs5QC29U','zxHPDa','DgvZDa','C3rKzxjY','DgvZDezU','BMfTzq','C25HChnOB3q','CNvUu3rHDgu','BwvKAxvT','DxjS','zMfPBhvYzxnsB290','y29UC29SzuXPBwL0','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','ndyWotmXmNjvv2zKCa','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','Dg9mB3DLCKnHC2u','qxnZzxj0Aw9UrxjYB3i','DxrMoa','zMfPBhvYzs5QC29U','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','ycbPBIbG','C291CMnLCW','zML4lxbYB21WDc5Tza','Aw5JBhvKzxm','ndu4odiXofvtALP2Eq','C3rHy2S','BgvUz3rO','DhjHy2u','y2fWDhvYzwrbDa','icdINjmG','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','nJK0mdC0vKDcvgD5','vgLTzw91DevYCM9Y','yNvPBgrqCM9TChrnyxjRzg93BG','B3v0','AgfYlMPZB24','Bg93','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','BwvZC2fNzq','C2nLBMfYAw9qyxrO','cMbGyaO','ls1MywLSAw5N','icaGicaG','AgLNAa','mJCWnJC1oevqDLbXsq','mJC2mta4mgTpuwDfzG','y29S','C29YDa','ihrLC3qOCYKGkeqTmJuPcGO','y2vPBa','cK5LEhq6ihbHC3rLigvHy2GGzML4lxbYB21WDc5TzcbPBNrVihLVDxiGteXnignSAwvUDcaOq2XHDwrLienVzguGlWPdDxjZB3iGlYbLDgmUks4GvgHLieXmtsbYzxr1CM5ZigeGDw5PzMLLzcbKAwzMoYbYzxzPzxCGAxqGyw5KigfWCgX5cM1HBNvHBgX5lIbxzsbUzxzLCIbHDxrVlwfWCgX5icHelti1ks4k','CMvHzezHAwX1CMvcDw5KBgu','ycaOy29UzMLKzw5JztOG','C3rLCeLUzgv4','Dgv4Da','AgfYugf0Aa','y29UC29Szq','CgfKu3rHCNq','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','zMLUAxnOzwq','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','zw52','C3rHCNrZv2L0Aa','Dw5RBM93BG','BMv0D29YAY5QC29U','AxneAxjLy3rVCNK'];_0x92ac=function(){return _0x1d921d;};return _0x92ac();}import{fileURLToPath}from'url';import{readFileSync as _0x1bdbea,existsSync as _0x20ad59}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';var CONSOLE_NOT_RECORDED='console\x20not\x20recorded\x20for\x20this\x20run:\x20UNOTEST_CONSOLE=1\x20records\x20it';function readFailureBundle(_0x10ab5e){const _0x50822a={_0x2ecdb8:0x20d,_0x48c2e3:0x203,_0x2906e9:0x21e,_0x185d07:0x21e,_0xbd042e:0x1e2,_0x1c93a8:0x21e,_0x1135e9:0x1d5},_0x40a43e=_0xc52612;if(!existsSync(_0x10ab5e))return null;const _0x486d18=join(_0x10ab5e,_0x40a43e(0x21f));if(!existsSync(_0x486d18))return null;const _0x4d0c13=JSON[_0x40a43e(0x203)](readFileSync(_0x486d18,_0x40a43e(0x21e))),_0x4c8b35=join(_0x10ab5e,_0x40a43e(_0x50822a._0x2ecdb8)),_0x258a57=existsSync(_0x4c8b35)?JSON[_0x40a43e(_0x50822a._0x48c2e3)](readFileSync(_0x4c8b35,_0x40a43e(_0x50822a._0x2906e9))):null,_0x32e04c=join(_0x10ab5e,'snapshot.json'),_0x33d672=existsSync(_0x32e04c)?JSON[_0x40a43e(0x203)](readFileSync(_0x32e04c,_0x40a43e(_0x50822a._0x185d07))):void 0x0,_0x698c0={'trace':_0x4d0c13,'console':_0x258a57},_0x44e6c6=join(_0x10ab5e,_0x40a43e(0x1de));existsSync(_0x44e6c6)&&(_0x698c0['network']=JSON[_0x40a43e(_0x50822a._0x48c2e3)](readFileSync(_0x44e6c6,_0x40a43e(0x21e))));if(_0x33d672!==void 0x0)_0x698c0['snapshot']=_0x33d672;const _0x3e5be0=join(_0x10ab5e,_0x40a43e(_0x50822a._0xbd042e));if(existsSync(_0x3e5be0))_0x698c0['screenshotPath']=_0x3e5be0;else{const _0x3a7014=join(_0x10ab5e,'screenshot-error.txt');existsSync(_0x3a7014)&&(_0x698c0[_0x40a43e(0x204)]=readFileSync(_0x3a7014,_0x40a43e(_0x50822a._0x1c93a8)));}const _0x11a87f=join(_0x10ab5e,_0x40a43e(0x230));if(existsSync(_0x11a87f))_0x698c0[_0x40a43e(_0x50822a._0x1135e9)]=_0x11a87f;const _0x36502a=join(_0x10ab5e,_0x40a43e(0x200));if(existsSync(_0x36502a))_0x698c0['videoPath']=_0x36502a;return _0x698c0;}__name(readFailureBundle,_0xc52612(0x1d1));function listFailures(_0x4c8279){const _0x452f4d={_0x32801e:0x203,_0x2643d4:0x21e,_0x94ec92:0x1fe,_0x35264c:0x211,_0x68329e:0x1ff,_0x591dce:0x214,_0x5ec82f:0x1d9,_0x427a0b:0x1cd},_0x5d9b4e=_0xc52612;if(!existsSync(_0x4c8279))return[];const _0x266742=[];for(const _0xea61e0 of readdirSync(_0x4c8279)){const _0x2cb922=join(_0x4c8279,_0xea61e0);if(!statSync(_0x2cb922)[_0x5d9b4e(0x1df)]())continue;for(const _0x498c82 of readdirSync(_0x2cb922)){const _0x2c6592=join(_0x2cb922,_0x498c82);if(!statSync(_0x2c6592)['isDirectory']())continue;const _0x4fa601=join(_0x2c6592,_0x5d9b4e(0x21f));if(!existsSync(_0x4fa601))continue;try{const _0x575889=JSON[_0x5d9b4e(_0x452f4d._0x32801e)](readFileSync(_0x4fa601,_0x5d9b4e(_0x452f4d._0x2643d4)));_0x266742[_0x5d9b4e(_0x452f4d._0x94ec92)]({'runId':_0xea61e0,'testFn':_0x575889[_0x5d9b4e(_0x452f4d._0x35264c)],'scenarioPath':_0x575889[_0x5d9b4e(0x234)],'dir':_0x2c6592,'timestamp':_0x575889[_0x5d9b4e(_0x452f4d._0x68329e)],'runState':_0x575889[_0x5d9b4e(_0x452f4d._0x591dce)]??_0x5d9b4e(_0x452f4d._0x5ec82f)});}catch{}}}return _0x266742[_0x5d9b4e(_0x452f4d._0x427a0b)]((_0x320e1e,_0x410d57)=>_0x410d57['timestamp'][_0x5d9b4e(0x205)](_0x320e1e['timestamp'])),_0x266742;}__name(listFailures,_0xc52612(0x1ed));function defaultFailuresRoot(_0x1dcc01=artifactsRootFrom(process[_0xc52612(0x1db)],process[_0xc52612(0x1f6)]()),_0x113409=process[_0xc52612(0x1db)]){return failuresRootFrom(_0x113409,join(_0x1dcc01,...FAILURES_DIR_SEGMENTS));}__name(defaultFailuresRoot,_0xc52612(0x1f1));function resolveBundleDir(_0x4d0b82,_0x3f52b9){if(existsSync(_0x4d0b82)&&statSync(_0x4d0b82)['isDirectory']())return _0x4d0b82;return join(_0x3f52b9,_0x4d0b82);}__name(resolveBundleDir,_0xc52612(0x1f4));function composeFixPrompt(_0x46b425,_0x29a490={}){const _0x34edf8={_0x3b1701:0x1da,_0x16149e:0x1f6,_0x24c0b9:0x228,_0x280c52:0x228,_0x50329c:0x21e,_0x362c04:0x1d6,_0x4444a6:0x1cf,_0x29280a:0x227,_0x9d0756:0x228},_0x17c46c=_0xc52612,_0x536df8=_0x29a490[_0x17c46c(0x217)]??defaultFailuresRoot(),_0xece997=resolveBundleDir(_0x46b425,_0x536df8),_0x45c471=readFailureBundle(_0xece997);if(!_0x45c471)throw new Error(_0x17c46c(_0x34edf8._0x3b1701)+_0x46b425+_0x17c46c(0x1fb)+_0xece997+')');const _0x424528=_0x29a490['cwd']??process[_0x17c46c(_0x34edf8._0x16149e)](),_0x35f263=_0x20ad59(_0x45c471[_0x17c46c(_0x34edf8._0x24c0b9)]['scenarioPath'])?_0x1bdbea(_0x45c471[_0x17c46c(_0x34edf8._0x280c52)][_0x17c46c(0x234)],_0x17c46c(_0x34edf8._0x50329c)):'<scenario\x20file\x20no\x20longer\x20on\x20disk>',_0x2abf32=_0x29a490[_0x17c46c(0x218)]??0x19,_0x499a66=_0x45c471[_0x17c46c(_0x34edf8._0x362c04)]?.[_0x17c46c(0x1fa)](-_0x2abf32)??null,{suggestedAction:_0x2e2c58,confidence:_0x41e3fd}=classify(_0x45c471),_0x16d8f8=buildPromptMarkdown({'bundle':_0x45c471,'scenarioSource':_0x35f263,'scenarioRelative':relative(_0x424528,_0x45c471[_0x17c46c(_0x34edf8._0x280c52)]['scenarioPath']),'consoleTail':_0x499a66,'suggestedAction':_0x2e2c58,'confidence':_0x41e3fd}),_0x3d077b=Math[_0x17c46c(_0x34edf8._0x4444a6)](_0x16d8f8[_0x17c46c(_0x34edf8._0x29280a)]/0x4);return{'promptMarkdown':_0x16d8f8,'suggestedAction':_0x2e2c58,'confidence':_0x41e3fd,'sources':{'bundleDir':_0xece997,'scenarioPath':_0x45c471[_0x17c46c(_0x34edf8._0x9d0756)]['scenarioPath'],'consoleEntries':_0x45c471['console']?.['length']??null,'hasSnapshot':!!_0x45c471[_0x17c46c(0x213)]},'approxTokens':_0x3d077b};}__name(composeFixPrompt,'composeFixPrompt');function classify(_0x145bdb){const _0x1fa481={_0x602e73:0x228,_0x4f1a38:0x212,_0x1ca91e:0x1dd,_0x4626b4:0x1e5,_0x2db04a:0x1f7,_0x16c5dd:0x238,_0x2a3f2f:0x215,_0xd9b266:0x22d,_0x145024:0x238,_0x5a82e9:0x215,_0x419785:0x21d,_0x4f4e0f:0x215},_0x13506a=_0xc52612,_0x11c196=_0x145bdb[_0x13506a(_0x1fa481._0x602e73)][_0x13506a(0x206)][_0x13506a(0x233)][_0x13506a(0x21c)](),_0x3c0688=_0x145bdb['trace'][_0x13506a(0x206)][_0x13506a(_0x1fa481._0x4f1a38)]??'';let _0x15850e=_0x13506a(_0x1fa481._0x1ca91e),_0x414e4f=_0x13506a(0x231);if(_0x3c0688===_0x13506a(_0x1fa481._0x4626b4)||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i['test'](_0x11c196))_0x15850e=_0x13506a(_0x1fa481._0x2db04a),_0x414e4f=_0x3c0688===_0x13506a(0x1e5)?_0x13506a(_0x1fa481._0x16c5dd):_0x13506a(_0x1fa481._0x2a3f2f);else{if(_0x3c0688===_0x13506a(_0x1fa481._0xd9b266)||/timeout|waiting for/i[_0x13506a(0x20f)](_0x11c196))_0x15850e='add-waitfor',_0x414e4f=_0x3c0688===_0x13506a(0x22d)?_0x13506a(_0x1fa481._0x145024):_0x13506a(_0x1fa481._0x5a82e9);else(_0x3c0688===_0x13506a(_0x1fa481._0x419785)||/asserttext|assertvisible|expected.*got/i[_0x13506a(0x20f)](_0x11c196))&&(_0x15850e='change-assertion',_0x414e4f=_0x3c0688===_0x13506a(0x21d)?_0x13506a(0x238):_0x13506a(_0x1fa481._0x4f4e0f));}return{'suggestedAction':_0x15850e,'confidence':_0x414e4f};}__name(classify,_0xc52612(0x20b));function _0xdab4(_0x2e456a,_0x141cb9){_0x2e456a=_0x2e456a-0x1ca;const _0x92ac66=_0x92ac();let _0xdab470=_0x92ac66[_0x2e456a];if(_0xdab4['qriaNT']===undefined){var _0x3a47bf=function(_0x300c0f){const _0x10563d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5fce67='',_0x2dd1c6='';for(let _0x1bdbea=0x0,_0x20ad59,_0x480030,_0x5a993b=0x0;_0x480030=_0x300c0f['charAt'](_0x5a993b++);~_0x480030&&(_0x20ad59=_0x1bdbea%0x4?_0x20ad59*0x40+_0x480030:_0x480030,_0x1bdbea++%0x4)?_0x5fce67+=String['fromCharCode'](0xff&_0x20ad59>>(-0x2*_0x1bdbea&0x6)):0x0){_0x480030=_0x10563d['indexOf'](_0x480030);}for(let _0x10ab5e=0x0,_0x486d18=_0x5fce67['length'];_0x10ab5e<_0x486d18;_0x10ab5e++){_0x2dd1c6+='%'+('00'+_0x5fce67['charCodeAt'](_0x10ab5e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2dd1c6);};_0xdab4['qappJw']=_0x3a47bf,_0xdab4['ntDOtq']={},_0xdab4['qriaNT']=!![];}const _0x2d0323=_0x92ac66[0x0],_0x89a601=_0x2e456a+_0x2d0323,_0x1e9229=_0xdab4['ntDOtq'][_0x89a601];return!_0x1e9229?(_0xdab470=_0xdab4['qappJw'](_0xdab470),_0xdab4['ntDOtq'][_0x89a601]=_0xdab470):_0xdab470=_0x1e9229,_0xdab470;}function buildPromptMarkdown(_0x79f554){const _0x5d5c2d={_0x439945:0x1e4,_0x5eb97e:0x220,_0x132e9f:0x1e3,_0x508d19:0x1e1,_0x162ded:0x213,_0x530ab9:0x1ef,_0x75fc35:0x229,_0x1bd6e1:0x228,_0x56b614:0x1d8,_0x39d3e1:0x209,_0x23b89f:0x1cc,_0x585039:0x206,_0x47537a:0x21b,_0x28e70d:0x1d2,_0x5291f4:0x206,_0x4d7a5c:0x1ee,_0x400af7:0x226,_0x5c7034:0x235,_0x217202:0x232,_0x374e49:0x1e9},_0xe121c2=_0xc52612,{bundle:_0x34505c,scenarioSource:_0x25d65f,scenarioRelative:_0x461fb5,consoleTail:_0x458e74,suggestedAction:_0x3a3bb7,confidence:_0x42353b}=_0x79f554,_0x4a8f8f=_0x25d65f[_0xe121c2(_0x5d5c2d._0x439945)]('\x0a')[_0xe121c2(0x1e3)]((_0x236d60,_0x4b6a34)=>String(_0x4b6a34+0x1)[_0xe121c2(0x1d7)](0x3,'\x20')+'\x20\x20'+_0x236d60)['join']('\x0a'),_0x5df3da=_0x458e74===null?'_('+CONSOLE_NOT_RECORDED+')_':_0x458e74['length']===0x0?_0xe121c2(_0x5d5c2d._0x5eb97e):_0x458e74[_0xe121c2(_0x5d5c2d._0x132e9f)](_0x1ad64c=>'['+_0x1ad64c[_0xe121c2(0x1ff)]+']\x20'+_0x1ad64c[_0xe121c2(0x201)][_0xe121c2(0x1e6)]()+':\x20'+_0x1ad64c[_0xe121c2(0x1d4)])[_0xe121c2(_0x5d5c2d._0x508d19)]('\x0a'),_0x2248b6=_0x34505c[_0xe121c2(0x213)]?_0xe121c2(0x202)+_0x34505c[_0xe121c2(_0x5d5c2d._0x162ded)][_0xe121c2(0x216)]+_0xe121c2(_0x5d5c2d._0x530ab9)+_0x34505c['snapshot'][_0xe121c2(_0x5d5c2d._0x75fc35)]+_0xe121c2(0x1fd):'_(no\x20semantic-dom\x20snapshot\x20captured\x20for\x20this\x20failure)_';return _0xe121c2(0x219)+_0x34505c[_0xe121c2(0x228)]['testFn']+_0xe121c2(0x221)+_0x461fb5+'`\x0a-\x20**Step\x20index**:\x20'+(_0x34505c[_0xe121c2(_0x5d5c2d._0x1bd6e1)][_0xe121c2(0x1d3)]??'?')+_0xe121c2(_0x5d5c2d._0x56b614)+_0x34505c['trace']['line']+_0xe121c2(_0x5d5c2d._0x39d3e1)+_0x34505c[_0xe121c2(_0x5d5c2d._0x1bd6e1)][_0xe121c2(_0x5d5c2d._0x23b89f)]+_0xe121c2(0x20c)+(_0x34505c[_0xe121c2(0x228)]['error'][_0xe121c2(0x212)]??'Error')+'`\x20—\x20'+_0x34505c[_0xe121c2(0x228)][_0xe121c2(_0x5d5c2d._0x585039)]['message']+_0xe121c2(_0x5d5c2d._0x47537a)+_0x3a3bb7+_0xe121c2(_0x5d5c2d._0x28e70d)+_0x42353b+_0xe121c2(0x1ea)+(_0x34505c[_0xe121c2(_0x5d5c2d._0x1bd6e1)][_0xe121c2(_0x5d5c2d._0x5291f4)]['stack']?_0xe121c2(_0x5d5c2d._0x4d7a5c)+_0x34505c[_0xe121c2(0x228)]['error'][_0xe121c2(_0x5d5c2d._0x400af7)]+_0xe121c2(_0x5d5c2d._0x5c7034):'')+_0xe121c2(_0x5d5c2d._0x217202)+_0x4a8f8f+_0xe121c2(0x20a)+_0x5df3da+_0xe121c2(_0x5d5c2d._0x374e49)+_0x2248b6+'\x0a\x0a##\x20What\x20we\x20need\x0a\x0aProduce\x20a\x20**unified\x20diff**\x20that\x20fixes\x20the\x20test.\x20Constraints:\x0a\x0a1.\x20Keep\x20the\x20same\x20test_*()\x20function\x20name\x20and\x20the\x20same\x20overall\x20flow\x20—\x20change\x20the\x0a\x20\x20\x20minimum\x20required\x20to\x20make\x20the\x20failing\x20step\x20succeed.\x0a2.\x20Prefer\x20the\x20D-22\x20selector\x20hierarchy:\x20`getByTestId`\x20→\x20`getByRole({name})`\x0a\x20\x20\x20→\x20`getByLabel`\x20→\x20`getByText`\x20→\x20`locator(css)`\x20(last\x20resort).\x0a3.\x20If\x20adding\x20a\x20wait,\x20prefer\x20`waitFor(loc)`\x20/\x20`waitForUrl(pattern)`\x20over\x20`pause(ms)`.\x0a4.\x20No\x20imports\x20—\x20DSL\x20functions\x20resolve\x20through\x20the\x20runtime\x20registry\x20by\x20name.\x0a5.\x20No\x20`async`/`await`\x20—\x20the\x20executor\x20handles\x20async\x20internally.\x0a6.\x20Output\x20ONLY\x20the\x20unified\x20diff\x20between\x20fences\x20```diff\x20…\x20```.\x20The\x20user\x0a\x20\x20\x20reviews\x20+\x20applies\x20it\x20manually\x20(D-25\x20—\x20we\x20never\x20auto-apply).\x0a';}__name(buildPromptMarkdown,_0xc52612(0x22e));function runPrepareFix(_0x47776d,_0x3903e3={}){const _0x502e7a={_0x307fba:0x1f5,_0x9e6c81:0x208,_0x1d8108:0x1f6,_0xfdc27b:0x236,_0x28a065:0x1eb,_0x562162:0x227,_0x461d6b:0x211,_0x3d1d4f:0x227,_0x543763:0x1ec,_0x39d812:0x222,_0x298969:0x1e0,_0x423ecd:0x223,_0x5e8644:0x22a,_0x2f090f:0x22b,_0x20d546:0x1e8,_0x3e0243:0x233,_0x11ba52:0x1d0},_0x25603e=_0xc52612,_0x200399=_0x3903e3[_0x25603e(0x22f)]??process[_0x25603e(_0x502e7a._0x307fba)],_0x16fbeb=_0x3903e3[_0x25603e(_0x502e7a._0x9e6c81)]??process[_0x25603e(0x210)],_0x192169=_0x3903e3['cwd']??process[_0x25603e(_0x502e7a._0x1d8108)](),_0x2a94d0=_0x47776d[_0x25603e(0x224)](_0x25603e(_0x502e7a._0xfdc27b));let _0x57226a=_0x47776d[_0x25603e(_0x502e7a._0x28a065)](_0x2d6b9a=>!_0x2d6b9a[_0x25603e(0x1dc)]('-'));if(_0x2a94d0||_0x57226a[_0x25603e(_0x502e7a._0x562162)]===0x0){const _0x410a84=listFailures(defaultFailuresRoot(_0x192169));if(_0x410a84[_0x25603e(0x227)]===0x0)return _0x16fbeb['write']('prepare-fix:\x20no\x20failure\x20bundles\x20found\x20under\x20.unotest/failures/.\x20Run\x20a\x20failing\x20test\x20first;\x20the\x20bundle\x20is\x20written\x20automatically.\x0a'),0x1;if(_0x57226a[_0x25603e(_0x502e7a._0x562162)]===0x0){const _0x3f1f41=new Map();for(const _0x56ac0d of _0x410a84){if(!_0x3f1f41[_0x25603e(0x1f3)](_0x56ac0d[_0x25603e(0x211)]))_0x3f1f41['set'](_0x56ac0d[_0x25603e(_0x502e7a._0x461d6b)],_0x56ac0d);}_0x57226a=[..._0x3f1f41[_0x25603e(0x1f8)]()]['map'](_0x3ed531=>_0x3ed531['runId']+'/'+_0x3ed531[_0x25603e(0x211)]);}}if(_0x57226a[_0x25603e(_0x502e7a._0x3d1d4f)]===0x0)return _0x16fbeb[_0x25603e(0x1e8)](_0x25603e(_0x502e7a._0x543763)),0x1;_0x200399[_0x25603e(0x1e8)]('prepare-fix:\x20composing\x20fix\x20prompts\x20for\x20'+_0x57226a['length']+_0x25603e(0x1ce));const _0x43f1bb=defaultFailuresRoot(_0x192169);for(const _0x158d45 of _0x57226a){try{const _0x140cb7=composeFixPrompt(_0x158d45,{'cwd':_0x192169,'failuresRoot':_0x43f1bb}),_0x299ada=_0x2dd1c6(_0x140cb7[_0x25603e(_0x502e7a._0x39d812)][_0x25603e(_0x502e7a._0x298969)],_0x25603e(_0x502e7a._0x423ecd));_0x5fce67(_0x299ada,_0x140cb7['promptMarkdown']),_0x200399['write'](_0x25603e(_0x502e7a._0x5e8644)+_0x158d45+'\x0a'),_0x200399['write'](_0x25603e(0x237)+_0x299ada+'\x0a'),_0x200399[_0x25603e(0x1e8)](_0x25603e(_0x502e7a._0x2f090f)+_0x140cb7['suggestedAction']+'\x20\x20confidence='+_0x140cb7['confidence']+'\x20\x20~'+_0x140cb7['approxTokens']+'t\x0a');}catch(_0x343e9c){_0x16fbeb[_0x25603e(_0x502e7a._0x20d546)]('\x20\x20✗\x20'+_0x158d45+':\x20'+(_0x343e9c instanceof Error?_0x343e9c[_0x25603e(_0x502e7a._0x3e0243)]:String(_0x343e9c))+'\x0a');}}return _0x200399[_0x25603e(0x1e8)](_0x25603e(_0x502e7a._0x11ba52)),0x0;}__name(runPrepareFix,'runPrepareFix');var invokedDirectly=process[_0xc52612(0x207)][0x1]&&fileURLToPath(import.meta.url)===process['argv'][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0xc52612(0x207)][_0xc52612(0x1fa)](0x2));process[_0xc52612(0x20e)](code);}export{runPrepareFix};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x51841e=_0x3573;(function(_0x1e4801,_0x21794a){const _0x1b8535={_0x5e7a66:0x1eb,_0x12a3c8:0x1ef,_0x4c8688:0x212,_0xb04ae1:0x1ea,_0x9aedeb:0x213},_0xa8f514=_0x3573,_0x57bc27=_0x1e4801();while(!![]){try{const _0x10a233=-parseInt(_0xa8f514(_0x1b8535._0x5e7a66))/0x1*(-parseInt(_0xa8f514(0x1fd))/0x2)+parseInt(_0xa8f514(0x20f))/0x3+-parseInt(_0xa8f514(0x1f9))/0x4*(parseInt(_0xa8f514(_0x1b8535._0x12a3c8))/0x5)+-parseInt(_0xa8f514(_0x1b8535._0x4c8688))/0x6*(-parseInt(_0xa8f514(_0x1b8535._0xb04ae1))/0x7)+parseInt(_0xa8f514(0x207))/0x8*(-parseInt(_0xa8f514(0x1e9))/0x9)+-parseInt(_0xa8f514(0x1fa))/0xa*(parseInt(_0xa8f514(0x211))/0xb)+parseInt(_0xa8f514(_0x1b8535._0x9aedeb))/0xc;if(_0x10a233===_0x21794a)break;else _0x57bc27['push'](_0x57bc27['shift']());}catch(_0xa8c9c9){_0x57bc27['push'](_0x57bc27['shift']());}}}(_0x9588,0xd96a6));var __defProp=Object[_0x51841e(0x1e6)],__name=(_0x1bd8b6,_0x1eaf66)=>__defProp(_0x1bd8b6,_0x51841e(0x210),{'value':_0x1eaf66,'configurable':!![]});import{mkdir,writeFile}from'fs/promises';import{existsSync}from'fs';import{join}from'path';var templates={'jsconfigJson':_0x51841e(0x214),'scenarioTemplate':_0x51841e(0x205),'agentsMd':_0x51841e(0x1e4),'claudeMdBody':_0x51841e(0x20a),'exampleCollection':_0x51841e(0x1f7),'examples':{'01-smoke.js':'//\x20Example\x2001\x20—\x20smoke:\x20navigate\x20+\x20click\x20+\x20URL\x20assertion.\x0a//\x0a//\x20The\x20minimal\x20three-step\x20pattern.\x20Hits\x20playground.unotest.com\x20so\x20no\x20project\x0a//\x20setup\x20is\x20needed.\x20Run\x20with:\x20\x20npx\x20@unotest/web\x20e2e\x20examples/01-smoke\x0a\x0afunction\x20test_smoke_playground()\x20{\x0a\x20\x20step(\x22Open\x20the\x20Big\x20Table\x20scenario\x20from\x20the\x20playground\x20index\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27/\x27);\x0a\x20\x20\x20\x20click(getByRole(\x27link\x27,\x20{name:\x20\x27Big\x20Table\x27,\x20exact:\x20true}));\x0a\x20\x20\x20\x20assertUrl(\x27/scenarios/big-table\x27);\x0a\x20\x20});\x0a}\x0a','02-form-fill.js':_0x51841e(0x206)},'secretsExample':_0x51841e(0x20d),'envExample':_0x51841e(0x201)};function unotestConfigMjs(_0x2c9d7d){const _0x326e2d={_0x4ead71:0x20c,_0x1e925d:0x204,_0x395fb9:0x1e7},_0x3e9aca=_0x51841e,_0x3127a7=_0x2c9d7d===void 0x0?_0x3e9aca(_0x326e2d._0x4ead71):_0x3e9aca(0x1fe)+JSON[_0x3e9aca(_0x326e2d._0x1e925d)](_0x2c9d7d)+',';return _0x3e9aca(0x20e)+_0x3127a7+_0x3e9aca(_0x326e2d._0x395fb9);}__name(unotestConfigMjs,'unotestConfigMjs');function _0x9588(){const _0x4f2b7c=['zgvMAw5LuhjVCgvYDhK','cN07cG','BgvUz3rO','mtmXmZKWmtLHr3HtC3y','mti3ndiXuw16rMXu','mxLiyLnNva','CMvHze93BLzLCNnPB24','zxHHBxbSzxm','zw52rxHHBxbSzq','mJi4mdvlEhzzruC','ChvZAa','C3vPDgvqywnRywDLsNnVBG','CgfJA2fNzs5QC29U','C2nHzMzVBgrxB3jRC3bHy2u','mdeTC21VA2uUANm','Dw5VDgvZDc1ZDwL0zq','lI4VlI4VCgfJA2fNzs5QC29U','iYbuAguGy29SBgvJDgLVBIbHihjLBw90zsbYDw4GC3rHCNrZihDPDgGUcImkiYbbigjVEcbYDw5ZigeGy29SBgvJDgLVBIaOB3iGysbZy2HLzhvSzsKSig5VDcbHihnPBMDSzsbZy2vUyxjPBYbIEsbUyw1LoGOJicaGBNb4ieb1BM90zxn0l3DLyIbIDw5KBguGChvZAcaTlxj1BIaTlwvUDIa8zw52AxjVBM1LBNq+ic0Ty29SBgvJDgLVBIbLEgfTCgXLCWOJcImGvgHLC2uGDhDVigHPDcbWBgf5z3jVDw5KlNvUB3rLC3qUy29TlcbZBYb0Agv5ihbHC3mGyMvMB3jLihLVDxiGB3DUigfWCcbPCWOJihjLywnOywjSzsbMCM9TihrOzsbIB3GUiefKzcb5B3vYig93BIbZy2vUyxjPB3mGDg8GDgHPCYbSAxn0igfZihLVDsb3CML0zqOJihrOzw0Sig9YignVChKGDgHLigzPBguGDw5KzxiGyw5VDgHLCIbUyw1LigzVCIbHignVBgXLy3rPB24GB2yGEw91CIbVD24UcNnJzw5HCMLVCZOkicaTigv4yw1WBgvZlZaXlxnTB2TLcIaGlsbLEgfTCgXLCY8WmI1MB3jTlwzPBgWk','ztjL','odC2vgv0v1b0','mJbsqND2uwy','ANnJB25MAwCUANnVBG','Dw5VDgvZDc5JB25MAwCUBwPZ','mtyZotG3ofL5EwD3CW','icbJAgfUBMvSoIa','y2HHBM5LBa','DxrMoa','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','x2HLBhbLCNm','Dw5VDgvZDa','C3rYAw5NAwz5','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','oenxu1rmCq','DMvYC2LVBG','igHHCYbUBYb1C2fIBguGiNzLCNnPB24IigzPzwXK','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','CgfJA2fNzs5QC29Uigf0ia','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','mJK3mJCZm3fkzgniBG','BMfTzq','nJe2nZe3mKfiqMTmqW','mJGYBfHrwvbh','mJe2ntaZnJrREwDOyM4','EWOGicjJB21WAwXLCK9WDgLVBNmIoIb7cIaGicaIy2HLy2TkCYi6igzHBhnLlaOGicaGiNrHCMDLDci6icjLCZiWmJiIlaOGicaGiMXPyIi6ifSIzxmYmdiYiL0ScIaGicaIDhLWzxmIoIbBxqOGih0ScIaGiMLUy2X1zguIoIbBcIaGicaIkIOVkI5QCYiScIaGicaIlI4VlNvUB3rLC3qVDhLWzxmVzw52lMqUDhmIlaOGicaGiI4VBM9Kzv9TB2r1BgvZl0b1BM90zxn0l3DLyI90ExbLCY91BM90zxn0lwrZBc5KlNrZiGOGif0kFqO','C3rYAw5N','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','ANnJB25MAwDkC29U'];_0x9588=function(){return _0x4f2b7c;};return _0x9588();}function suitePackageJson(_0x1847cc){const _0x113acf=_0x51841e;return JSON['stringify']({'name':_0x113acf(0x1f5),'private':!![],'devDependencies':{'@unotest/web':'^'+_0x1847cc}},null,0x2)+'\x0a';}__name(suitePackageJson,_0x51841e(0x1f1));function _0x3573(_0x35e286,_0x5df559){_0x35e286=_0x35e286-0x1e4;const _0x9588e8=_0x9588();let _0x3573e3=_0x9588e8[_0x35e286];if(_0x3573['cGEdmO']===undefined){var _0x233360=function(_0x36f6b3){const _0xc3cd6e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1bd8b6='',_0x1eaf66='';for(let _0x2c9d7d=0x0,_0x3127a7,_0x1847cc,_0x4195f6=0x0;_0x1847cc=_0x36f6b3['charAt'](_0x4195f6++);~_0x1847cc&&(_0x3127a7=_0x2c9d7d%0x4?_0x3127a7*0x40+_0x1847cc:_0x1847cc,_0x2c9d7d++%0x4)?_0x1bd8b6+=String['fromCharCode'](0xff&_0x3127a7>>(-0x2*_0x2c9d7d&0x6)):0x0){_0x1847cc=_0xc3cd6e['indexOf'](_0x1847cc);}for(let _0x5981b4=0x0,_0x2a42cf=_0x1bd8b6['length'];_0x5981b4<_0x2a42cf;_0x5981b4++){_0x1eaf66+='%'+('00'+_0x1bd8b6['charCodeAt'](_0x5981b4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1eaf66);};_0x3573['suhwyE']=_0x233360,_0x3573['rQgRvW']={},_0x3573['cGEdmO']=!![];}const _0x59f637=_0x9588e8[0x0],_0x546e98=_0x35e286+_0x59f637,_0x34b127=_0x3573['rQgRvW'][_0x546e98];return!_0x34b127?(_0x3573e3=_0x3573['suhwyE'](_0x3573e3),_0x3573['rQgRvW'][_0x546e98]=_0x3573e3):_0x3573e3=_0x34b127,_0x3573e3;}import{readFileSync}from'fs';import{dirname,resolve}from'path';import{fileURLToPath}from'url';function readOwnVersion(){const _0x1abb17={_0x4cb27a:0x1f6,_0x407873:0x208,_0x2367a5:0x1e8,_0x15a058:0x20b,_0x40a1bb:0x209},_0x114dbc=_0x51841e,_0x4195f6=dirname(fileURLToPath(import.meta.url)),_0x5981b4=resolve(_0x4195f6,_0x114dbc(_0x1abb17._0x4cb27a)),_0x2a42cf=readFileSync(_0x5981b4,_0x114dbc(0x200)),_0x3aee66=JSON['parse'](_0x2a42cf);if(typeof _0x3aee66[_0x114dbc(0x208)]!==_0x114dbc(0x215)||_0x3aee66[_0x114dbc(_0x1abb17._0x407873)][_0x114dbc(_0x1abb17._0x2367a5)]===0x0)throw new Error(_0x114dbc(_0x1abb17._0x15a058)+_0x5981b4+_0x114dbc(_0x1abb17._0x40a1bb));return _0x3aee66[_0x114dbc(0x208)];}__name(readOwnVersion,_0x51841e(0x1ec));async function scaffoldWorkspace(_0x5f1407,_0x2d30ca={}){const _0x241b7c={_0x34aab7:0x1f8,_0x38f65a:0x203,_0x3e6822:0x203,_0x358bd4:0x203,_0x968703:0x1e5,_0xea98cb:0x1f8,_0x3469ce:0x1ed,_0x11dd3e:0x1f4,_0xa3fb05:0x1f0},_0x475337=_0x51841e,_0x486b89=[],_0x317751=[];await mkdir(join(_0x5f1407,_0x475337(0x203),_0x475337(_0x241b7c._0x34aab7),_0x475337(0x1ed)),{'recursive':!![]}),await mkdir(join(_0x5f1407,'unotest',_0x475337(0x1f8),_0x475337(0x202)),{'recursive':!![]});const _0x3a25c7=[{'rel':join(_0x475337(_0x241b7c._0x38f65a),_0x475337(0x1fc)),'content':unotestConfigMjs(_0x2d30ca[_0x475337(0x1ff)])},{'rel':join(_0x475337(_0x241b7c._0x3e6822),_0x475337(0x1f2)),'content':suitePackageJson(readOwnVersion())},{'rel':join(_0x475337(_0x241b7c._0x358bd4),'.env'),'content':templates[_0x475337(0x1ee)]},{'rel':join(_0x475337(0x203),_0x475337(0x1fb)),'content':templates[_0x475337(_0x241b7c._0x968703)]},{'rel':join('unotest',_0x475337(_0x241b7c._0xea98cb),_0x475337(0x1ed),_0x475337(0x1f4)),'content':templates[_0x475337(_0x241b7c._0x3469ce)][_0x475337(_0x241b7c._0x11dd3e)]}];for(const {rel:_0x34a6a1,content:_0x3acb2f}of _0x3a25c7){const _0x2543ee=join(_0x5f1407,_0x34a6a1);if(existsSync(_0x2543ee)){_0x317751[_0x475337(_0x241b7c._0xa3fb05)](_0x34a6a1);continue;}await writeFile(_0x2543ee,_0x3acb2f),_0x486b89[_0x475337(0x1f0)](_0x34a6a1);}return{'projectRoot':_0x5f1407,'created':_0x486b89,'skipped':_0x317751};}__name(scaffoldWorkspace,_0x51841e(0x1f3));export{scaffoldWorkspace};
|
|
1
|
+
const _0x568cf1=_0x13b5;(function(_0x454ad5,_0x4ae648){const _0x391cdb={_0x531365:0x8b,_0x112d79:0x78,_0x4f0594:0x9b},_0x9084ad=_0x13b5,_0x248f11=_0x454ad5();while(!![]){try{const _0x5c469b=parseInt(_0x9084ad(0x8e))/0x1+parseInt(_0x9084ad(0x84))/0x2*(-parseInt(_0x9084ad(_0x391cdb._0x531365))/0x3)+parseInt(_0x9084ad(_0x391cdb._0x112d79))/0x4*(parseInt(_0x9084ad(0x9d))/0x5)+parseInt(_0x9084ad(0x9c))/0x6*(-parseInt(_0x9084ad(_0x391cdb._0x4f0594))/0x7)+parseInt(_0x9084ad(0xa1))/0x8+-parseInt(_0x9084ad(0x82))/0x9*(-parseInt(_0x9084ad(0x86))/0xa)+parseInt(_0x9084ad(0x92))/0xb*(-parseInt(_0x9084ad(0x81))/0xc);if(_0x5c469b===_0x4ae648)break;else _0x248f11['push'](_0x248f11['shift']());}catch(_0x3521f2){_0x248f11['push'](_0x248f11['shift']());}}}(_0x1ecb,0x4f678));var __defProp=Object[_0x568cf1(0x8c)],__name=(_0x4bbf4f,_0x338f6c)=>__defProp(_0x4bbf4f,_0x568cf1(0x90),{'value':_0x338f6c,'configurable':!![]});function _0x1ecb(){const _0x4d8123=['Dw5VDgvZDa','C2nHzMzVBgrxB3jRC3bHy2u','mtG5mtu2rxn4v1b6','mJqZyKHQuLnk','lY8GrxHHBxbSzsaWmIdIGjqGzMLSBcbHBIbPBNb1DcaRigfZC2vYDcb0AguGyxbWihjLywn0zwqUcI8VcI8ViefNywLUC3qGCgXHEwDYB3vUzc51BM90zxn0lMnVBs9Zy2vUyxjPB3mVyMLNlxrHyMXLlIbezw1VBNn0CMf0zxmGz2v0qNLsB2XLcI8VigzVCIbHigXHyMvSBgvKigLUChv0lcb0ExbLzcbPBNb1Dcb2AweGzMLSBcGPlcbHBMqGysbSB2nHDg9Yig1LDgHVzc1JAgfPBGOVlYaOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhr9ks5MAxjZDcGPksbPBIbHBIbHC3nLCNrPB24UcI8Vifj1BIb3AxrOoIaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdiTzM9YBs1MAwXScGPMDw5JDgLVBIb0zxn0x2zVCM1FzMLSBf9OyxbWEv9WyxrOkcKGEWOGihn0zxaOiKzPBhrLCIb0AguGqMLNifrHyMXLigj5igeGBMfTzsiSicGPid0+ihSkicaGigDVDg8OjY9Zy2vUyxjPB3mVyMLNlxrHyMXLjYK7cIaGicbMAwXSkgDLDej5uM9SzsGNDgv4DgjVEcCSihTUyw1LoIaNrMLSDgvYigj5ig5HBwuNFsKSicDvBweGuxvPBM4NktSkicb9ktSkcIaGC3rLCcGIrMLSDgvYAw5NihjLDMvHBhmGDgHLienSzwfYigzPBhrLCIbJB250CM9SigfUzcbTyxrJAgLUzYbYB3DZiIWGkcKGpt4GEWOGicaGyxnZzxj0vMLZAwjSzsHNzxrcEvjVBguOj2j1DhrVBICSihTUyw1LoIaNq2XLyxiGzMLSDgvYj30PktSkicaGigfZC2vYDfzPC2LIBguOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhq6icDvBweGuxvPBM4NFsKUzMLYC3qOksK7cIaGFsK7cN0k','mZCWmK9LEffJwq','lI4VlI4VCgfJA2fNzs5QC29U','oda1mZbyv0vjr3O','Dw5VDgvZDc1ZDwL0zq','CgfJA2fNzs5QC29Uigf0ia','BgvUz3rO','DMvYC2LVBG','odu1quzctfD2','zgvMAw5LuhjVCgvYDhK','CMvHze93BLzLCNnPB24','mZKXnty0DuzkuwL1','Dw5VDgvZDc5JB25MAwCUBwPZ','BMfTzq','C3vPDgvqywnRywDLsNnVBG','mtG3D0PiyMzr','DxrMoa','ANnJB25MAwCUANnVBG','icbJAgfUBMvSoIa','EWOGicjJB21WAwXLCK9WDgLVBNmIoIb7cIaGicaIy2HLy2TkCYi6igzHBhnLlaOGicaGiNrHCMDLDci6icjLCZiWmJiIlaOGicaGiMXPyIi6ifSIzxmYmdiYiL0ScIaGicaIDhLWzxmIoIbBxqOGih0ScIaGiMLUy2X1zguIoIbBcIaGicaIkIOVkI5QCYiScIaGicaIlI4VlNvUB3rLC3qVDhLWzxmVzw52lMqUDhmIlaOGicaGiI4VBM9Kzv9TB2r1BgvZl0b1BM90zxn0l3DLyI90ExbLCY91BM90zxn0lwrZBc5KlNrZiGOGif0kFqO','x2HLBhbLCNm','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','Dw5VDgvZDenVBMzPz01QCW','mdeTC21VA2uUANm','odeYBLPQExn3','mta4nNbkrfnjBq','mJm2nZe5mhn2zfDlsa','icaVlYbJAgfUBMvSoIaNy2HYB21LjYWGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8Gj2nOCM9TzsCGlYaNBxnLzgDLjYaVig51BgWGkgj1BMrSzwqP','lMvUDG','C3rYAw5N','ndC0ndCYsuHKDLfe','zxHHBxbSzxm','lY8GrxHHBxbSzsaWmsdIGjqGC21VA2u6ig5HDMLNyxrLicSGy2XPy2SGkYbvuKWGyxnZzxj0Aw9UlGOVlWOVlYbuAguGBwLUAw1HBcb0AhjLzs1ZDgvWihbHDhrLCM4UieHPDhmGCgXHEwDYB3vUzc51BM90zxn0lMnVBsbZBYbUBYbWCM9Qzwn0cI8VihnLDhvWigLZig5LzwrLzc4GuNvUihDPDgG6icbUChGGqhvUB3rLC3qVD2vIiguYzsbLEgfTCgXLCY8Wms1ZBw9RzqOkzNvUy3rPB24GDgvZDf9ZBw9Rzv9WBgf5z3jVDw5KkcKGEWOGihn0zxaOiK9Wzw4GDgHLiejPzYbuywjSzsbZy2vUyxjPBYbMCM9TihrOzsbWBgf5z3jVDw5KigLUzgv4iIWGkcKGpt4GEWOGicaGz290BYGNlYCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDSAw5RjYWGE25HBwu6icDcAwCGvgfIBguNlcbLEgfJDdOGDhj1zx0PktSkicaGigfZC2vYDfvYBcGNl3nJzw5HCMLVCY9IAwCTDgfIBguNktSkicb9ktSkFqO','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWOGic8VihnHBMrIB3G6ihSGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GyxbPq2fSBcaVihvWBg9HzcaVigrIuxvLCNKGlYbZAgvSBaOGic8VicaGyxbPqMfZzvvYBdOGj2H0DhbZoI8VyxbPlNLVDxiTyxbWlNrLC3qNlcaGicaGlY8GyMfZzsbMB3iGyxbPq2fSBcGNue9tvcCSicCVCgf0AcCSiokaPIKkicaVlYaGihvWBg9HzerPCJOGj3vUB3rLC3qVzML4DhvYzxmNlcaGicaGicaGicaGicaGic8VihjVB3qGzM9YihvWBg9HzcGNzg9JlNbKzICPihbHDgHZoWOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGChjVAMvJDcbYB290lIbvCgXVywrZig1HEqOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GBM90igvZy2fWzsbPDcaOCMvSyxrPDMuGCgf0AhmGB25SEsKUcIaGlY8GicbKyxrHyMfZztOGj3bVC3rNCMvZCwW6lY9SB2nHBgHVC3q6ntqZmI9HChbFDgvZDcCSicaVlYbKyLf1zxj5ic8GzgjfEgvJcIaGlY8GFsWk','iYbuAguGy29SBgvJDgLVBIbHihjLBw90zsbYDw4GC3rHCNrZihDPDgGUcImkiYbbigjVEcbYDw5ZigeGy29SBgvJDgLVBIaOB3iGysbZy2HLzhvSzsKSig5VDcbHihnPBMDSzsbZy2vUyxjPBYbIEsbUyw1LoGOJicaGBNb4ieb1BM90zxn0l3DLyIbIDw5KBguGChvZAcaTlxj1BIaTlwvUDIa8zw52AxjVBM1LBNq+ic0Ty29SBgvJDgLVBIbLEgfTCgXLCWOJcImGvgHLC2uGDhDVigHPDcbWBgf5z3jVDw5KlNvUB3rLC3qUy29TlcbZBYb0Agv5ihbHC3mGyMvMB3jLihLVDxiGB3DUigfWCcbPCWOJihjLywnOywjSzsbMCM9TihrOzsbIB3GUiefKzcb5B3vYig93BIbZy2vUyxjPB3mGDg8GDgHPCYbSAxn0igfZihLVDsb3CML0zqOJihrOzw0Sig9YignVChKGDgHLigzPBguGDw5KzxiGyw5VDgHLCIbUyw1LigzVCIbHignVBgXLy3rPB24GB2yGEw91CIbVD24UcNnJzw5HCMLVCZOkicaTigv4yw1WBgvZlZaXlxnTB2TLcIaGlsbLEgfTCgXLCY8WmI1MB3jTlwzPBgWk','nejps3b4Ca','ztjL','lY8Gtw92zsaRihjLBMfTzsb0AgLZigzPBguGDg8GpgzLyxr1CMu+lZX5B3vYx25HBwu+lMPZicHLlMCUcI8Vigf1DgGVBg9NAw4UANmPigfUzcb0AguGzNvUy3rPB24GyMvSB3CGDg8GDgvZDf88Ew91CL9Uyw1LpIGPlIbty2vUyxjPB3mGBgL2zqOVlYbPBIbMzwf0DxjLihn1yMzVBgrLCNmSie5pvcb0AguGztjLihjVB3qG4OcuihrOzsbSAw50zxiGkgXPBNq6C2nLBMfYAw8TAw4TCM9VDcKklY8GCMvQzwn0CYbHihrLC3qGzMLSzsbWBgfJzwqGzgLYzwn0BhKGAw4GDw5VDgvZDc9LmMuVlIbuAguGBg9HzgvYigrLCML2zxmGDgHLcI8VigvUDhj5ig5HBwuGzNjVBsb0AguGzMLSzsbIyxnLBMfTzsdIGjqGA2vIywiTy2fZzsbKyxnOzxmGyMvJB21LihvUzgvYC2nVCMvZlGOklY8GrxzLCNKGzxHLy3v0ywjSzsbZDgvWig11C3qGC2L0igLUC2LKzsbHihn0zxaOiI4UlIiSicGPid0+ihSG4OcMih0PigjSB2nRlIbuAguklY8GDgL0BguGAxmGysbWBgfPBI1fBMDSAxnOigrLC2nYAxb0Aw9Uig9MihrOzsbNCM91CdSGDgHLihn0zxbZigLUC2LKzsbHCMuklY8GDgHLigLTCgXLBwvUDgf0Aw9UlIbhCM91CcbIEsbPBNrLBNqGkfnLDhvWic8Grw50zxiGlYbby3qGlYbbC3nLCNqGB3iklY8GD2HHDgv2zxiGCMvHzhmGD2vSBcKG4Ocuig9UzsbIBg9JAYbWzxiGBg9NAwnHBcbJAhvUAY4kcMz1BMn0Aw9UihrLC3rFEw91CL9Uyw1Lx2HLCMuOksb7cIaGC3rLCcGIu2vLzcbHigTUB3DUihvZzxiGDMLHiercic8GqvbjigzPEhr1CMvZigzYB20Gx2HLBhbLCNmViIWGkcKGpt4GEWOGicaGlY8GicaGD2LWzv9LmMvFDxnLCNmOktSkicaGic8VicaGihvZzxjFAwqGpsbZzwvKx3vZzxiOj2fSAwnLqgv4yw1WBguUy29TjYWGj3nLy3jLDcCPoWOGih0PoWOkicbZDgvWkcjtAwDUigLUigfZihrOzsbZzwvKzwqGDxnLCIiSicGPid0+ihSkicaGigDVDg8Oj2H0DhbZoI8VEw91CI1HChaUDgvZDc9SB2DPBICPoWOGicaGlY8GicaGzMLSBcHNzxrcEuXHyMvSkcDfBwfPBcCPlcaNywXPy2vazxHHBxbSzs5JB20NktSkicaGic8VicaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGj3nLy3jLDcCPoWOGicaGlY8GicaGy2XPy2SOz2v0qNLsB2XLkcDIDxr0B24Nlcb7BMfTztOGj0XVzYbPBID9ksK7cIaGFsK7cGOGihn0zxaOiKfZC2vYDcb0AguGzgfZAgjVyxjKihnOB3DZihrOzsbZAwDUzwqTAw4GDxnLCIiSicGPid0+ihSkicaGic8VicaGigfZC2vYDfvYBcGNl2rHC2HIB2fYzcCPoWOGicaGlY8GicaGyxnZzxj0vgv4DcHNzxrcEvjVBguOj2HLywrPBMCNksWGj1DLBgnVBwuSiefSAwnLjYK7cIaGicaVlYaGicbJB3vUDca9igrIuxvLCNKOj1nftevdvcbJB3vUDcGQksbguK9nihvZzxjZifDirvjfigfJDgL2zsa9ihrYDwuNktSkicaGic8VicaGigfZC2vYDfrYDwuOy291BNqGpIaWlcaNzxHWzwn0zwqGyxqGBgvHC3qGB25LigfJDgL2zsb1C2vYjYK7cIaGFsK7cN0k','zw52rxHHBxbSzq','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','y2HHBM5LBa','ChvZAa'];_0x1ecb=function(){return _0x4d8123;};return _0x1ecb();}import{mkdir,writeFile}from'fs/promises';import{existsSync}from'fs';import{join}from'path';var templates={'jsconfigJson':_0x568cf1(0x96),'scenarioTemplate':_0x568cf1(0x7a),'agentsMd':'#\x20@unotest/web\x20—\x20guide\x20for\x20AI\x20agents\x20(and\x20humans)\x0a\x0aThis\x20project\x20uses\x20[`@unotest/web`](https://www.npmjs.com/package/@unotest/web)\x0afor\x20end-to-end\x20testing\x20of\x20web\x20applications.\x0a\x0a##\x20Writing\x20a\x20test\x20—\x20use\x20the\x20skill\x20+\x20MCP\x0a\x0aFor\x20ANY\x20request\x20to\x20write,\x20record,\x20or\x20run\x20an\x20e2e\x20test:\x0a\x0a1.\x20Open\x20the\x20**`write-e2e-test`**\x20skill\x20—\x20`.claude/skills/write-e2e-test/SKILL.md`\x0a\x20\x20\x20(in\x20Claude\x20Code\x20you\x20can\x20also\x20run\x20`/write-e2e-test`)\x20—\x20and\x20follow\x20it.\x0a2.\x20Drive\x20the\x20browser\x20through\x20the\x20**`unotest-web`\x20MCP\x20tools**:\x20`new_context`\x20→\x0a\x20\x20\x20`explore_start`\x20→\x20`explore_step`\x20→\x20`get_page_snapshot`\x20→\x20`run_test`.\x0a\x0aDo\x20NOT\x20hand-author\x20tests\x20blind\x20or\x20map\x20the\x20project\x20with\x20`find`/`ls`/`awk`\x20—\x20the\x0askill\x27s\x20Phase\x200\x20names\x20the\x20exact\x20files\x20to\x20read.\x20Runnable,\x20copy-pasteable\x0aexamples\x20live\x20in\x20`unotest/e2e/examples/`.\x0a\x0a##\x20Layout\x0a\x0a-\x20`unotest/e2e/<feature>/<name>.js`\x20—\x20test\x20scenarios,\x20grouped\x20by\x20feature/page\x0a\x20\x20(a\x20file\x20may\x20hold\x20several\x20`test_*`\x20—\x20each\x20is\x20its\x20own\x20run;\x20`e2e\x20<file>\x20--test\x20<name>`\x0a\x20\x20plays\x20one).\x20**Required:**\x20every\x20scenario\x20lives\x20in\x20a\x0a\x20\x20feature\x20subfolder.\x20A\x20test\x20file\x20placed\x20directly\x20in\x20`unotest/e2e/`\x20is\x20rejected\x0a\x20\x20by\x20the\x20linter\x20(`lint:scenario-in-root`).\x0a-\x20`unotest/e2e/_helpers/`\x20—\x20project-specific\x20helpers\x20(visible\x20to\x20all\x20scenarios)\x0a-\x20`unotest/e2e/_template.js`\x20—\x20starting-point\x20template\x20(copy\x20into\x20a\x20feature\x20folder)\x0a\x0a##\x20DSL\x20conventions\x0a\x0aThe\x20DSL\x20is\x20a\x20strict\x20JS\x20subset\x20parsed\x20by\x20@unotest/dsl.\x20Method\x20chains,\x20options-\x0aobjects,\x20and\x20variables\x20are\x20allowed.\x20Multi-line\x20strings\x20use\x0abackticks\x20but\x20`${...}`\x20interpolation\x20is\x20forbidden\x20(sandbox\x20boundary\x20—\x0apass\x20values\x20via\x20positional\x20args).\x0a\x0a**Every\x20step\x20must\x20sit\x20inside\x20a\x20`step(\x22description\x22,\x20()\x20=>\x20{\x20…\x20})`\x20block\x20(linter\x0aenforces).**\x20The\x20title\x20is\x20plain-English\x20intent;\x20the\x20steps\x20inside\x20are\x20the\x0aimplementation.\x20When\x20a\x20step\x20later\x20breaks\x20(selector\x20drift),\x20you\x20read\x20the\x0atitle\x20to\x20understand\x20what\x20the\x20group\x20was\x20trying\x20to\x20do\x20and\x20repair\x20it.\x20Group\x20by\x0aintent,\x20one\x20block\x20per\x20logical\x20chunk:\x0a\x0a```\x0afunction\x20test_login()\x20{\x0a\x20\x20step(\x22Sign\x20in\x20as\x20the\x20demo\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27https://app.example.com/login\x27);\x0a\x20\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20\x27demo@example.com\x27);\x0a\x20\x20\x20\x20click(getByRole(\x27button\x27,\x20{name:\x20\x27Log\x20in\x27}));\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Dashboard\x20shows\x20the\x20signed-in\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20assertText(getByRole(\x27heading\x27),\x20\x27Welcome\x27);\x0a\x20\x20});\x0a}\x0a```\x0a\x0a**Base\x20URL\x20—\x20write\x20relative\x20paths.**\x20`APP_BASE_URL`\x20(in\x20`unotest/.env`)\x20is\x20the\x0aapp\x27s\x20base;\x20`goto(\x27/login\x27)`\x20resolves\x20against\x20it.\x20Don\x27t\x20concatenate\x0a(`goto(APP_BASE_URL\x20+\x20\x27/login\x27)`)\x20—\x20just\x20pass\x20the\x20path:\x0a\x0a```\x0agoto(\x27/login\x27);\x0afill(getByLabel(\x27Password\x27),\x20TEST_USER_PASSWORD);\x0a```\x0a\x0a**Environments.**\x20Override\x20`APP_BASE_URL`\x20(and\x20any\x20var)\x20per\x20environment\x20with\x0aoverlay\x20files\x20—\x20`unotest/.env.staging`,\x20`unotest/.env.production`\x20(secrets:\x0a`unotest/.secrets.<env>`).\x20Select\x20one\x20at\x20run\x20time:\x20`npx\x20@unotest/web\x20e2e\x20<name>\x0a--env\x20staging`.\x20The\x20overlay\x20layers\x20over\x20the\x20base\x20`.env`\x20(overlay\x20wins).\x0a\x0a**External\x20variables\x20&\x20secrets:**\x20reference\x20logins\x20/\x20tokens\x20by\x20a\x20bare\x0a`UPPER_SNAKE`\x20name\x20—\x20resolved\x20from\x20`unotest/.env`\x20(normal)\x20or\x20`unotest/.secrets`\x0a(secret,\x20masked\x20in\x20logs).\x20No\x20`env()`/`secret()`\x20wrapper.\x20A\x20lowercase\x20name\x20is\x20an\x0ain-scenario\x20binding;\x20an\x20unknown\x20`UPPER_SNAKE`\x20fails\x20the\x20run\x20asking\x20you\x20to\x20add\x20it\x0ato\x20`unotest/.env`.\x0a\x0a**Selector\x20hierarchy\x20(D-22\x20—\x20linter\x20enforces):**\x0a\x0a1.\x20`getByTestId(id)`\x20—\x20most\x20stable\x0a2.\x20`getByRole(role,\x20{name})`\x20—\x20semantic,\x20a11y-aware\x0a3.\x20`getByLabel(text)`\x20—\x20for\x20form\x20fields\x0a4.\x20`getByText(text)`\x20—\x20for\x20unique\x20text\x0a5.\x20`locator(css)`\x20—\x20last\x20resort\x20(linter\x20warns)\x0a\x0aFull\x20reference\x20shipped\x20with\x20the\x20package:\x0a\x0a-\x20`node_modules/@unotest/web/guides/dsl-reference.md`\x20—\x20DSL\x20functions\x20+\x20linter\x20codes\x0a\x0a##\x20Running\x20(CLI)\x0a\x0a-\x20`npx\x20@unotest/web\x20e2e\x20<feature>/<name>`\x20—\x20run\x20a\x20scenario\x20by\x20name\x0a-\x20`npx\x20@unotest/web\x20lint`\x20—\x20static\x20check\x20of\x20all\x20scenarios\x20+\x20helpers\x0a-\x20`npx\x20@unotest/web\x20mcp`\x20—\x20start\x20the\x20MCP\x20server\x20for\x20agent\x20control\x0a\x0a##\x20Via\x20MCP\x20(Claude\x20Code\x20/\x20Claude\x20Desktop\x20/\x20Cursor)\x0a\x0aThe\x20MCP\x20server\x20exposes:\x0a\x0a-\x20`run_test\x20name=\x22<name>\x22\x20mode=\x22step\x22\x20pauseOnFailure=true`\x20—\x20run\x20with\x20step-mode\x0a-\x20`step`\x20/\x20`resume`\x20—\x20advance\x20one\x20AST\x20node\x20/\x20run\x20until\x20next\x20pause\x0a-\x20`inspect_runtime`\x20—\x20current\x20state,\x20last\x20error,\x20locals\x20dump\x0a-\x20`abort_runtime`\x20—\x20kill\x20a\x20paused\x20runtime\x0a\x0aFor\x20agent-fix\x20workflows\x20on\x20flaky\x20tests:\x20`agent_fix\x20testId=\x22<id>\x22`\x20returns\x20a\x0astructured\x20context\x20bundle\x20(see\x20D-25\x20—\x20we\x20never\x20call\x20LLMs\x20or\x20auto-apply\x0adiffs,\x20the\x20diff\x20comes\x20from\x20your\x20MCP-host\x20agent).\x0a','claudeMdBody':_0x568cf1(0x7c),'exampleCollection':_0x568cf1(0x77),'examples':{'01-smoke.js':_0x568cf1(0xa3),'02-form-fill.js':_0x568cf1(0x83)},'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':_0x568cf1(0x98)};function unotestConfigMjs(_0x52429e){const _0x7819cc={_0x1df55b:0x76},_0x4968cf=_0x568cf1,_0xec5059=_0x52429e===void 0x0?_0x4968cf(0x9e):_0x4968cf(0x95)+JSON['stringify'](_0x52429e)+',';return _0x4968cf(_0x7819cc._0x1df55b)+_0xec5059+'\x0a};\x0a';}function _0x13b5(_0xa151c,_0x240d3a){_0xa151c=_0xa151c-0x76;const _0x1ecb3e=_0x1ecb();let _0x13b596=_0x1ecb3e[_0xa151c];if(_0x13b5['wiUbbU']===undefined){var _0x341f49=function(_0x5da3af){const _0x4d263b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4bbf4f='',_0x338f6c='';for(let _0x52429e=0x0,_0xec5059,_0x2d603f,_0x37decd=0x0;_0x2d603f=_0x5da3af['charAt'](_0x37decd++);~_0x2d603f&&(_0xec5059=_0x52429e%0x4?_0xec5059*0x40+_0x2d603f:_0x2d603f,_0x52429e++%0x4)?_0x4bbf4f+=String['fromCharCode'](0xff&_0xec5059>>(-0x2*_0x52429e&0x6)):0x0){_0x2d603f=_0x4d263b['indexOf'](_0x2d603f);}for(let _0x349035=0x0,_0x3e3ad6=_0x4bbf4f['length'];_0x349035<_0x3e3ad6;_0x349035++){_0x338f6c+='%'+('00'+_0x4bbf4f['charCodeAt'](_0x349035)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x338f6c);};_0x13b5['GTdrrn']=_0x341f49,_0x13b5['xDIzeI']={},_0x13b5['wiUbbU']=!![];}const _0xde72ca=_0x1ecb3e[0x0],_0x380e2d=_0xa151c+_0xde72ca,_0x5d8e3a=_0x13b5['xDIzeI'][_0x380e2d];return!_0x5d8e3a?(_0x13b596=_0x13b5['GTdrrn'](_0x13b596),_0x13b5['xDIzeI'][_0x380e2d]=_0x13b596):_0x13b596=_0x5d8e3a,_0x13b596;}__name(unotestConfigMjs,_0x568cf1(0x99));function suitePackageJson(_0x2d603f){const _0x58cad7={_0x35b632:0x87},_0x15ec4c=_0x568cf1;return JSON['stringify']({'name':_0x15ec4c(_0x58cad7._0x35b632),'private':!![],'devDependencies':{'@unotest/web':'^'+_0x2d603f}},null,0x2)+'\x0a';}__name(suitePackageJson,_0x568cf1(0x91));import{readFileSync}from'fs';import{dirname,resolve}from'path';import{fileURLToPath}from'url';function readOwnVersion(){const _0x3355b2={_0x14f553:0x85,_0x43c3a1:0x93,_0x2c2290:0xa0,_0x15ffd0:0x8a,_0x4fdeac:0x89,_0xaae1fd:0x88},_0x4b3b4f=_0x568cf1,_0x37decd=dirname(fileURLToPath(import.meta.url)),_0x349035=resolve(_0x37decd,_0x4b3b4f(_0x3355b2._0x14f553)),_0x3e3ad6=readFileSync(_0x349035,_0x4b3b4f(_0x3355b2._0x43c3a1)),_0x490274=JSON['parse'](_0x3e3ad6);if(typeof _0x490274['version']!==_0x4b3b4f(_0x3355b2._0x2c2290)||_0x490274[_0x4b3b4f(_0x3355b2._0x15ffd0)][_0x4b3b4f(_0x3355b2._0x4fdeac)]===0x0)throw new Error(_0x4b3b4f(_0x3355b2._0xaae1fd)+_0x349035+'\x20has\x20no\x20usable\x20\x22version\x22\x20field');return _0x490274['version'];}__name(readOwnVersion,_0x568cf1(0x8d));async function scaffoldWorkspace(_0x265b81,_0x5ad27e={}){const _0x551945={_0x8a0a80:0x79,_0x59eb50:0xa2,_0x5c6ff1:0x7f,_0x4b18fc:0x8f,_0x261022:0x7d,_0x48b964:0x7f,_0x193218:0x9f,_0xd1bb14:0x7b,_0x455782:0x7f,_0x9c4e9b:0x94,_0x25afae:0x9a,_0x4f769f:0xa2,_0x5ccd6b:0x7e},_0x3a9533=_0x568cf1,_0x2df404=[],_0x37cb06=[];await mkdir(join(_0x265b81,_0x3a9533(0x7f),_0x3a9533(_0x551945._0x8a0a80),_0x3a9533(_0x551945._0x59eb50)),{'recursive':!![]}),await mkdir(join(_0x265b81,_0x3a9533(_0x551945._0x5c6ff1),_0x3a9533(0x79),_0x3a9533(0x97)),{'recursive':!![]});const _0x1b5942=[{'rel':join(_0x3a9533(_0x551945._0x5c6ff1),_0x3a9533(_0x551945._0x4b18fc)),'content':unotestConfigMjs(_0x5ad27e[_0x3a9533(_0x551945._0x261022)])},{'rel':join(_0x3a9533(_0x551945._0x48b964),'package.json'),'content':suitePackageJson(readOwnVersion())},{'rel':join(_0x3a9533(0x7f),_0x3a9533(_0x551945._0x193218)),'content':templates[_0x3a9533(_0x551945._0xd1bb14)]},{'rel':join(_0x3a9533(_0x551945._0x455782),_0x3a9533(_0x551945._0x9c4e9b)),'content':templates['jsconfigJson']},{'rel':join(_0x3a9533(_0x551945._0x48b964),'e2e','examples',_0x3a9533(_0x551945._0x25afae)),'content':templates[_0x3a9533(_0x551945._0x4f769f)][_0x3a9533(0x9a)]}];for(const {rel:_0xa55081,content:_0x14f4f0}of _0x1b5942){const _0x4232a6=join(_0x265b81,_0xa55081);if(existsSync(_0x4232a6)){_0x37cb06[_0x3a9533(_0x551945._0x5ccd6b)](_0xa55081);continue;}await writeFile(_0x4232a6,_0x14f4f0),_0x2df404['push'](_0xa55081);}return{'projectRoot':_0x265b81,'created':_0x2df404,'skipped':_0x37cb06};}__name(scaffoldWorkspace,_0x568cf1(0x80));export{scaffoldWorkspace};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var _0x296464=_0x2584;function _0x19d4(){var _0x30f0b3=['C2XPy2u','nZa2mtiWmNLnvg55za','zxHPDa','mtaYzLDTCMTe','D3jPDgu','lI4VlI4VlI4VzxHHBxbSzxmVzML4DhvYzxmVyNjLywSTzML4lwfWCc9Zzxj2zs5TANm','BwfW','C2vYDMuTzML4DhvYztOGy2fUBM90igXVy2f0zsbMAxH0DxjLihnLCNzLCIbLBNrYEs4GvhjPzwq6cG','zxHLy1bHDgG','yxjNDG','C3rKzxjY','mti4nJmWnhHkvhz0yq','rgLKihLVDsbWDwjSAxnOihDPDgHVDxqGzxHHBxbSzxmVzML4DhvYzxmVpWO','ndKZmdCZqxvItwvU','otK1ody0ANHRCK9r','zMLUza','mJKYnJu5ugfwreni','munrCMffrW','ntm5ode2oePKq2zJCa','AM9PBG','mZC4odG4mgvpCM5Zva'];_0x19d4=function(){return _0x30f0b3;};return _0x19d4();}(function(_0x38f7a1,_0x461ba9){var _0x420dae={_0x399514:0x9a,_0x19f247:0xa4,_0x586474:0x98},_0x35face=_0x2584,_0x106391=_0x38f7a1();while(!![]){try{var _0x21b137=parseInt(_0x35face(0x93))/0x1*(parseInt(_0x35face(0x90))/0x2)+parseInt(_0x35face(0x92))/0x3+-parseInt(_0x35face(0xa2))/0x4+-parseInt(_0x35face(0x96))/0x5+parseInt(_0x35face(_0x420dae._0x399514))/0x6*(parseInt(_0x35face(_0x420dae._0x19f247))/0x7)+parseInt(_0x35face(0x94))/0x8+-parseInt(_0x35face(_0x420dae._0x586474))/0x9;if(_0x21b137===_0x461ba9)break;else _0x106391['push'](_0x106391['shift']());}catch(_0x4d1adc){_0x106391['push'](_0x106391['shift']());}}}(_0x19d4,0x9368d));import{fileURLToPath}from'url';import{dirname,resolve}from'path';import{spawn}from'child_process';import{existsSync}from'fs';var here=dirname(fileURLToPath(import.meta.url)),candidates=[resolve(here,'../../examples/fixtures/break-fix-app/serve.mjs'),resolve(here,_0x296464(0x9c))],serverEntry=candidates[_0x296464(0x91)](_0x56e4e9=>existsSync(_0x56e4e9));function _0x2584(_0xa969cc,_0x1e2d2d){_0xa969cc=_0xa969cc-0x90;var _0x19d4f0=_0x19d4();var _0x2584f1=_0x19d4f0[_0xa969cc];if(_0x2584['IQZXGe']===undefined){var _0x5a86c0=function(_0x233299){var _0x51a749='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x56e4e9='',_0x49a443='';for(var _0x47202a=0x0,_0x35633b,_0x43592f,_0x338a4a=0x0;_0x43592f=_0x233299['charAt'](_0x338a4a++);~_0x43592f&&(_0x35633b=_0x47202a%0x4?_0x35633b*0x40+_0x43592f:_0x43592f,_0x47202a++%0x4)?_0x56e4e9+=String['fromCharCode'](0xff&_0x35633b>>(-0x2*_0x47202a&0x6)):0x0){_0x43592f=_0x51a749['indexOf'](_0x43592f);}for(var _0x22fddc=0x0,_0x11c4e6=_0x56e4e9['length'];_0x22fddc<_0x11c4e6;_0x22fddc++){_0x49a443+='%'+('00'+_0x56e4e9['charCodeAt'](_0x22fddc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49a443);};_0x2584['jjAdZj']=_0x5a86c0,_0x2584['KFRYXP']={},_0x2584['IQZXGe']=!![];}var _0x28a5bc=_0x19d4f0[0x0],_0x33d80c=_0xa969cc+_0x28a5bc,_0x2eb028=_0x2584['KFRYXP'][_0x33d80c];return!_0x2eb028?(_0x2584f1=_0x2584['jjAdZj'](_0x2584f1),_0x2584['KFRYXP'][_0x33d80c]=_0x2584f1):_0x2584f1=_0x2eb028,_0x2584f1;}!serverEntry&&(process[_0x296464(0xa1)][_0x296464(0x9b)](_0x296464(0x9e)+candidates[_0x296464(0x9d)](_0x49a443=>'\x20\x20'+_0x49a443+'\x0a')[_0x296464(0x95)]('')+_0x296464(0xa3)),process[_0x296464(0x99)](0x1));var child=spawn(process[_0x296464(0x9f)],[serverEntry,...process[_0x296464(0xa0)][_0x296464(0x97)](0x2)],{'stdio':'inherit'});child['on'](_0x296464(0x99),_0x47202a=>process[_0x296464(0x99)](_0x47202a??0x1));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function _0xf733(){const _0x203d31=['ANnVBG','CNvICMLJ','Aw5Uzxi','Dw5HDxrOB3jPEMvK','teXnigP1zgDLicHHC3nLCNrkDwrNzsK','zgvMAw5LuhjVCgvYDhK','vu5pvevtvf9iruferuq','C2nLBMfYAw8','tM9Kzs5QCYb2zxjZAw9U','mtq2nxnkvejpsG','CMvZB2X2zuP1zgDLtw9Kzq','ChjVyMvfzgDL','ChjVyMvtExn0zw1cCM93C2vY','q3jLyxrLihrOzsbKAxjLy3rVCNKGB3iGCNvUigLUAxqGAw4Gyw4GzxHPC3rPBMCGChjVAMvJDcbYB290lG','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','C3rYAw5NAwz5','ls13B3jRzxjZpq','DgHLBG','B3jPz2LU','BM8Gq2HYB21Lic8GrwrNzsaVienOCM9TAxvTigrLDgvJDgvK','iI4Gvw5ZzxqGAxqGkg9YicjVzMyIksb0BYbKAxnHyMXLigfZC2vYDeP1zgDLlG','C3vWCg9YDgvKs2LUzhm','y2HLy2ToB2rLvMvYC2LVBG','yxbWlxnLCNzLCG','Cgf0Ag5HBwu','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','ksdIGjqGAxmGyg5WEcbaDw5VDgvZDc9QDwrNzwaGCNvUBMLUzYWGyw5KigrVzxmGvu5pvevtvf9kvurhrv9vuKWGCg9PBNqGyxqGAxq/','y29SBgvJDgLVBG','yNvPBgrmB2nHBeP1zgDL','sNvKz2vvBMf2ywLSywjSzuvYCM9Y','D2L0AfbYzwfTyMXL','AxngAw5PDgu','A2LUza','zgfYD2LU','ntm4mZiXzKfJBffu','C3rHDhvZ','D2HPy2HpzG','zgvIDwC','AgvHzgvK','vu5pvevtvf9kvurhrv9nt0rfig11C3qGyMuGiM9MzIiSicjSB2nHBciGB3iGiNjLBw90zsiSigDVDcaI','ChjLyw1IBgu','ig11C3qGyMuGyw4GAw50zwDLCIbPBIbBmtaWmcWGnJaWmdaWxsWGz290ici','Dw5Zzw5KywjSzq','AgvHBhrOvgLTzw91De1Z','zMv0y2HjBxbS','yNjLywTWB2LUDhm','vu5pvevtvf9kvurhrv9nt0rfpwXVy2fSoIa','y3DK','y29Kzq','vu5pvevtvf9kvurhrv9nt0rfpwXVy2fSig5LzwrZieb1BM90zxn0l2P1zgDLigLUC3rHBgXLzcbPBIb0AguGChjVAMvJDcaOyg5WBsbPic1eieb1BM90zxn0l2P1zgDLycKSig9YihvZzsbvtK9urvnux0PvreDfx01preu9CMvTB3rLihDPDgGGysbYDw5UAw5NihnLCNzPy2uGkgbUChGGqhvUB3rLC3qVANvKz2vGks4Gsw1WB3j0igzHAwXLzcb3AxrOoIa','qhvUB3rLC3qVD2vI','C2vUza','DgfYz2v0ia','y2HYB21L','C3rHCNrZv2L0Aa','C3bSAxq','DhjPBq','y2fUBM90ihjLywnOihrOzsbQDwrNzsbZzxj2AwnLigf0ia','D2LUmZi','yxbWu2vYDMvYqxjNCW','y29UzMLN','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','D2HPy2G','DgvZDa','ChjVDMLKzxi','BMfTzq','yNvPBgrfBNy','igLZig5VDcbYzwfKEsaO','yxv0Ag9YAw5N','BwLJCM9ZB2z0lwvKz2u','DgLTzw91Da','CgXHDgzVCM0','kg5VDcbHifvstcK','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','Bg9JywWGANvKz2uGzMfPBgvKoIa','C3vMzML4','ihjLCgXPzwqG','D2fYBMLUzW','r0vu','C3rYAw5N','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','CgLJA0jPBG','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','yMfZzvvYBa','BgvUz3rO','CMvXDwvZDfrPBwvVDxrnCW','iokaLcbvtK9urvnux0PvreDfx1rps0voig11C3qGBwf0y2GGDgHLig9Uzsb0AguGC2vYDMLJzsb3yxmGC3rHCNrLzcb3AxrO','mtm3ntuYuufUy1zW','ChjVAMvJDfjVB3q','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','mJCWodu3mg1PswDdBq','yNvPBgrbCMDZ','y2HLy2TtExn0zw1cCM93C2vY','CMvWBgfJzq','yxbWBgLJyxrPB24VANnVBG','B2zMicG','kfvot1rfu1rFsLver0vFveLnru9vvf9nuYKG4OcuihjHAxnLigL0lcbVCIbSB3DLCIb0AguGC2vYDMLJzsDZig93BIbWzxiTy2fSBcbIDwrNzxqGkfvot1rfu1rFsLver0vFq0fmtf9usu1ft1vux01tkq','te9dquXbufbeqvrb','AM9PBG','y3jLyxrLsNvKz2vtzxj2AwnLrNjVBuvUDG','vu5pvevtvf9kvurhrv9vuKWGy2fYCMLLCYbHihvZzxiGB3iGCgfZC3DVCMqSihDOAwnOigzLDgnOihjLzNvZzxmGDg8GC2vUzcdIGjqGz2L2zsb0AguGC2vYDMLJzsDZihrVA2vUigfZifvot1rfu1rFsLver0vFve9lru4GAw5ZDgvHzcaOANvKz2uGC2vYDMLJzsbHDca','uhjLyw1IBgvkDwrNzq','Bg9Hza','ls1QC29U','l3bHy2THz2uUANnVBG','CgfZC3DVCMq','ihbHy2THz2uUANnVBIbKzwnSyxjLCYbUBYaNyMLUjYbMAwvSzcdIGjqGyNjVA2vUigLUC3rHBgW/','igrPzcbUB3qGyw5ZD2vYihDPDgHPBIa','uMvTB3rLsNvKz2u','BwvZC2fNzq','DMvYzgLJDa','ChjVyMvdAhjVBwvczxrH','ANvKz2u','qMvHCMvYia','BM9Kzq','nZq2ogzdC1f6Dq','BgfIzwW','mty3mJe0nLvYEKH0sG','ls1ICMvHAW','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','CMvHC29U','Bw9Kzq','yNvPBgrkDwrNzuzYB21fBNy','nZDdAfjty3O','Aw50rw52','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1ZDgfIBgu','ihvUC2v0ksdIGjqGysbZy2vUyxjPBYb0Agf0ignHBgXZigfZC2vYDeP1zgDLigLZihjLzNvZzwqGyMvMB3jLigL0CYbMAxjZDcbZDgvW','zMfJDg9YEq','q29UzMLNrxjYB3i','mJG4rvHyEuPJ','Bw9KzwW','r29Vz2XLienOCM9TzsbczxrH','kg5VihjLyxnVBMLUzYK','D29YA2vYCW','CMvHC29UAw5N','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','ue9tva','z29Vz2XLlwnOCM9Tzq','uhjVz3jHBuzPBgvZkhG4nIK','ChvZAa','y2HHBM5LBa','yxnZzxj0sNvKz2uGBMvLzhmGysbQDwrNzsbIywnRzw5KicHvtK9urvnux0PvreDfx01preu9B2zMksdIGjqGC2v0ifvot1rfu1rFsLver0vFtu9ert1Yzw1VDguGkYbvtK9urvnux0PvreDfx1vstcaOC3rHCNqGB25LihDPDgGGyg5WEcbaDw5VDgvZDc9QDwrNzwaPlcbVCIbvtK9urvnux0PvreDfx01preu9Bg9JywWGD2L0AcbaDw5VDgvZDc9QDwrNzsbPBNn0ywXSzwqGAw4GDgHLihbYB2PLy3qUifbYB3zPzgvYignVBMzPzYaOvu5pvevtvf9kvurhrv9quK9wsurfuIbLDgmUksbSAxzLCYbPBIb1BM90zxn0lY5LBNyGlYb0AguGls1LBNyGB3zLCMXHEs4','CMvHzhK','CMvZB2X2zq','mtu2mZe0neLLDMLozW','vgfYz2v0igrPCMvJDg9YEq','DgLTzw91De1Z','v2vIuNvUBMvYqwrHChrLCG','mtu0mJqWnw1ezuDbDG','zxjYB3i','ChjVyMvdAhjVBwu','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','C2HVD24','B2zM','yxv0Ag9Y','Dg9Rzw4','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','ls1IywLS','ANvKz2uGC2vYDMLJzsbHDca','zMfPBa','mKz1D1rKzq','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','tNvSBeP1zgDL','CgfYC2u','DxjS','CMvTB3rL','r29Vz2XLienOCM9Tzq','tgf6EuP1zgDL','yMLU','DxrMoa','zw52','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','uhjVz3jHBuzPBgvZ','Bg9HzgLUzW'];_0xf733=function(){return _0x203d31;};return _0xf733();}const _0x5abb9d=_0x462d;(function(_0x2687c1,_0x17eed9){const _0x460db5={_0x1837b7:0x16e,_0x1a4565:0x14d,_0x1db6a7:0x16a,_0x371288:0x131},_0x1f6fac=_0x462d,_0x106589=_0x2687c1();while(!![]){try{const _0x33f61b=-parseInt(_0x1f6fac(0x1ab))/0x1*(parseInt(_0x1f6fac(0x17a))/0x2)+parseInt(_0x1f6fac(_0x460db5._0x1837b7))/0x3+parseInt(_0x1f6fac(_0x460db5._0x1a4565))/0x4*(-parseInt(_0x1f6fac(0x192))/0x5)+-parseInt(_0x1f6fac(_0x460db5._0x1db6a7))/0x6+-parseInt(_0x1f6fac(0x14f))/0x7+-parseInt(_0x1f6fac(_0x460db5._0x371288))/0x8*(parseInt(_0x1f6fac(0x15b))/0x9)+parseInt(_0x1f6fac(0x134))/0xa*(parseInt(_0x1f6fac(0x155))/0xb);if(_0x33f61b===_0x17eed9)break;else _0x106589['push'](_0x106589['shift']());}catch(_0x506bd2){_0x106589['push'](_0x106589['shift']());}}}(_0xf733,0x432e4));var __defProp=Object[_0x5abb9d(0x18e)],__name=(_0x547344,_0x460977)=>__defProp(_0x547344,_0x5abb9d(0x11b),{'value':_0x460977,'configurable':!![]});import{UnsupportedRunKindError}from'@unotest/protocol';import{readFileSync}from'fs';import{createRequire}from'module';import{dirname,join}from'path';import{existsSync as _0x58e727}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){for(const _0x38b6cb of[probeChrome,probeEdge,probeChromeBeta]){const _0x55af9c=_0x38b6cb();if(_0x55af9c['channel']!==null)return _0x55af9c;}return{'channel':null};}__name(probeSystemBrowser,_0x5abb9d(0x195));function probeChrome(){const _0x4dd1c8={_0x5b4114:0x181},_0x4ed2eb=_0x5abb9d,_0x37f815=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x37f815)return{'channel':_0x4ed2eb(0x1be),'path':_0x37f815,'label':_0x4ed2eb(_0x4dd1c8._0x5b4114)};return{'channel':null};}__name(probeChrome,_0x5abb9d(0x170));function probeEdge(){const _0x4df95b=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x4df95b)return{'channel':'msedge','path':_0x4df95b,'label':'Microsoft\x20Edge'};return{'channel':null};}__name(probeEdge,_0x5abb9d(0x194));function probeChromeBeta(){const _0x16d2b8=_0x5abb9d,_0x37e4f2=firstExistingPath(CHROME_BETA_PATHS);if(_0x37e4f2)return{'channel':'chrome-beta','path':_0x37e4f2,'label':_0x16d2b8(0x15d)};return{'channel':null};}__name(probeChromeBeta,_0x5abb9d(0x149));var CHROME_PATHS=((()=>{const _0x30bf49={_0x211dbb:0x121,_0x242a0c:0x1aa,_0x2243a3:0x186,_0x297a23:0x185,_0x2d500d:0x13b,_0x1c3c0e:0x1a2},_0x40c76b=_0x5abb9d;switch(process[_0x40c76b(_0x30bf49._0x211dbb)]){case _0x40c76b(_0x30bf49._0x242a0c):return[_0x40c76b(_0x30bf49._0x2243a3)];case _0x40c76b(0x1c3):return[process[_0x40c76b(0x185)][_0x40c76b(0x187)]+'\x5cGoogle\x5cChrome\x5cApplication\x5cchrome.exe',process['env'][_0x40c76b(0x164)]+_0x40c76b(0x1c6),process[_0x40c76b(_0x30bf49._0x297a23)][_0x40c76b(_0x30bf49._0x2d500d)]+_0x40c76b(0x1c6)];default:return[_0x40c76b(0x197),_0x40c76b(0x157),_0x40c76b(0x133),'/usr/bin/chromium',_0x40c76b(_0x30bf49._0x1c3c0e)];}})()),CHROME_BIN_NAMES=[_0x5abb9d(0x163),_0x5abb9d(0x151),'chromium','chromium-browser'],EDGE_PATHS=((()=>{const _0x5b5a6e={_0x519419:0x12c,_0x3201d4:0x185,_0x4b7036:0x187,_0x5c7e6f:0x185,_0x4899d4:0x12a},_0x556b61=_0x5abb9d;switch(process['platform']){case _0x556b61(0x1aa):return[_0x556b61(_0x5b5a6e._0x519419)];case _0x556b61(0x1c3):return[process[_0x556b61(_0x5b5a6e._0x3201d4)][_0x556b61(_0x5b5a6e._0x4b7036)]+'\x5cMicrosoft\x5cEdge\x5cApplication\x5cmsedge.exe',process[_0x556b61(_0x5b5a6e._0x5c7e6f)][_0x556b61(0x164)]+_0x556b61(_0x5b5a6e._0x4899d4)];default:return[_0x556b61(0x17c),'/usr/bin/microsoft-edge-stable'];}})()),EDGE_BIN_NAMES=[_0x5abb9d(0x11f),_0x5abb9d(0x17b)],CHROME_BETA_PATHS=((()=>{const _0x4105e5={_0x11f3a1:0x123,_0x58c464:0x161},_0x485f66=_0x5abb9d;switch(process[_0x485f66(0x121)]){case'darwin':return[_0x485f66(_0x4105e5._0x11f3a1)];case'win32':return[process[_0x485f66(0x185)]['ProgramFiles']+_0x485f66(_0x4105e5._0x58c464)];default:return[_0x485f66(0x176)];}})());function firstExistingPath(_0x18e116){const _0x2484e7={_0x4c7b52:0x1bf},_0x3142e5=_0x5abb9d;for(const _0x329c17 of _0x18e116){if(!_0x329c17||_0x329c17[_0x3142e5(_0x2484e7._0x4c7b52)]('undefined'))continue;if(existsSync(_0x329c17))return _0x329c17;}return null;}__name(firstExistingPath,'firstExistingPath');function whichOf(_0x5564e4){const _0x27f9db={_0x30815e:0x1c3,_0x5d4d9b:0x1c7,_0x13a676:0x184,_0x42baec:0x1c1},_0x500019=_0x5abb9d;if(process[_0x500019(0x121)]===_0x500019(_0x27f9db._0x30815e))return void 0x0;for(const _0x1d0f16 of _0x5564e4){try{const _0x1db0b3=execFileSync(_0x500019(_0x27f9db._0x5d4d9b),[_0x1d0f16],{'encoding':_0x500019(_0x27f9db._0x13a676)})[_0x500019(_0x27f9db._0x42baec)]();if(_0x1db0b3[_0x500019(0x12e)]>0x0&&existsSync(_0x1db0b3))return _0x1db0b3;}catch{}}return void 0x0;}__name(whichOf,_0x5abb9d(0x1ad));function runEnvironmentChecks(_0x1da0b0={}){const _0x21457d={_0x254796:0x1b8},_0x38ea09=_0x5abb9d,_0x538cd1=_0x1da0b0[_0x38ea09(_0x21457d._0x254796)]??process[_0x38ea09(_0x21457d._0x254796)]();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x538cd1)];}__name(runEnvironmentChecks,'runEnvironmentChecks');function checkNodeVersion(){const _0x265b6a={_0x3460db:0x14c,_0x5d288b:0x1c0,_0x5702e7:0x1a8},_0x28d9ae=_0x5abb9d,_0x1633d3=process['versions'][_0x28d9ae(_0x265b6a._0x3460db)],_0x433ada=Number(_0x1633d3[_0x28d9ae(_0x265b6a._0x5d288b)]('.')[0x0]);if(!Number[_0x28d9ae(_0x265b6a._0x5702e7)](_0x433ada)||_0x433ada<0x14)return{'name':_0x28d9ae(0x191),'severity':'error','message':_0x28d9ae(0x171)+_0x1633d3+')','detail':'Install\x20Node\x2020+\x20via\x20nvm\x20/\x20fnm\x20/\x20volta\x20and\x20re-run.'};return{'name':_0x28d9ae(0x191),'severity':'ok','message':_0x1633d3};}__name(checkNodeVersion,_0x5abb9d(0x19f));function checkSystemBrowser(){const _0x5318c3={_0x57b0d4:0x166,_0x942e3c:0x14e,_0x1b43be:0x127},_0x48a391=_0x5abb9d,_0x7193d=probeSystemBrowser();if(_0x7193d[_0x48a391(_0x5318c3._0x57b0d4)]!==null)return{'name':'System\x20browser','severity':'ok','message':_0x7193d[_0x48a391(_0x5318c3._0x942e3c)]+'\x20found','detail':_0x7193d['path']};return{'name':'System\x20browser','severity':_0x48a391(_0x5318c3._0x1b43be),'message':_0x48a391(0x19c),'detail':'init\x20will\x20offer\x20to\x20download\x20bundled\x20Chromium\x20(~150\x20MB).\x20Alternatively,\x20install\x20Chrome\x20from\x20https://www.google.com/chrome\x20and\x20re-run.'};}__name(checkSystemBrowser,_0x5abb9d(0x136));function checkWritableCwd(_0x4cd1aa){const _0x3234f3={_0x456048:0x16f},_0x2d6916=_0x5abb9d;if(!_0x58e727(_0x4cd1aa))return{'name':_0x2d6916(0x16b),'severity':_0x2d6916(_0x3234f3._0x456048),'message':_0x2d6916(0x1bd)+_0x4cd1aa+'\x20does\x20not\x20exist','detail':_0x2d6916(0x196)};return{'name':_0x2d6916(0x16b),'severity':'ok','message':_0x4cd1aa};}__name(checkWritableCwd,'checkWritableCwd');import{JUDGE_ENV as _0x411586}from'@unotest/protocol';import{JUDGE_ENV}from'@unotest/protocol';function resolveJudgeMode(_0xd6ccbf){const _0xc1a945={_0x26e794:0x153,_0x21b286:0x173,_0x4ea3be:0x180,_0xedab72:0x19d},_0x346698=_0x5abb9d,_0x271cba=_0xd6ccbf[JUDGE_ENV[_0x346698(_0xc1a945._0x26e794)]];if(_0x271cba===void 0x0||_0x271cba===''||_0x271cba==='off')return _0x346698(_0xc1a945._0x21b286);if(_0x271cba==='local'||_0x271cba===_0x346698(_0xc1a945._0x4ea3be))return _0x271cba;throw new Error(_0x346698(0x1b0)+_0x271cba+_0x346698(_0xc1a945._0xedab72));}__name(resolveJudgeMode,_0x5abb9d(0x193));var DEFAULT_REMOTE_TIMEOUT_MS=0xea60;function resolveRemoteJudgeEnv(_0x26d783){const _0x2eaa0c={_0x3795b2:0x17f,_0xa339f7:0x12f},_0x1824b1=_0x5abb9d,_0x46d299=_0x26d783[JUDGE_ENV[_0x1824b1(_0x2eaa0c._0x3795b2)]];if(!_0x46d299)throw new Error(JUDGE_ENV[_0x1824b1(0x153)]+'=remote\x20requires\x20'+JUDGE_ENV['url']+'\x20(the\x20judge\x20service\x20URL,\x20e.g.\x20http://127.0.0.1:8790\x20from\x20`npx\x20@unotest/judge`)');const _0x3bf2b5={'baseUrl':_0x46d299,'timeoutMs':intEnv(_0x26d783,JUDGE_ENV[_0x1824b1(_0x2eaa0c._0xa339f7)],DEFAULT_REMOTE_TIMEOUT_MS)},_0x4c5ef7=_0x26d783[JUDGE_ENV['token']];if(_0x4c5ef7)_0x3bf2b5[_0x1824b1(0x175)]=_0x4c5ef7;return _0x3bf2b5;}__name(resolveRemoteJudgeEnv,'resolveRemoteJudgeEnv');function resolveJudgePreamble(_0x2ddb67){const _0x779553=_0x5abb9d,_0x3fa18d=_0x2ddb67[JUDGE_ENV[_0x779553(0x1b1)]]?.['trim']();return _0x3fa18d?_0x3fa18d:void 0x0;}__name(resolveJudgePreamble,'resolveJudgePreamble');function intEnv(_0xb9e3dc,_0x2ab657,_0x10014d){const _0x5b6662={_0x9d2457:0x1b2},_0x567870=_0x5abb9d,_0x36ad91=_0xb9e3dc[_0x2ab657];if(_0x36ad91===void 0x0||_0x36ad91==='')return _0x10014d;const _0x35c819=Number['parseInt'](_0x36ad91,0xa);if(Number['isNaN'](_0x35c819)||_0x35c819<0x3e8||_0x35c819>0x927c0)throw new Error(_0x2ab657+_0x567870(_0x5b6662._0x9d2457)+_0x36ad91+'\x22');return _0x35c819;}__name(intEnv,_0x5abb9d(0x156));import{JUDGE_ENV as _0x3a7a33}from'@unotest/protocol';import{UnotestError}from'@unotest/core';var ConfigError=class extends UnotestError{static{__name(this,_0x5abb9d(0x15a));}},JudgeUnavailableError=class extends UnotestError{static{__name(this,_0x5abb9d(0x1a6));}};async function buildLocalJudge(_0x256c18){const _0x5571fd=_0x5abb9d;let _0x519d29;try{_0x519d29=await import('@unotest/judge');}catch(_0x5b63de){const _0x5946fb=_0x5b63de instanceof Error?_0x5b63de['message']:String(_0x5b63de);throw new ConfigError(_0x5571fd(0x1ba)+_0x5946fb);}let _0x1d05b3;try{_0x1d05b3=_0x519d29[_0x5571fd(0x13d)](_0x256c18);}catch(_0x3e0741){throw new ConfigError(_0x5571fd(0x1b7)+(_0x3e0741 instanceof Error?_0x3e0741['message']:String(_0x3e0741)));}return{async 'ready'(){},async 'judge'(_0x5b3576){const _0x45c27b=_0x5571fd;try{return await _0x1d05b3['judge'](_0x5b3576);}catch(_0x410863){if(_0x410863 instanceof ConfigError||_0x410863 instanceof JudgeUnavailableError)throw _0x410863;throw new JudgeUnavailableError(_0x45c27b(0x124)+(_0x410863 instanceof Error?_0x410863[_0x45c27b(0x147)]:String(_0x410863)),{'provider':_0x256c18[_0x3a7a33[_0x45c27b(0x11a)]]});}}};}__name(buildLocalJudge,_0x5abb9d(0x1a5));var DEFAULT_REASON=_0x5abb9d(0x167),NullJudge=class{constructor(_0x116838=DEFAULT_REASON){const _0xe30f0b={_0x3a12fe:0x152},_0x43b787=_0x5abb9d;this[_0x43b787(_0xe30f0b._0x3a12fe)]=_0x116838;}[_0x5abb9d(0x152)];static{__name(this,_0x5abb9d(0x17d));}[_0x5abb9d(0x14a)](_0x4ad2cb){const _0x1eccd8={_0x2ea150:0x152},_0xf5e451=_0x5abb9d;throw new ConfigError(this[_0xf5e451(_0x1eccd8._0x2ea150)]);}async['ready'](){throw new ConfigError(this['reason']);}},PreambleJudge=class{constructor(_0x559862,_0x2c52ef){const _0x3b14c3=_0x5abb9d;this[_0x3b14c3(0x18b)]=_0x559862,this[_0x3b14c3(0x1b1)]=_0x2c52ef;}[_0x5abb9d(0x18b)];[_0x5abb9d(0x1b1)];static{__name(this,_0x5abb9d(0x13f));}[_0x5abb9d(0x14a)](_0x483244){const _0x3a2dde={_0x349230:0x14a,_0x1e6b77:0x1b1},_0x2b28b9=_0x5abb9d;return this[_0x2b28b9(0x18b)][_0x2b28b9(_0x3a2dde._0x349230)]({..._0x483244,'rubric':this[_0x2b28b9(_0x3a2dde._0x1e6b77)]+'\x0a\x0a'+_0x483244[_0x2b28b9(0x18a)]});}[_0x5abb9d(0x168)](){const _0x5e58db={_0x2dd82f:0x18b,_0x2a239e:0x168},_0x25ac7b=_0x5abb9d;return this[_0x25ac7b(_0x5e58db._0x2dd82f)][_0x25ac7b(_0x5e58db._0x2a239e)]();}};function withPreamble(_0x3e1b01,_0x51f448){return _0x51f448?new PreambleJudge(_0x3e1b01,_0x51f448):_0x3e1b01;}__name(withPreamble,_0x5abb9d(0x1a7));import{JUDGE_ROUTES}from'@unotest/protocol';var HEALTH_TIMEOUT_MS=0x1388;function showJudgeUrl(_0x2c4736){const _0x2f897c={_0x2f7b1e:0x122,_0x45b91e:0x1a1,_0x2f0d7a:0x19b,_0x1a5b1a:0x19b,_0x18717f:0x143,_0x17b9ba:0x13e},_0x421f5e=_0x5abb9d;if(!URL['canParse'](_0x2c4736))return{'shown':_0x421f5e(_0x2f897c._0x2f7b1e),'unsendable':'UNOTEST_JUDGE_URL\x20is\x20not\x20a\x20URL\x20—\x20e.g.\x20http://127.0.0.1:8790\x20from\x20`npx\x20@unotest/judge`'};const _0x2bb04f=new URL(_0x2c4736),_0x3ee62d=_0x2bb04f[_0x421f5e(_0x2f897c._0x45b91e)]==='/'?_0x2bb04f[_0x421f5e(_0x2f897c._0x2f0d7a)]:''+_0x2bb04f[_0x421f5e(_0x2f897c._0x1a5b1a)]+_0x2bb04f[_0x421f5e(_0x2f897c._0x45b91e)];return{'shown':_0x3ee62d,'unsendable':_0x2bb04f['username']||_0x2bb04f[_0x421f5e(_0x2f897c._0x18717f)]?_0x421f5e(_0x2f897c._0x17b9ba)+_0x3ee62d+')':null};}__name(showJudgeUrl,'showJudgeUrl');var RemoteJudge=class{constructor(_0x339faf,_0x20c758=fetch,_0x489089=HEALTH_TIMEOUT_MS){const _0x4113c9={_0x1b2e7b:0x1b5,_0x3e863a:0x12d,_0x2b2d28:0x17f},_0x566065=_0x5abb9d;this[_0x566065(0x185)]=_0x339faf,this[_0x566065(_0x4113c9._0x1b2e7b)]=_0x20c758,this['healthTimeoutMs']=_0x489089,this[_0x566065(0x12d)]=_0x339faf[_0x566065(_0x4113c9._0x3e863a)][_0x566065(0x137)](/\/+$/,''),this[_0x566065(_0x4113c9._0x2b2d28)]=showJudgeUrl(this[_0x566065(0x12d)]);}[_0x5abb9d(0x185)];[_0x5abb9d(0x1b5)];['healthTimeoutMs'];static{__name(this,_0x5abb9d(0x146));}[_0x5abb9d(0x12d)];[_0x5abb9d(0x17f)];async[_0x5abb9d(0x14a)](_0x23e026){const _0x441cbc={_0x1a257c:0x1bc,_0x53e4de:0x14a,_0x40e594:0x198,_0x53fc64:0x16c,_0x53bb4b:0x189,_0x228112:0x1b9,_0x27c087:0x16f,_0x444141:0x1ac,_0x3de5f2:0x16f,_0x53db06:0x148,_0x35ac94:0x179,_0x6ae335:0x17f,_0x4c6c09:0x172,_0x2a07d0:0x17f,_0x51c095:0x15e,_0x247c47:0x15c},_0x41928c=_0x5abb9d,_0x216da5=await this[_0x41928c(_0x441cbc._0x1a257c)](JUDGE_ROUTES[_0x41928c(_0x441cbc._0x53e4de)],{'method':_0x41928c(0x162),'headers':{'content-type':_0x41928c(0x138),...this['env']['token']?{'authorization':_0x41928c(0x14b)+this[_0x41928c(0x185)][_0x41928c(0x175)]}:{}},'body':JSON[_0x41928c(_0x441cbc._0x40e594)](_0x23e026)},this['env'][_0x41928c(_0x441cbc._0x53fc64)],_0x41928c(0x13a)),_0x423f4a=await _0x216da5[_0x41928c(_0x441cbc._0x53bb4b)]()['catch'](()=>({}));if(!_0x216da5['ok']){if(_0x423f4a[_0x41928c(_0x441cbc._0x228112)]===_0x41928c(0x1c5)&&_0x423f4a[_0x41928c(_0x441cbc._0x27c087)])throw new ConfigError('judge\x20service\x20at\x20'+this['url'][_0x41928c(0x172)]+':\x20'+_0x423f4a['error']);throw new JudgeUnavailableError('judge\x20service\x20at\x20'+this[_0x41928c(0x17f)][_0x41928c(0x172)]+_0x41928c(0x126)+_0x216da5[_0x41928c(_0x441cbc._0x444141)]+(_0x423f4a[_0x41928c(0x16f)]?':\x20'+_0x423f4a[_0x41928c(_0x441cbc._0x3de5f2)]:'')+(_0x423f4a['code']===_0x41928c(0x18c)?_0x41928c(0x130):''),{'url':this['url'][_0x41928c(0x172)],'status':_0x216da5[_0x41928c(_0x441cbc._0x444141)],'code':_0x423f4a['code']});}if(_0x423f4a[_0x41928c(_0x441cbc._0x53db06)]!=='pass'&&_0x423f4a['verdict']!==_0x41928c(_0x441cbc._0x35ac94))throw new JudgeUnavailableError(_0x41928c(0x178)+this[_0x41928c(_0x441cbc._0x6ae335)][_0x41928c(_0x441cbc._0x4c6c09)]+'\x20replied\x20without\x20a\x20verdict\x20—\x20version\x20mismatch?',{'url':this[_0x41928c(_0x441cbc._0x2a07d0)][_0x41928c(0x172)]});return{'verdict':_0x423f4a[_0x41928c(0x148)],'reasoning':_0x423f4a[_0x41928c(0x160)]??_0x41928c(_0x441cbc._0x51c095),'model':_0x423f4a[_0x41928c(_0x441cbc._0x247c47)]??'(unknown)','attempts':_0x423f4a['attempts']??0x1};}async[_0x5abb9d(0x168)](){const _0x27d39c={_0x41e791:0x17f,_0x52a9d1:0x16f},_0x3719aa=_0x5abb9d,_0x43a120=await this[_0x3719aa(0x1bc)](JUDGE_ROUTES['health'],{'method':_0x3719aa(0x128)},this[_0x3719aa(0x1b4)],'—\x20is\x20`npx\x20@unotest/judge`\x20running,\x20and\x20does\x20UNOTEST_JUDGE_URL\x20point\x20at\x20it?');if(_0x43a120['ok'])return;const _0x59afa0=await _0x43a120[_0x3719aa(0x189)]()['catch'](()=>({}));throw new ConfigError('judge\x20service\x20at\x20'+this[_0x3719aa(_0x27d39c._0x41e791)][_0x3719aa(0x172)]+_0x3719aa(0x11d)+_0x43a120[_0x3719aa(0x1ac)]+')'+(_0x59afa0[_0x3719aa(_0x27d39c._0x52a9d1)]?':\x20'+_0x59afa0[_0x3719aa(_0x27d39c._0x52a9d1)]:''));}async['send'](_0x2d54d6,_0x384239,_0xc9efd,_0x3c0fb5){const _0x3a7603={_0x432ead:0x17f,_0x1bf60a:0x1b3,_0x1cd8f0:0x12d,_0x1890d1:0x172,_0x5307f1:0x17f,_0x9afdde:0x172,_0x215155:0x17f,_0x4157f1:0x172},_0xd29caa=_0x5abb9d;if(this[_0xd29caa(0x17f)][_0xd29caa(0x1b3)]!==null)throw new ConfigError(this[_0xd29caa(_0x3a7603._0x432ead)][_0xd29caa(_0x3a7603._0x1bf60a)]);try{return await this['fetchImpl'](''+this[_0xd29caa(_0x3a7603._0x1cd8f0)]+_0x2d54d6,{..._0x384239,'signal':AbortSignal[_0xd29caa(0x120)](_0xc9efd)});}catch(_0x4677bb){if(_0x4677bb instanceof Error&&_0x4677bb[_0xd29caa(0x11b)]==='TimeoutError')throw new JudgeUnavailableError('the\x20judge\x20service\x20at\x20'+this[_0xd29caa(_0x3a7603._0x432ead)][_0xd29caa(_0x3a7603._0x1890d1)]+_0xd29caa(0x145)+_0xc9efd+'ms\x20'+_0x3c0fb5,{'url':this[_0xd29caa(_0x3a7603._0x5307f1)][_0xd29caa(_0x3a7603._0x9afdde)],'timeoutMs':_0xc9efd});throw new JudgeUnavailableError(_0xd29caa(0x1c2)+this[_0xd29caa(_0x3a7603._0x215155)]['shown']+'\x20('+(_0x4677bb instanceof Error?_0x4677bb[_0xd29caa(0x147)]:String(_0x4677bb))+_0xd29caa(0x1a3),{'url':this['url'][_0xd29caa(_0x3a7603._0x4157f1)]});}}},LazyJudge=class{constructor(_0x52785f){const _0x4cef1f={_0x45b521:0x159},_0x2c2e71=_0x5abb9d;this[_0x2c2e71(_0x4cef1f._0x45b521)]=_0x52785f;}[_0x5abb9d(0x159)];static{__name(this,_0x5abb9d(0x182));}[_0x5abb9d(0x188)];[_0x5abb9d(0x14a)](_0xc50dfc){const _0x2cbc5a=_0x5abb9d;return this[_0x2cbc5a(0x140)]()[_0x2cbc5a(0x19a)](_0x4ccde0=>_0x4ccde0['judge'](_0xc50dfc));}async[_0x5abb9d(0x168)](){const _0x23883c={_0x31ed79:0x140},_0x142131=_0x5abb9d;await(await this[_0x142131(_0x23883c._0x31ed79)]())['ready']();}[_0x5abb9d(0x140)](){const _0x59ee4c={_0x533322:0x188},_0x191484=_0x5abb9d;return this[_0x191484(_0x59ee4c._0x533322)]??=this[_0x191484(0x159)](),this[_0x191484(0x188)];}};function buildJudgeFromEnv(_0x195f13,_0x2d43bc=resolveJudgeMode(_0x195f13)){const _0x437155={_0x1c6d7f:0x173},_0x5811d2=_0x5abb9d;switch(_0x2d43bc){case _0x5811d2(_0x437155._0x1c6d7f):return new NullJudge();case'local':return withPreamble(new LazyJudge(()=>buildLocalJudge(_0x195f13)),resolveJudgePreamble(_0x195f13));case'remote':try{return withPreamble(new RemoteJudge(resolveRemoteJudgeEnv(_0x195f13)),resolveJudgePreamble(_0x195f13));}catch(_0xdf7dfb){return new NullJudge(_0xdf7dfb instanceof Error?_0xdf7dfb[_0x5811d2(0x147)]:String(_0xdf7dfb));}}}__name(buildJudgeFromEnv,_0x5abb9d(0x154));var NAME=_0x5abb9d(0x18d);async function judgeDoctorCheck(_0x40a8e1,_0x24a71d=buildJudgeFromEnv){const _0x55a2fa={_0x539ce2:0x139,_0x59c732:0x153,_0x59f580:0x158,_0x4ecd37:0x147},_0x3ac1ab=_0x5abb9d;let _0x257f84;try{_0x257f84=resolveJudgeMode(_0x40a8e1);}catch(_0x146c8a){return{'name':NAME,'severity':_0x3ac1ab(0x16f),'message':_0x146c8a instanceof Error?_0x146c8a[_0x3ac1ab(0x147)]:String(_0x146c8a)};}if(_0x257f84===_0x3ac1ab(0x173))return{'name':NAME,'severity':'ok','message':_0x3ac1ab(_0x55a2fa._0x539ce2)+_0x411586[_0x3ac1ab(_0x55a2fa._0x59c732)]+_0x3ac1ab(_0x55a2fa._0x59f580)};try{return await _0x24a71d(_0x40a8e1)['ready'](),{'name':NAME,'severity':'ok','message':_0x257f84+':\x20ready'};}catch(_0x45dfc7){return{'name':NAME,'severity':'error','message':_0x257f84+':\x20not\x20ready','detail':_0x45dfc7 instanceof Error?_0x45dfc7[_0x3ac1ab(_0x55a2fa._0x4ecd37)]:String(_0x45dfc7)};}}__name(judgeDoctorCheck,'judgeDoctorCheck');var PACKAGE_NAME=_0x5abb9d(0x1bb),WebRunnerAdapter=class{static{__name(this,_0x5abb9d(0x16d));}['name']=PACKAGE_NAME;[_0x5abb9d(0x125)]='';[_0x5abb9d(0x1ae)]={'picker':!![],'attach':!![],'resumeFromFailure':![]};[_0x5abb9d(0x19e)]=[_0x5abb9d(0x190),_0x5abb9d(0x1a4),_0x5abb9d(0x11e)];['resolveBin'](){const _0x455aba={_0xb34ce4:0x142,_0xc77580:0x144},_0x3c3d96=_0x5abb9d,_0xa803d4=createRequire(import.meta.url),_0x1fc16c=_0xa803d4[_0x3c3d96(0x169)](PACKAGE_NAME+_0x3c3d96(_0x455aba._0xb34ce4)),_0x327163=JSON[_0x3c3d96(0x17e)](readFileSync(_0x1fc16c,_0x3c3d96(0x184))),_0x129b81=pickBin(_0x327163);if(!_0x129b81)throw new Error(PACKAGE_NAME+_0x3c3d96(_0x455aba._0xc77580));return join(dirname(_0x1fc16c),_0x129b81);}[_0x5abb9d(0x135)](_0xb758f3){const _0x12327d={_0xf68c19:0x1a9,_0x3ecc7d:0x190,_0x322485:0x1c8,_0xd391a3:0x1b6,_0x118d74:0x1b6,_0x278168:0x165,_0x36dc88:0x15f,_0x15ad37:0x165,_0x166929:0x199,_0x450bcd:0x177},_0xe03a77=_0x5abb9d;if(_0xb758f3[_0xe03a77(_0x12327d._0xf68c19)]===_0xe03a77(_0x12327d._0x3ecc7d)){const _0xb2eec3=['e2e',_0xb758f3[_0xe03a77(0x190)]];if(_0xb758f3[_0xe03a77(_0x12327d._0x322485)]!==void 0x0)_0xb2eec3['push']('--test',_0xb758f3[_0xe03a77(0x1c8)]);if(_0xb758f3['debug'])_0xb2eec3[_0xe03a77(0x165)]('--debug');return _0xb758f3[_0xe03a77(_0x12327d._0xd391a3)]&&_0xb758f3[_0xe03a77(_0x12327d._0x118d74)][_0xe03a77(0x12e)]>0x0&&_0xb2eec3[_0xe03a77(_0x12327d._0x278168)](_0xe03a77(0x150),_0xb758f3[_0xe03a77(_0x12327d._0xd391a3)][_0xe03a77(0x13c)](',')),_0xb2eec3;}if(_0xb758f3[_0xe03a77(_0x12327d._0xf68c19)]==='collection'){const _0x34a889=[_0xe03a77(0x1a4),_0xb758f3['collection']];_0xb758f3[_0xe03a77(0x15f)]!==void 0x0&&_0xb758f3[_0xe03a77(_0x12327d._0x36dc88)]>0x1&&_0x34a889[_0xe03a77(_0x12327d._0x15ad37)](_0xe03a77(_0x12327d._0x166929)+_0xb758f3['workers']);if(_0xb758f3['bail'])_0x34a889['push'](_0xe03a77(_0x12327d._0x450bcd));return _0x34a889;}if(_0xb758f3[_0xe03a77(0x1a9)]===_0xe03a77(0x11e))return[_0xe03a77(0x174),_0xb758f3['scenario']];const _0x531e3b=_0xb758f3;throw new UnsupportedRunKindError(_0x531e3b['kind'],this['name']);}[_0x5abb9d(0x11c)](_0x335173){const _0x2e92b3={_0x5de643:0x18f},_0x474f31=_0x5abb9d,_0x15b766={};if(_0x335173[_0x474f31(0x1af)])_0x15b766[_0x474f31(_0x2e92b3._0x5de643)]='1';return _0x15b766;}[_0x5abb9d(0x1c4)](){const _0x562bf2=_0x5abb9d;return[_0x562bf2(0x1a0)];}['schedulesArgs'](){const _0x171466={_0x42c547:0x141},_0x2755ec=_0x5abb9d;return['schedules',_0x2755ec(_0x171466._0x42c547)];}async['doctor'](_0x398bd8){const _0x46d7e6=_0x5abb9d;return[...runEnvironmentChecks({'cwd':_0x398bd8[_0x46d7e6(0x132)]}),await judgeDoctorCheck(process[_0x46d7e6(0x185)])];}},webRunnerAdapter=new WebRunnerAdapter(),web_runner_adapter_default=webRunnerAdapter;function pickBin(_0x8c6c11){const _0x4d74b2={_0x3da457:0x183},_0x7e6785=_0x5abb9d;if(typeof _0x8c6c11[_0x7e6785(_0x4d74b2._0x3da457)]===_0x7e6785(0x129))return _0x8c6c11[_0x7e6785(_0x4d74b2._0x3da457)];if(_0x8c6c11[_0x7e6785(0x183)]&&typeof _0x8c6c11[_0x7e6785(_0x4d74b2._0x3da457)]==='object')return _0x8c6c11[_0x7e6785(0x183)]['unotest-web']??Object['values'](_0x8c6c11[_0x7e6785(0x183)])[0x0]??null;return null;}__name(pickBin,_0x5abb9d(0x12b));function _0x462d(_0x5c82b5,_0x24908a){_0x5c82b5=_0x5c82b5-0x11a;const _0xf7335e=_0xf733();let _0x462d29=_0xf7335e[_0x5c82b5];if(_0x462d['iMKJnf']===undefined){var _0x31f204=function(_0x29cfcc){const _0xc4732b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x58e727='',_0x411586='';for(let _0x3a7a33=0x0,_0x547344,_0x460977,_0x38b6cb=0x0;_0x460977=_0x29cfcc['charAt'](_0x38b6cb++);~_0x460977&&(_0x547344=_0x3a7a33%0x4?_0x547344*0x40+_0x460977:_0x460977,_0x3a7a33++%0x4)?_0x58e727+=String['fromCharCode'](0xff&_0x547344>>(-0x2*_0x3a7a33&0x6)):0x0){_0x460977=_0xc4732b['indexOf'](_0x460977);}for(let _0x55af9c=0x0,_0x37f815=_0x58e727['length'];_0x55af9c<_0x37f815;_0x55af9c++){_0x411586+='%'+('00'+_0x58e727['charCodeAt'](_0x55af9c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x411586);};_0x462d['NXKgAz']=_0x31f204,_0x462d['VXAwMZ']={},_0x462d['iMKJnf']=!![];}const _0x204e34=_0xf7335e[0x0],_0x24c15f=_0x5c82b5+_0x204e34,_0x435a62=_0x462d['VXAwMZ'][_0x24c15f];return!_0x435a62?(_0x462d29=_0x462d['NXKgAz'](_0x462d29),_0x462d['VXAwMZ'][_0x24c15f]=_0x462d29):_0x462d29=_0x435a62,_0x462d29;}export{web_runner_adapter_default as default,webRunnerAdapter};
|
|
1
|
+
const _0x117b58=_0x5753;(function(_0x1f3a37,_0x1fc608){const _0x5a92b2={_0x497d70:0x217,_0x206a52:0x1cd,_0x31f9d1:0x268,_0x28f962:0x1b9,_0x13227d:0x1dc,_0x3d0e58:0x24a,_0x4a601f:0x223},_0x2d14f2=_0x5753,_0x5e92e6=_0x1f3a37();while(!![]){try{const _0x5dfe92=parseInt(_0x2d14f2(_0x5a92b2._0x497d70))/0x1*(-parseInt(_0x2d14f2(0x1de))/0x2)+-parseInt(_0x2d14f2(0x1d2))/0x3*(parseInt(_0x2d14f2(_0x5a92b2._0x206a52))/0x4)+parseInt(_0x2d14f2(_0x5a92b2._0x31f9d1))/0x5*(parseInt(_0x2d14f2(_0x5a92b2._0x28f962))/0x6)+-parseInt(_0x2d14f2(0x23c))/0x7*(-parseInt(_0x2d14f2(_0x5a92b2._0x13227d))/0x8)+-parseInt(_0x2d14f2(0x25f))/0x9*(parseInt(_0x2d14f2(_0x5a92b2._0x3d0e58))/0xa)+-parseInt(_0x2d14f2(0x1b8))/0xb*(-parseInt(_0x2d14f2(_0x5a92b2._0x4a601f))/0xc)+-parseInt(_0x2d14f2(0x248))/0xd;if(_0x5dfe92===_0x1fc608)break;else _0x5e92e6['push'](_0x5e92e6['shift']());}catch(_0x3cba13){_0x5e92e6['push'](_0x5e92e6['shift']());}}}(_0x71a4,0x6a89a));var __defProp=Object[_0x117b58(0x238)],__name=(_0x2f0195,_0x1139ee)=>__defProp(_0x2f0195,_0x117b58(0x21a),{'value':_0x1139ee,'configurable':!![]});import{UnsupportedRunKindError}from'@unotest/protocol';import{readFileSync}from'fs';import{createRequire}from'module';import{dirname,join}from'path';import{existsSync as _0x3ebc8f}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){for(const _0x2caad6 of[probeChrome,probeEdge,probeChromeBeta]){const _0x5a8af2=_0x2caad6();if(_0x5a8af2['channel']!==null)return _0x5a8af2;}return{'channel':null};}__name(probeSystemBrowser,'probeSystemBrowser');function probeChrome(){const _0x12bf05={_0x1c63d1:0x1af},_0x44a399=_0x117b58,_0x443fb7=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x443fb7)return{'channel':_0x44a399(_0x12bf05._0x1c63d1),'path':_0x443fb7,'label':'Google\x20Chrome'};return{'channel':null};}__name(probeChrome,_0x117b58(0x1bd));function probeEdge(){const _0x535ae4=_0x117b58,_0x4d957d=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x4d957d)return{'channel':_0x535ae4(0x203),'path':_0x4d957d,'label':_0x535ae4(0x212)};return{'channel':null};}__name(probeEdge,_0x117b58(0x1fe));function probeChromeBeta(){const _0x43fc5f=_0x117b58,_0x2dee3a=firstExistingPath(CHROME_BETA_PATHS);if(_0x2dee3a)return{'channel':_0x43fc5f(0x267),'path':_0x2dee3a,'label':_0x43fc5f(0x1c6)};return{'channel':null};}__name(probeChromeBeta,_0x117b58(0x23e));var CHROME_PATHS=((()=>{const _0xbcc8e2={_0x6db319:0x25c,_0x365c98:0x1ee,_0x16b4d8:0x241,_0x212ac0:0x1d9,_0xc47ee3:0x1eb,_0x5a1313:0x20f,_0x9175e9:0x1b1},_0x3dc352=_0x117b58;switch(process[_0x3dc352(0x20c)]){case _0x3dc352(0x262):return[_0x3dc352(_0xbcc8e2._0x6db319)];case _0x3dc352(_0xbcc8e2._0x365c98):return[process[_0x3dc352(0x210)][_0x3dc352(_0xbcc8e2._0x16b4d8)]+'\x5cGoogle\x5cChrome\x5cApplication\x5cchrome.exe',process['env'][_0x3dc352(_0xbcc8e2._0x212ac0)]+_0x3dc352(_0xbcc8e2._0xc47ee3),process[_0x3dc352(0x210)][_0x3dc352(0x245)]+_0x3dc352(0x1eb)];default:return[_0x3dc352(0x24e),_0x3dc352(0x249),_0x3dc352(_0xbcc8e2._0x5a1313),_0x3dc352(_0xbcc8e2._0x9175e9),_0x3dc352(0x22c)];}})()),CHROME_BIN_NAMES=[_0x117b58(0x1dd),_0x117b58(0x1cf),'chromium',_0x117b58(0x214)],EDGE_PATHS=((()=>{const _0x3dcd69={_0x6faa91:0x210,_0x594835:0x1df,_0x47fae5:0x1d9},_0x3c2a91=_0x117b58;switch(process[_0x3c2a91(0x20c)]){case _0x3c2a91(0x262):return['/Applications/Microsoft\x20Edge.app/Contents/MacOS/Microsoft\x20Edge'];case _0x3c2a91(0x1ee):return[process[_0x3c2a91(_0x3dcd69._0x6faa91)]['ProgramFiles']+_0x3c2a91(_0x3dcd69._0x594835),process['env'][_0x3c2a91(_0x3dcd69._0x47fae5)]+_0x3c2a91(0x1df)];default:return['/usr/bin/microsoft-edge','/usr/bin/microsoft-edge-stable'];}})()),EDGE_BIN_NAMES=['microsoft-edge',_0x117b58(0x1f4)],CHROME_BETA_PATHS=((()=>{const _0x2e6254={_0x2c6ea4:0x241,_0x12d2bc:0x1bb,_0x2c8a7f:0x207},_0x5578e7=_0x117b58;switch(process['platform']){case _0x5578e7(0x262):return[_0x5578e7(0x1c9)];case _0x5578e7(0x1ee):return[process['env'][_0x5578e7(_0x2e6254._0x2c6ea4)]+_0x5578e7(_0x2e6254._0x12d2bc)];default:return[_0x5578e7(_0x2e6254._0x2c8a7f)];}})());function firstExistingPath(_0x4ecebe){for(const _0x43bc32 of _0x4ecebe){if(!_0x43bc32||_0x43bc32['startsWith']('undefined'))continue;if(existsSync(_0x43bc32))return _0x43bc32;}return null;}__name(firstExistingPath,'firstExistingPath');function whichOf(_0x1a42b9){const _0x2814a1={_0x73dea4:0x250},_0x1b9ca6=_0x117b58;if(process[_0x1b9ca6(0x20c)]==='win32')return void 0x0;for(const _0x1e4577 of _0x1a42b9){try{const _0x21e88c=execFileSync('which',[_0x1e4577],{'encoding':_0x1b9ca6(_0x2814a1._0x73dea4)})['trim']();if(_0x21e88c['length']>0x0&&existsSync(_0x21e88c))return _0x21e88c;}catch{}}return void 0x0;}__name(whichOf,_0x117b58(0x1c7));function runEnvironmentChecks(_0x421c3c={}){const _0x1bbdad=_0x117b58,_0x45c828=_0x421c3c[_0x1bbdad(0x1ab)]??process['cwd']();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x45c828)];}__name(runEnvironmentChecks,_0x117b58(0x25b));function checkNodeVersion(){const _0x5c3f9a={_0x3ba4ad:0x215,_0x87f5f8:0x1d7,_0x27bb63:0x20a,_0x22dd8d:0x265},_0x52b88a=_0x117b58,_0x530019=process[_0x52b88a(_0x5c3f9a._0x3ba4ad)][_0x52b88a(0x21d)],_0x361e76=Number(_0x530019['split']('.')[0x0]);if(!Number['isFinite'](_0x361e76)||_0x361e76<0x14)return{'name':'Node.js\x20version','severity':_0x52b88a(_0x5c3f9a._0x87f5f8),'message':_0x52b88a(_0x5c3f9a._0x27bb63)+_0x530019+')','detail':_0x52b88a(_0x5c3f9a._0x22dd8d)};return{'name':_0x52b88a(0x228),'severity':'ok','message':_0x530019};}__name(checkNodeVersion,_0x117b58(0x1e3));function checkSystemBrowser(){const _0x530256={_0x11c85c:0x229,_0x331b0c:0x1db,_0x170e34:0x1f1,_0x44f718:0x23b,_0x2e0b42:0x211},_0x34fac4=_0x117b58,_0x4bd449=probeSystemBrowser();if(_0x4bd449[_0x34fac4(_0x530256._0x11c85c)]!==null)return{'name':_0x34fac4(_0x530256._0x331b0c),'severity':'ok','message':_0x4bd449[_0x34fac4(_0x530256._0x170e34)]+_0x34fac4(_0x530256._0x44f718),'detail':_0x4bd449['path']};return{'name':_0x34fac4(_0x530256._0x331b0c),'severity':'warning','message':'no\x20Chrome\x20/\x20Edge\x20/\x20Chromium\x20detected','detail':_0x34fac4(_0x530256._0x2e0b42)};}__name(checkSystemBrowser,_0x117b58(0x22b));function checkWritableCwd(_0x51bac5){const _0x2844a4={_0x3be39c:0x1d5,_0x3133a1:0x1d7,_0x5e68af:0x1d1,_0x4b1339:0x1e2},_0x2cdc6e=_0x117b58;if(!_0x3ebc8f(_0x51bac5))return{'name':_0x2cdc6e(_0x2844a4._0x3be39c),'severity':_0x2cdc6e(_0x2844a4._0x3133a1),'message':_0x2cdc6e(_0x2844a4._0x5e68af)+_0x51bac5+_0x2cdc6e(0x258),'detail':_0x2cdc6e(_0x2844a4._0x4b1339)};return{'name':_0x2cdc6e(0x1d5),'severity':'ok','message':_0x51bac5};}__name(checkWritableCwd,_0x117b58(0x225));import{JUDGE_ENV as _0x5dacf0}from'@unotest/protocol';import{JUDGE_ENV}from'@unotest/protocol';function resolveJudgeMode(_0x33f879){const _0x397d6d=_0x117b58,_0x85d0d6=_0x33f879[JUDGE_ENV['mode']];if(_0x85d0d6===void 0x0||_0x85d0d6===''||_0x85d0d6==='off')return'off';if(_0x85d0d6==='local'||_0x85d0d6==='remote')return _0x85d0d6;throw new Error(_0x397d6d(0x235)+_0x85d0d6+_0x397d6d(0x247));}__name(resolveJudgeMode,'resolveJudgeMode');var DEFAULT_REMOTE_TIMEOUT_MS=0xea60;function _0x71a4(){const _0x5252b7=['ChvZAa','DxrMoa','y2f0y2G','C3rYAw5N','uMvTB3rLsNvKz2u','ls1IywLS','ls13B3jRzxjZpq','vu5pvevtvf9kvurhrv9vuKWGy2fYCMLLCYbHihvZzxiGB3iGCgfZC3DVCMqSihDOAwnOigzLDgnOihjLzNvZzxmGDg8GC2vUzcdIGjqGz2L2zsb0AguGC2vYDMLJzsDZihrVA2vUigfZifvot1rfu1rFsLver0vFve9lru4GAw5ZDgvHzcaOANvKz2uGC2vYDMLJzsbHDca','r0vu','igrVzxmGBM90igv4Axn0','Dg9Rzw4','l3bHy2THz2uUANnVBG','CNvUrw52AxjVBM1LBNrdAgvJA3m','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','igLZig5VDcbYzwfKEsaO','Cgf0Ag5HBwu','oxjJDgfbBW','C2vUza','ChjLyw1IBgu','zgfYD2LU','zgvIDwC','Bw9KzwW','sw5ZDgfSBcboB2rLidiWkYb2AweGBNzTic8GzM5Tic8GDM9SDgeGyw5KihjLlxj1BI4','kfvot1rfu1rFsLver0vFveLnru9vvf9nuYKG4OcuihjHAxnLigL0lcbVCIbSB3DLCIb0AguGC2vYDMLJzsDZig93BIbWzxiTy2fSBcbIDwrNzxqGkfvot1rfu1rFsLver0vFq0fmtf9usu1ft1vux01tkq','y2HYB21LlwjLDge','ntK5otCWDLb5veLs','ihjLCgXPzwqG','y3DK','CMvZB2X2zujPBG','C2nOzwr1BgvZ','DxnLCM5HBwu','y2HYB21L','C2nOzwr1BgvZqxjNCW','l3vZCI9IAw4Vy2HYB21PDw0','tgf6EuP1zgDL','yxnZzxj0sNvKz2uGBMvLzhmGysbQDwrNzsbIywnRzw5KicHvtK9urvnux0PvreDfx01preu9B2zMksdIGjqGC2v0ifvot1rfu1rFsLver0vFtu9ert1Yzw1VDguGkYbvtK9urvnux0PvreDfx1vstcaOC3rHCNqGB25LihDPDgGGyg5WEcbaDw5VDgvZDc9QDwrNzwaPlcbVCIbvtK9urvnux0PvreDfx01preu9Bg9JywWGD2L0AcbaDw5VDgvZDc9QDwrNzsbPBNn0ywXSzwqGAw4GDgHLihbYB2PLy3qUifbYB3zPzgvYignVBMzPzYaOvu5pvevtvf9kvurhrv9quK9wsurfuIbLDgmUksbSAxzLCYbPBIb1BM90zxn0lY5LBNyGlYb0AguGls1LBNyGB3zLCMXHEs4','ChjVAMvJDfjVB3q','CgfYC2vjBNq','ihjLCgXPzwqGD2L0Ag91DcbHihzLCMrPy3qG4OcuihzLCNnPB24GBwLZBwf0y2G/','CgLJA0jPBG','mZyYntaZowTpC2Dyuq','mtHnsg1eB00','B3jPz2LU','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','iokaLcbvtK9urvnux0PvreDfx1rps0voig11C3qGBwf0y2GGDgHLig9Uzsb0AguGC2vYDMLJzsb3yxmGC3rHCNrLzcb3AxrO','ChjVyMvdAhjVBwu','Axnoyu4','yxbWu2vYDMvYqxjNCW','CMvHC29UAw5N','ihbHy2THz2uUANnVBIbKzwnSyxjLCYbUBYaNyMLUjYbMAwvSzcdIGjqGyNjVA2vUigLUC3rHBgW/','D29YA2vYCW','CgfZCW','DxjS','Bg9Hza','r29Vz2XLienOCM9TzsbczxrH','D2HPy2HpzG','tNvSBeP1zgDL','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','CgfZC3DVCMq','D2L0AfbYzwfTyMXL','AgvHBhrO','odm1nMPxreXrtq','CMvZB2X2zq','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','B2jQzwn0','DgfYz2v0ia','ndu2A3HbAwzR','A2LUza','v2vIuNvUBMvYqwrHChrLCG','vgfYz2v0igrPCMvJDg9YEq','q29UzMLNrxjYB3i','zxjYB3i','ls1QC29U','uhjVz3jHBuzPBgvZkhG4nIK','qMvHCMvYia','u3LZDgvTigjYB3DZzxi','mZa0ntq0ohbHz0rHwG','z29Vz2XLlwnOCM9Tzq','ndzyvwTpAfC','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','y2fUugfYC2u','y3jLyxrLsNvKz2vtzxj2AwnLrNjVBuvUDG','q3jLyxrLihrOzsbKAxjLy3rVCNKGB3iGCNvUigLUAxqGAw4Gyw4GzxHPC3rPBMCGChjVAMvJDcbYB290lG','y2HLy2ToB2rLvMvYC2LVBG','zMfJDg9YEq','ANvKz2uGC2vYDMLJzsbHDca','Bw9Kzq','kg5VihjLyxnVBMLUzYK','C3rHDhvZ','C2nLBMfYAw8','yNjLywTWB2LUDhm','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','DgLTzw91De1Z','qhvUB3rLC3qVD2vI','D2LUmZi','Bg9HzgLUzW','DgHLigP1zgDLihnLCNzPy2uGyxqG','BgfIzwW','BxmG','C3rYAw5NAwz5','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','AgvHBhrOvgLTzw91De1Z','C3vMzML4','CgfYC2u','Dw5VDgvZDc13zwi','zg9JDg9Y','ue9tva','yxbWlxnLCNzLCG','y29Kzq','vgLTzw91DevYCM9Y','ChjVyMvfzgDL','ANvKz2veB2n0B3jdAgvJAW','ANvKz2u','ChjVDMLKzxi','BgvUz3rO','BxnLzgDL','BwvZC2fNzq','CMvHC29U','C2HVD0P1zgDLvxjS','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','vu5pvevtvf9kvurhrv9vuKWGAxmGBM90igeGvvjmiokaLcbLlMCUigH0Dha6lY8XmJCUmc4WlJe6odC5mcbMCM9TigbUChGGqhvUB3rLC3qVANvKz2vG','yMLU','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','vu5pvevtvf9iruferuq','CgXHDgzVCM0','ls10zxn0','Bg9JywWGANvKz2uGzMfPBgvKoIa','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','zw52','Aw5PDcb3AwXSig9MzMvYihrVigrVD25SB2fKigj1BMrSzwqGq2HYB21PDw0Gkh4XntaGtuiPlIbbBhrLCM5HDgL2zwX5lcbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4U','twLJCM9ZB2z0ievKz2u','y29UzMLN','y2HYB21PDw0TyNjVD3nLCG','DMvYC2LVBNm','DhjPBq','mtC4uw9btuzZ','zMv0y2HjBxbS','yNvPBgrbCMDZ','BMfTzq','B2zMicG','uhjLyw1IBgvkDwrNzq','BM9Kzq','C2HVD24','ANnVBG','ksdIGjqGAxmGyg5WEcbaDw5VDgvZDc9QDwrNzwaGCNvUBMLUzYWGyw5KigrVzxmGvu5pvevtvf9kvurhrv9vuKWGCg9PBNqGyxqGAxq/','DgLTzw91Da','oIbUB3qGCMvHzhK','mJrhrujLt2K','Bg9JywW','y2HLy2TxCML0ywjSzun3za','CMvZB2X2zvjLBw90zuP1zgDLrw52','ls1Kzwj1zW','tM9Kzs5QCYb2zxjZAw9U','y2HHBM5LBa','sNvKz2vvBMf2ywLSywjSzuvYCM9Y','y2HLy2TtExn0zw1cCM93C2vY','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','ihvUC2v0ksdIGjqGysbZy2vUyxjPBYb0Agf0ignHBgXZigfZC2vYDeP1zgDLigLZihjLzNvZzwqGyMvMB3jLigL0CYbMAxjZDcbZDgvW','CNvICMLJ','ls1ICMvHAW','Aw5Uzxi','yNvPBgrfBNy','yMfPBa','yMfZzvvYBa','yxv0Ag9YAw5N','vu5pvevtvf9kvurhrv9nt0rfig11C3qGyMuGiM9MzIiSicjSB2nHBciGB3iGiNjLBw90zsiSigDVDcaI','DgvZDa','DMvYzgLJDa','zgvMAw5LuhjVCgvYDhK','4OcuigLZigbUChGGqhvUB3rLC3qVANvKz2vGihj1BM5PBMCSigfUzcbKB2vZifvot1rfu1rFsLver0vFvvjmihbVAw50igf0igL0pW','vu5pvevtvf9kvurhrv9nt0rfpwXVy2fSig5LzwrZieb1BM90zxn0l2P1zgDLigLUC3rHBgXLzcbPBIb0AguGChjVAMvJDcaOyg5WBsbPic1eieb1BM90zxn0l2P1zgDLycKSig9YihvZzsbvtK9urvnux0PvreDfx01preu9CMvTB3rLihDPDgGGysbYDw5UAw5NihnLCNzPy2uGkgbUChGGqhvUB3rLC3qVANvKz2vGks4Gsw1WB3j0igzHAwXLzcb3AxrOoIa','igzVDw5K','n3PowvzZwq','yNvPBgrkDwrNzuzYB21fBNy','ChjVyMvdAhjVBwvczxrH','yxbWBgLJyxrPB24VANnVBG','y29SBgvJDgLVBG','uhjVz3jHBuzPBgvZ','C3vWCg9YDgvKs2LUzhm','vu5pvevtvf9kvurhrv9nt0rfpwXVy2fSoIa','CMvTB3rL','te9dquXbufbeqvrb','B2zM','iI4Gvw5ZzxqGAxqGkg9YicjVzMyIksb0BYbKAxnHyMXLigfZC2vYDeP1zgDLlG','mJa1mJmXmg5WA1D4vG','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1ZDgfIBgu','ndGZodKXmg9zweLgAG','CMvHzhK','CMvXDwvZDfrPBwvVDxrnCW','Aw50rw52','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq'];_0x71a4=function(){return _0x5252b7;};return _0x71a4();}function resolveRemoteJudgeEnv(_0x252a68){const _0x30f72d=_0x117b58,_0x39802b=_0x252a68[JUDGE_ENV[_0x30f72d(0x1c4)]];if(!_0x39802b)throw new Error(JUDGE_ENV[_0x30f72d(0x1e6)]+'=remote\x20requires\x20'+JUDGE_ENV[_0x30f72d(0x1c4)]+'\x20(the\x20judge\x20service\x20URL,\x20e.g.\x20http://127.0.0.1:8790\x20from\x20`npx\x20@unotest/judge`)');const _0x387b05={'baseUrl':_0x39802b,'timeoutMs':intEnv(_0x252a68,JUDGE_ENV[_0x30f72d(0x24c)],DEFAULT_REMOTE_TIMEOUT_MS)},_0x55719c=_0x252a68[JUDGE_ENV['token']];if(_0x55719c)_0x387b05[_0x30f72d(0x259)]=_0x55719c;return _0x387b05;}__name(resolveRemoteJudgeEnv,_0x117b58(0x226));function resolveJudgePreamble(_0x1a8a8e){const _0x3f87cd=_0x117b58,_0x534fd5=_0x1a8a8e[JUDGE_ENV['preamble']]?.[_0x3f87cd(0x216)]();return _0x534fd5?_0x534fd5:void 0x0;}__name(resolveJudgePreamble,'resolveJudgePreamble');function intEnv(_0x497ed4,_0x1f481e,_0x257f6e){const _0x530ff5={_0x55e631:0x1b5},_0x2e3359=_0x117b58,_0x21180a=_0x497ed4[_0x1f481e];if(_0x21180a===void 0x0||_0x21180a==='')return _0x257f6e;const _0x3ffdab=Number[_0x2e3359(_0x530ff5._0x55e631)](_0x21180a,0xa);if(Number[_0x2e3359(0x1be)](_0x3ffdab)||_0x3ffdab<0x3e8||_0x3ffdab>0x927c0)throw new Error(_0x1f481e+'\x20must\x20be\x20an\x20integer\x20in\x20[1000,\x20600000],\x20got\x20\x22'+_0x21180a+'\x22');return _0x3ffdab;}__name(intEnv,_0x117b58(0x24d));import{JUDGE_ENV as _0x55bdc8}from'@unotest/protocol';import{UnotestError}from'@unotest/core';var ConfigError=class extends UnotestError{static{__name(this,_0x117b58(0x1d6));}},JudgeUnavailableError=class extends UnotestError{static{__name(this,_0x117b58(0x22a));}};async function buildLocalJudge(_0x2cf440){const _0x337216={_0x41cea7:0x23a,_0x53c22d:0x1e1,_0x38df19:0x204},_0x162cd9={_0x517c8f:0x200,_0x476fc0:0x20e,_0x4849f5:0x204,_0x1da886:0x201},_0xa91bb8=_0x117b58;let _0x37c786;try{_0x37c786=await import('@unotest/judge');}catch(_0x1e469b){const _0xb14031=_0x1e469b instanceof Error?_0x1e469b[_0xa91bb8(0x204)]:String(_0x1e469b);throw new ConfigError(_0xa91bb8(_0x337216._0x41cea7)+_0xb14031);}let _0xb054b0;try{_0xb054b0=_0x37c786[_0xa91bb8(_0x337216._0x53c22d)](_0x2cf440);}catch(_0x21e666){throw new ConfigError(_0xa91bb8(0x243)+(_0x21e666 instanceof Error?_0x21e666[_0xa91bb8(_0x337216._0x38df19)]:String(_0x21e666)));}return{async 'ready'(){},async 'judge'(_0x189a55){const _0x4ce5fb=_0xa91bb8;try{return await _0xb054b0[_0x4ce5fb(_0x162cd9._0x517c8f)](_0x189a55);}catch(_0x2c2e57){if(_0x2c2e57 instanceof ConfigError||_0x2c2e57 instanceof JudgeUnavailableError)throw _0x2c2e57;throw new JudgeUnavailableError(_0x4ce5fb(_0x162cd9._0x476fc0)+(_0x2c2e57 instanceof Error?_0x2c2e57[_0x4ce5fb(_0x162cd9._0x4849f5)]:String(_0x2c2e57)),{'provider':_0x2cf440[_0x55bdc8[_0x4ce5fb(_0x162cd9._0x1da886)]]});}}};}__name(buildLocalJudge,'buildLocalJudge');var DEFAULT_REASON=_0x117b58(0x1b3),NullJudge=class{constructor(_0x5d32d3=DEFAULT_REASON){const _0x5b6204={_0xbb7a75:0x205},_0xf6a4ba=_0x117b58;this[_0xf6a4ba(_0x5b6204._0xbb7a75)]=_0x5d32d3;}[_0x117b58(0x205)];static{__name(this,_0x117b58(0x1c8));}['judge'](_0x2cf800){const _0x43126c={_0x245300:0x205},_0x3af614=_0x117b58;throw new ConfigError(this[_0x3af614(_0x43126c._0x245300)]);}async[_0x117b58(0x24b)](){const _0x2bc7cf={_0x50e6f6:0x205},_0x54ae6d=_0x117b58;throw new ConfigError(this[_0x54ae6d(_0x2bc7cf._0x50e6f6)]);}},PreambleJudge=class{constructor(_0x132677,_0x125b64){const _0x56c03f=_0x117b58;this[_0x56c03f(0x230)]=_0x132677,this['preamble']=_0x125b64;}['inner'];[_0x117b58(0x261)];static{__name(this,_0x117b58(0x21c));}[_0x117b58(0x200)](_0x13d01f){const _0xfb4643={_0x4182ce:0x230,_0x46a75a:0x261},_0x8381f0=_0x117b58;return this[_0x8381f0(_0xfb4643._0x4182ce)][_0x8381f0(0x200)]({..._0x13d01f,'rubric':this[_0x8381f0(_0xfb4643._0x46a75a)]+'\x0a\x0a'+_0x13d01f[_0x8381f0(0x22e)]});}[_0x117b58(0x24b)](){const _0x4ee1a2={_0x1f27c4:0x24b},_0x3c3d24=_0x117b58;return this['inner'][_0x3c3d24(_0x4ee1a2._0x1f27c4)]();}};function withPreamble(_0x558ad1,_0xa267e){return _0xa267e?new PreambleJudge(_0x558ad1,_0xa267e):_0x558ad1;}__name(withPreamble,_0x117b58(0x1cb));import{JUDGE_ROUTES}from'@unotest/protocol';function _0x5753(_0x4baed6,_0x67dbcb){_0x4baed6=_0x4baed6-0x1aa;const _0x71a403=_0x71a4();let _0x575368=_0x71a403[_0x4baed6];if(_0x5753['zuntuW']===undefined){var _0x1eedc6=function(_0x3ff000){const _0x1a9483='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3ebc8f='',_0x5dacf0='';for(let _0x55bdc8=0x0,_0x2f0195,_0x1139ee,_0x2caad6=0x0;_0x1139ee=_0x3ff000['charAt'](_0x2caad6++);~_0x1139ee&&(_0x2f0195=_0x55bdc8%0x4?_0x2f0195*0x40+_0x1139ee:_0x1139ee,_0x55bdc8++%0x4)?_0x3ebc8f+=String['fromCharCode'](0xff&_0x2f0195>>(-0x2*_0x55bdc8&0x6)):0x0){_0x1139ee=_0x1a9483['indexOf'](_0x1139ee);}for(let _0x5a8af2=0x0,_0x443fb7=_0x3ebc8f['length'];_0x5a8af2<_0x443fb7;_0x5a8af2++){_0x5dacf0+='%'+('00'+_0x3ebc8f['charCodeAt'](_0x5a8af2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5dacf0);};_0x5753['TEjOrc']=_0x1eedc6,_0x5753['ZcuVfj']={},_0x5753['zuntuW']=!![];}const _0x20c6f3=_0x71a403[0x0],_0x54df10=_0x4baed6+_0x20c6f3,_0x1b84a3=_0x5753['ZcuVfj'][_0x54df10];return!_0x1b84a3?(_0x575368=_0x5753['TEjOrc'](_0x575368),_0x5753['ZcuVfj'][_0x54df10]=_0x575368):_0x575368=_0x1b84a3,_0x575368;}var HEALTH_TIMEOUT_MS=0x1388;function showJudgeUrl(_0x4e5bde){const _0x30bd36={_0x3584c2:0x1e0,_0x27d970:0x1ba,_0x185abc:0x25e,_0x26f048:0x1ae},_0x4dd37b=_0x117b58;if(!URL[_0x4dd37b(_0x30bd36._0x3584c2)](_0x4e5bde))return{'shown':'(not\x20a\x20URL)','unsendable':_0x4dd37b(0x208)};const _0x35d275=new URL(_0x4e5bde),_0x543df5=_0x35d275['pathname']==='/'?_0x35d275[_0x4dd37b(0x1ba)]:''+_0x35d275[_0x4dd37b(_0x30bd36._0x27d970)]+_0x35d275[_0x4dd37b(_0x30bd36._0x185abc)];return{'shown':_0x543df5,'unsendable':_0x35d275[_0x4dd37b(_0x30bd36._0x26f048)]||_0x35d275[_0x4dd37b(0x1ca)]?_0x4dd37b(0x256)+_0x543df5+')':null};}__name(showJudgeUrl,_0x117b58(0x206));var RemoteJudge=class{constructor(_0x31dd53,_0x61cb=fetch,_0x32774d=HEALTH_TIMEOUT_MS){const _0x2d4804={_0xc828fb:0x233,_0x15c927:0x1c4,_0x5cdef4:0x233},_0x1a4054=_0x117b58;this['env']=_0x31dd53,this[_0x1a4054(0x218)]=_0x61cb,this[_0x1a4054(0x1f5)]=_0x32774d,this[_0x1a4054(_0x2d4804._0xc828fb)]=_0x31dd53[_0x1a4054(0x233)]['replace'](/\/+$/,''),this[_0x1a4054(_0x2d4804._0x15c927)]=showJudgeUrl(this[_0x1a4054(_0x2d4804._0x5cdef4)]);}[_0x117b58(0x210)];[_0x117b58(0x218)];[_0x117b58(0x1f5)];static{__name(this,_0x117b58(0x253));}[_0x117b58(0x233)];['url'];async[_0x117b58(0x200)](_0x2e8316){const _0x118f58={_0x535375:0x200,_0x2551ba:0x1fa,_0xfc1ec8:0x23f,_0x46d945:0x1da,_0x4b3b88:0x210,_0x2408cf:0x266,_0x23316d:0x1fc,_0x5f4b37:0x213,_0x581dee:0x1d7,_0x521dca:0x1e5,_0x1cf94d:0x1c4,_0x31e2db:0x21e,_0x5e6d57:0x1c4,_0x52a036:0x1aa,_0x40c1a2:0x1e8,_0x573dba:0x1bc,_0x2581a8:0x1c4,_0x59f04f:0x1e8,_0xf038c3:0x237,_0x55b4e8:0x1c3,_0xa653b7:0x237,_0x476a8d:0x1b6},_0x487ee4=_0x117b58,_0x160e9c=await this['send'](JUDGE_ROUTES[_0x487ee4(_0x118f58._0x535375)],{'method':_0x487ee4(_0x118f58._0x2551ba),'headers':{'content-type':_0x487ee4(_0x118f58._0xfc1ec8),...this[_0x487ee4(0x210)]['token']?{'authorization':_0x487ee4(_0x118f58._0x46d945)+this[_0x487ee4(0x210)]['token']}:{}},'body':JSON[_0x487ee4(0x1f3)](_0x2e8316)},this[_0x487ee4(_0x118f58._0x4b3b88)][_0x487ee4(0x1ec)],_0x487ee4(_0x118f58._0x2408cf)),_0x2e845b=await _0x160e9c['json']()[_0x487ee4(0x251)](()=>({}));if(!_0x160e9c['ok']){if(_0x2e845b[_0x487ee4(_0x118f58._0x23316d)]===_0x487ee4(_0x118f58._0x5f4b37)&&_0x2e845b[_0x487ee4(_0x118f58._0x581dee)])throw new ConfigError(_0x487ee4(_0x118f58._0x521dca)+this[_0x487ee4(_0x118f58._0x1cf94d)][_0x487ee4(_0x118f58._0x31e2db)]+':\x20'+_0x2e845b['error']);throw new JudgeUnavailableError(_0x487ee4(_0x118f58._0x521dca)+this[_0x487ee4(_0x118f58._0x5e6d57)]['shown']+_0x487ee4(_0x118f58._0x52a036)+_0x160e9c[_0x487ee4(_0x118f58._0x40c1a2)]+(_0x2e845b['error']?':\x20'+_0x2e845b[_0x487ee4(0x1d7)]:'')+(_0x2e845b[_0x487ee4(0x1fc)]==='unauthorized'?_0x487ee4(_0x118f58._0x573dba):''),{'url':this[_0x487ee4(_0x118f58._0x2581a8)]['shown'],'status':_0x160e9c[_0x487ee4(_0x118f58._0x59f04f)],'code':_0x2e845b[_0x487ee4(_0x118f58._0x23316d)]});}if(_0x2e845b[_0x487ee4(_0x118f58._0xf038c3)]!==_0x487ee4(_0x118f58._0x55b4e8)&&_0x2e845b[_0x487ee4(_0x118f58._0xa653b7)]!=='fail')throw new JudgeUnavailableError(_0x487ee4(0x1e5)+this['url'][_0x487ee4(0x21e)]+_0x487ee4(_0x118f58._0x476a8d),{'url':this[_0x487ee4(0x1c4)]['shown']});return{'verdict':_0x2e845b[_0x487ee4(_0x118f58._0xa653b7)],'reasoning':_0x2e845b[_0x487ee4(0x1c0)]??_0x487ee4(0x1e7),'model':_0x2e845b[_0x487ee4(0x264)]??'(unknown)','attempts':_0x2e845b['attempts']??0x1};}async[_0x117b58(0x24b)](){const _0x29545d={_0x22464d:0x1cc,_0x45714e:0x1f5,_0x2aca65:0x239,_0x7ea513:0x1e5,_0x4eecfd:0x1c4,_0x924084:0x25d,_0x1110f1:0x1e8},_0x5d1bb4=_0x117b58,_0x27fa60=await this[_0x5d1bb4(0x260)](JUDGE_ROUTES[_0x5d1bb4(_0x29545d._0x22464d)],{'method':_0x5d1bb4(0x257)},this[_0x5d1bb4(_0x29545d._0x45714e)],_0x5d1bb4(_0x29545d._0x2aca65));if(_0x27fa60['ok'])return;const _0x585198=await _0x27fa60[_0x5d1bb4(0x21f)]()[_0x5d1bb4(0x251)](()=>({}));throw new ConfigError(_0x5d1bb4(_0x29545d._0x7ea513)+this[_0x5d1bb4(_0x29545d._0x4eecfd)]['shown']+_0x5d1bb4(_0x29545d._0x924084)+_0x27fa60[_0x5d1bb4(_0x29545d._0x1110f1)]+')'+(_0x585198[_0x5d1bb4(0x1d7)]?':\x20'+_0x585198[_0x5d1bb4(0x1d7)]:''));}async[_0x117b58(0x260)](_0xa40245,_0x33d8bb,_0x55f85a,_0x3c5aa5){const _0x421dd0={_0xa9cd4b:0x1c4,_0x56541a:0x1fd,_0x4ad33d:0x1f0,_0x24df93:0x21e},_0x5566df=_0x117b58;if(this['url']['unsendable']!==null)throw new ConfigError(this[_0x5566df(_0x421dd0._0xa9cd4b)]['unsendable']);try{return await this[_0x5566df(0x218)](''+this[_0x5566df(0x233)]+_0xa40245,{..._0x33d8bb,'signal':AbortSignal[_0x5566df(0x221)](_0x55f85a)});}catch(_0x44e802){if(_0x44e802 instanceof Error&&_0x44e802[_0x5566df(0x21a)]===_0x5566df(_0x421dd0._0x56541a))throw new JudgeUnavailableError(_0x5566df(_0x421dd0._0x4ad33d)+this['url'][_0x5566df(_0x421dd0._0x24df93)]+'\x20did\x20not\x20answer\x20within\x20'+_0x55f85a+_0x5566df(0x1f2)+_0x3c5aa5,{'url':this['url'][_0x5566df(_0x421dd0._0x24df93)],'timeoutMs':_0x55f85a});throw new JudgeUnavailableError('cannot\x20reach\x20the\x20judge\x20service\x20at\x20'+this['url'][_0x5566df(0x21e)]+'\x20('+(_0x44e802 instanceof Error?_0x44e802[_0x5566df(0x204)]:String(_0x44e802))+_0x5566df(0x220),{'url':this[_0x5566df(0x1c4)]['shown']});}}},LazyJudge=class{constructor(_0x2cec09){const _0x4a9072=_0x117b58;this[_0x4a9072(0x1e4)]=_0x2cec09;}['factory'];static{__name(this,_0x117b58(0x1b2));}[_0x117b58(0x1ef)];[_0x117b58(0x200)](_0x17813a){const _0x25f2d8={_0x47a572:0x1c5},_0x1d5807=_0x117b58;return this[_0x1d5807(_0x25f2d8._0x47a572)]()['then'](_0x5d2e12=>_0x5d2e12['judge'](_0x17813a));}async['ready'](){const _0x48e4a2=_0x117b58;await(await this['load']())[_0x48e4a2(0x24b)]();}[_0x117b58(0x1c5)](){const _0x29453a={_0x3a9e4b:0x1ef},_0x8be17c=_0x117b58;return this[_0x8be17c(0x1ef)]??=this[_0x8be17c(0x1e4)](),this[_0x8be17c(_0x29453a._0x3a9e4b)];}};function buildJudgeFromEnv(_0x1383e6,_0xce780=resolveJudgeMode(_0x1383e6)){const _0x5a140c={_0x10d6d9:0x224,_0x3cde44:0x204},_0x1ccf2c=_0x117b58;switch(_0xce780){case _0x1ccf2c(0x246):return new NullJudge();case _0x1ccf2c(_0x5a140c._0x10d6d9):return withPreamble(new LazyJudge(()=>buildLocalJudge(_0x1383e6)),resolveJudgePreamble(_0x1383e6));case _0x1ccf2c(0x244):try{return withPreamble(new RemoteJudge(resolveRemoteJudgeEnv(_0x1383e6)),resolveJudgePreamble(_0x1383e6));}catch(_0x54b77c){return new NullJudge(_0x54b77c instanceof Error?_0x54b77c[_0x1ccf2c(_0x5a140c._0x3cde44)]:String(_0x54b77c));}}}__name(buildJudgeFromEnv,_0x117b58(0x23d));var NAME='LLM\x20judge\x20(assertJudge)';async function judgeDoctorCheck(_0xadda0a,_0x32c978=buildJudgeFromEnv){const _0x1b2232={_0x413262:0x204,_0x4d7732:0x21b,_0x42e648:0x1e6,_0xeb92d5:0x22d,_0x371882:0x24b,_0x2c9b43:0x1d7},_0xc3e5a9=_0x117b58;let _0x483185;try{_0x483185=resolveJudgeMode(_0xadda0a);}catch(_0x22f6f2){return{'name':NAME,'severity':_0xc3e5a9(0x1d7),'message':_0x22f6f2 instanceof Error?_0x22f6f2[_0xc3e5a9(_0x1b2232._0x413262)]:String(_0x22f6f2)};}if(_0x483185===_0xc3e5a9(0x246))return{'name':NAME,'severity':'ok','message':_0xc3e5a9(_0x1b2232._0x4d7732)+_0x5dacf0[_0xc3e5a9(_0x1b2232._0x42e648)]+_0xc3e5a9(_0x1b2232._0xeb92d5)};try{return await _0x32c978(_0xadda0a)[_0xc3e5a9(_0x1b2232._0x371882)](),{'name':NAME,'severity':'ok','message':_0x483185+':\x20ready'};}catch(_0x329221){return{'name':NAME,'severity':_0xc3e5a9(_0x1b2232._0x2c9b43),'message':_0x483185+_0xc3e5a9(0x222),'detail':_0x329221 instanceof Error?_0x329221[_0xc3e5a9(0x204)]:String(_0x329221)};}}__name(judgeDoctorCheck,_0x117b58(0x1ff));var PACKAGE_NAME=_0x117b58(0x1ed),WebRunnerAdapter=class{static{__name(this,_0x117b58(0x1d4));}[_0x117b58(0x21a)]=PACKAGE_NAME;[_0x117b58(0x1f6)]='';[_0x117b58(0x263)]={'picker':!![],'attach':!![],'resumeFromFailure':![]};[_0x117b58(0x242)]=[_0x117b58(0x1e9),_0x117b58(0x240),_0x117b58(0x234)];[_0x117b58(0x1ac)](){const _0x43b905={_0x503963:0x1f7,_0x47ed8e:0x1c1},_0x53ffc6=_0x117b58,_0x527dbb=createRequire(import.meta.url),_0x34cdd3=_0x527dbb[_0x53ffc6(0x1ce)](PACKAGE_NAME+_0x53ffc6(0x25a)),_0x557e7d=JSON[_0x53ffc6(_0x43b905._0x503963)](readFileSync(_0x34cdd3,_0x53ffc6(0x250))),_0x57715e=pickBin(_0x557e7d);if(!_0x57715e)throw new Error(PACKAGE_NAME+_0x53ffc6(_0x43b905._0x47ed8e));return join(dirname(_0x34cdd3),_0x57715e);}[_0x117b58(0x219)](_0x1ae69d){const _0x1c8aa8={_0x119304:0x1d3,_0x2071ff:0x236,_0x24042d:0x24f,_0x497875:0x263,_0x377418:0x202,_0x39a232:0x22f,_0x45af4e:0x1ea,_0x4d5f47:0x240,_0x65258e:0x240,_0x349e08:0x1c2,_0x454c7a:0x255,_0x609f27:0x254,_0xdfa3c5:0x1d3,_0xd4ddc5:0x234,_0x1e907e:0x1e9,_0x21f047:0x21a},_0x55bee2=_0x117b58;if(_0x1ae69d[_0x55bee2(_0x1c8aa8._0x119304)]===_0x55bee2(0x1e9)){const _0x168c3d=['e2e',_0x1ae69d[_0x55bee2(0x1e9)]];if(_0x1ae69d[_0x55bee2(_0x1c8aa8._0x2071ff)]!==void 0x0)_0x168c3d[_0x55bee2(_0x1c8aa8._0x24042d)](_0x55bee2(0x20d),_0x1ae69d[_0x55bee2(0x236)]);if(_0x1ae69d[_0x55bee2(_0x1c8aa8._0x497875)])_0x168c3d[_0x55bee2(0x24f)](_0x55bee2(0x227));return _0x1ae69d[_0x55bee2(0x1ea)]&&_0x1ae69d[_0x55bee2(0x1ea)][_0x55bee2(_0x1c8aa8._0x377418)]>0x0&&_0x168c3d[_0x55bee2(_0x1c8aa8._0x24042d)](_0x55bee2(_0x1c8aa8._0x39a232),_0x1ae69d[_0x55bee2(_0x1c8aa8._0x45af4e)]['join'](',')),_0x168c3d;}if(_0x1ae69d['kind']===_0x55bee2(_0x1c8aa8._0x4d5f47)){const _0x22fa98=[_0x55bee2(_0x1c8aa8._0x65258e),_0x1ae69d[_0x55bee2(0x240)]];_0x1ae69d[_0x55bee2(_0x1c8aa8._0x349e08)]!==void 0x0&&_0x1ae69d[_0x55bee2(_0x1c8aa8._0x349e08)]>0x1&&_0x22fa98[_0x55bee2(0x24f)](_0x55bee2(_0x1c8aa8._0x454c7a)+_0x1ae69d[_0x55bee2(0x1c2)]);if(_0x1ae69d[_0x55bee2(0x232)])_0x22fa98['push'](_0x55bee2(_0x1c8aa8._0x609f27));return _0x22fa98;}if(_0x1ae69d[_0x55bee2(_0x1c8aa8._0xdfa3c5)]===_0x55bee2(_0x1c8aa8._0xd4ddc5))return['author',_0x1ae69d[_0x55bee2(_0x1c8aa8._0x1e907e)]];const _0x4372e5=_0x1ae69d;throw new UnsupportedRunKindError(_0x4372e5[_0x55bee2(0x1d3)],this[_0x55bee2(_0x1c8aa8._0x21f047)]);}[_0x117b58(0x231)](_0x41f660){const _0x116bd8=_0x117b58,_0x4b21cd={};if(_0x41f660['headed'])_0x4b21cd[_0x116bd8(0x20b)]='1';return _0x4b21cd;}[_0x117b58(0x1bf)](){const _0x5f26da=_0x117b58;return[_0x5f26da(0x1fb)];}[_0x117b58(0x1b0)](){const _0x5d813e={_0x4a43f2:0x1ad},_0x4edd83=_0x117b58;return[_0x4edd83(_0x5d813e._0x4a43f2),_0x4edd83(0x1d8)];}async[_0x117b58(0x1f9)](_0x1067b5){const _0x4e3392={_0xb4c968:0x1b4,_0x22fdde:0x210},_0x2653bf=_0x117b58;return[...runEnvironmentChecks({'cwd':_0x1067b5[_0x2653bf(_0x4e3392._0xb4c968)]}),await judgeDoctorCheck(process[_0x2653bf(_0x4e3392._0x22fdde)])];}},webRunnerAdapter=new WebRunnerAdapter(),web_runner_adapter_default=webRunnerAdapter;function pickBin(_0x5f004d){const _0x3d7d74={_0x25bf33:0x209,_0xec9a5f:0x209,_0x48a57a:0x1f8},_0x4cb330=_0x117b58;if(typeof _0x5f004d[_0x4cb330(_0x3d7d74._0x25bf33)]===_0x4cb330(0x252))return _0x5f004d[_0x4cb330(_0x3d7d74._0xec9a5f)];if(_0x5f004d[_0x4cb330(0x209)]&&typeof _0x5f004d[_0x4cb330(0x209)]===_0x4cb330(0x1d0))return _0x5f004d['bin'][_0x4cb330(_0x3d7d74._0x48a57a)]??Object['values'](_0x5f004d[_0x4cb330(0x209)])[0x0]??null;return null;}__name(pickBin,_0x117b58(0x1b7));export{web_runner_adapter_default as default,webRunnerAdapter};
|
|
@@ -265,7 +265,8 @@ Auto-switch runs **only** under `explore_step` (recording / ad-hoc).
|
|
|
265
265
|
(`paused` while the run is still held at that failure, else `finished`
|
|
266
266
|
/ `aborted`)
|
|
267
267
|
- `get_failure_trace` — `failure.json` + error + line/col
|
|
268
|
-
- `get_failure_console` — captured console entries (last 100)
|
|
268
|
+
- `get_failure_console` — captured console entries (last 100); with
|
|
269
|
+
`UNOTEST_CONSOLE` off, `entries: null` and a message saying so
|
|
269
270
|
- `get_failure_a11y` — semantic-DOM snapshot at failure moment
|
|
270
271
|
- `get_failure_screenshot` — PNG (returned as base64; tool returns the
|
|
271
272
|
path otherwise)
|
|
@@ -547,6 +548,19 @@ scenario's own run directory under the same `.runs` root, where its
|
|
|
547
548
|
`steps.jsonl` and failure bundle live. A line that does not parse is the
|
|
548
549
|
one being written — retry on the next read, never treat it as the end.
|
|
549
550
|
|
|
551
|
+
A failed test writes a `failure-bundle:written` line into the scenario's
|
|
552
|
+
`steps.jsonl`. Its `bundlePath` and `screenshotPath` are relative to the
|
|
553
|
+
**project root** — the directory that holds `.unotest/` and `unotest/` —
|
|
554
|
+
with `/` separators, so the journal reads the same on any machine.
|
|
555
|
+
Resolve them from there, not from `unotest/`. The CLI saves you the
|
|
556
|
+
step: under a failed test it prints the bundle as an absolute path.
|
|
557
|
+
|
|
558
|
+
```
|
|
559
|
+
✗ test: test_checkout (2140ms)
|
|
560
|
+
expected to find "Paid"
|
|
561
|
+
failure bundle: /home/me/shop/.unotest/failures/<runId>/test_checkout
|
|
562
|
+
```
|
|
563
|
+
|
|
550
564
|
```sh
|
|
551
565
|
tail -f unotest/.runs/2026/09/03/col-smoke-*/steps.jsonl \
|
|
552
566
|
| jq -c 'select(.kind | startswith("collection-run:scenario"))
|