@unotest/web 0.48.0 → 0.49.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/write-e2e-test/SKILL.md +4 -0
- package/.claude/skills/write-e2e-test-ground/SKILL.md +4 -0
- package/CHANGELOG.md +95 -3
- package/README.md +2 -1
- package/dist/config/schema.d.ts +33 -12
- package/dist/config/schema.js +1 -1
- package/dist/driver/index.js +1 -1
- package/dist/dsl/index.d.ts +18 -1
- package/dist/dsl/index.js +1 -1
- package/dist/dsl/web-dsl-language-service.d.ts +1 -1
- package/dist/dsl/web-dsl-language-service.js +1 -1
- package/dist/{linter-BWSAYBQy.d.ts → linter-RrjB1n9R.d.ts} +5 -0
- package/dist/mcp/server.js +1 -1
- package/dist/runner/cli.d.ts +1 -1
- package/dist/runner/cli.js +1 -1
- package/dist/runner/init/chrome-probe.js +1 -1
- package/dist/runner/init.d.ts +6 -1
- package/dist/runner/init.js +1 -1
- package/dist/runner/install-chromium.js +1 -1
- package/dist/runner/prepare-fix.js +1 -1
- package/dist/runner/scaffold-workspace.js +1 -1
- package/dist/runner/serve-fixture.js +1 -1
- package/dist/runner/web-runner-adapter.js +1 -1
- package/guides/dsl-reference.md +55 -17
- package/package.json +8 -8
- package/src/mcp/prompts/agent-test-author.md +10 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x18e105=_0x5d1b;(function(_0x3ff51b,_0x1ded6a){const _0x7c066f={_0x4d8137:0xb2,_0x5d5f92:0xae,_0x1678f0:0xc3,_0x546ca6:0xb5,_0x3f7ea8:0xb1,_0x2508c0:0xbd},_0x132b99=_0x5d1b,_0x58ccaa=_0x3ff51b();while(!![]){try{const _0x451a1d=-parseInt(_0x132b99(0xbb))/0x1+-parseInt(_0x132b99(_0x7c066f._0x4d8137))/0x2*(-parseInt(_0x132b99(_0x7c066f._0x5d5f92))/0x3)+parseInt(_0x132b99(0xb0))/0x4+parseInt(_0x132b99(0xad))/0x5*(-parseInt(_0x132b99(_0x7c066f._0x1678f0))/0x6)+parseInt(_0x132b99(_0x7c066f._0x546ca6))/0x7+parseInt(_0x132b99(_0x7c066f._0x3f7ea8))/0x8*(parseInt(_0x132b99(0xa9))/0x9)+parseInt(_0x132b99(_0x7c066f._0x2508c0))/0xa;if(_0x451a1d===_0x1ded6a)break;else _0x58ccaa['push'](_0x58ccaa['shift']());}catch(_0xd7b955){_0x58ccaa['push'](_0x58ccaa['shift']());}}}(_0x4111,0x48b93));function _0x5d1b(_0x354528,_0x474335){_0x354528=_0x354528-0xa8;const _0x411178=_0x4111();let _0x5d1bd4=_0x411178[_0x354528];if(_0x5d1b['UwJZOz']===undefined){var _0x4ffe01=function(_0x3a29e9){const _0x41cb92='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x43495c='',_0x594377='';for(let _0x282d90=0x0,_0x172f75,_0x48a692,_0x45dda6=0x0;_0x48a692=_0x3a29e9['charAt'](_0x45dda6++);~_0x48a692&&(_0x172f75=_0x282d90%0x4?_0x172f75*0x40+_0x48a692:_0x48a692,_0x282d90++%0x4)?_0x43495c+=String['fromCharCode'](0xff&_0x172f75>>(-0x2*_0x282d90&0x6)):0x0){_0x48a692=_0x41cb92['indexOf'](_0x48a692);}for(let _0x7c7594=0x0,_0x2ed08c=_0x43495c['length'];_0x7c7594<_0x2ed08c;_0x7c7594++){_0x594377+='%'+('00'+_0x43495c['charCodeAt'](_0x7c7594)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x594377);};_0x5d1b['gxEVNT']=_0x4ffe01,_0x5d1b['mtiYNu']={},_0x5d1b['UwJZOz']=!![];}const _0x172313=_0x411178[0x0],_0x296f71=_0x354528+_0x172313,_0x4e076e=_0x5d1b['mtiYNu'][_0x296f71];return!_0x4e076e?(_0x5d1bd4=_0x5d1b['gxEVNT'](_0x5d1bd4),_0x5d1b['mtiYNu'][_0x296f71]=_0x5d1bd4):_0x5d1bd4=_0x4e076e,_0x5d1bd4;}var __defProp=Object[_0x18e105(0xbe)],__name=(_0x43495c,_0x594377)=>__defProp(_0x43495c,_0x18e105(0xbf),{'value':_0x594377,'configurable':!![]});import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x282d90={}){const _0xcee617={_0x128f9e:0xc1,_0x3a4c65:0xc2,_0xa42344:0xc0,_0xa7a51a:0xc5,_0x512a0f:0xc5},_0xe3a7c3={_0x138d6d:0xa8,_0x4ca415:0xc4,_0x1fcb4a:0xac,_0x55aa97:0xba,_0x4a87ae:0xab},_0x110e77=_0x18e105,_0x172f75=_0x282d90[_0x110e77(_0xcee617._0x128f9e)]??(_0x1d15ad=>process['stdout'][_0x110e77(0xbc)](_0x1d15ad)),_0x48a692=createRequire(import.meta.url),_0x45dda6=_0x48a692[_0x110e77(_0xcee617._0x3a4c65)](_0x110e77(_0xcee617._0xa42344)),_0x7c7594=_0x48a692(_0x45dda6),_0x2ed08c=typeof _0x7c7594[_0x110e77(_0xcee617._0xa7a51a)]==='string'?_0x7c7594[_0x110e77(_0xcee617._0x512a0f)]:_0x7c7594['bin']?.[_0x110e77(0xaf)];if(!_0x2ed08c)throw new Error('playwright/package.json\x20has\x20no\x20usable\x20\x22bin\x22\x20field');const _0x3a04a9=resolve(dirname(_0x45dda6),_0x2ed08c);return new Promise((_0x301cde,_0x5ed3d2)=>{const _0x1b9aae=_0x110e77,_0x117961=spawn(process[_0x1b9aae(0xaa)],[_0x3a04a9,_0x1b9aae(0xb7),_0x1b9aae(0xb4)],{'stdio':['inherit',_0x1b9aae(_0xe3a7c3._0x138d6d),'pipe']});_0x117961[_0x1b9aae(_0xe3a7c3._0x4ca415)]?.['on'](_0x1b9aae(_0xe3a7c3._0x1fcb4a),_0x284ca9=>_0x172f75(_0x284ca9[_0x1b9aae(0xb3)]())),_0x117961['stderr']?.['on'](_0x1b9aae(_0xe3a7c3._0x1fcb4a),_0x1fc947=>_0x172f75(_0x1fc947[_0x1b9aae(0xb3)]())),_0x117961['on'](_0x1b9aae(_0xe3a7c3._0x55aa97),_0x5ed3d2),_0x117961['on'](_0x1b9aae(_0xe3a7c3._0x4a87ae),_0x2ac46f=>{if(_0x2ac46f===0x0)_0x301cde();else _0x5ed3d2(new Error('chromium\x20download\x20exited\x20with\x20code\x20'+_0x2ac46f));});});}__name(installChromium,_0x18e105(0xb6));async function runInstallChromiumCli(){try{return await installChromium(),0x0;}catch(_0x14b33d){return process['stderr']['write']('✗\x20install-chromium:\x20'+(_0x14b33d instanceof Error?_0x14b33d['message']:String(_0x14b33d))+'\x0a'),0x1;}}__name(runInstallChromiumCli,_0x18e105(0xb9));var invokedDirectly=process[_0x18e105(0xb8)][0x1]&&fileURLToPath(import.meta.url)===process[_0x18e105(0xb8)][0x1];invokedDirectly&&runInstallChromiumCli()['then'](_0x13e436=>process[_0x18e105(0xab)](_0x13e436));export{installChromium,runInstallChromiumCli};function _0x4111(){const _0x1b8b23=['zxHLy1bHDgG','zxHPDa','zgf0yq','mtu2nty3mgjnDKL3Aa','nNjSAMDuuq','CgXHExDYAwDODa','nJK0mJK2ufzwDNPA','nZy0ogTMtwLZva','mJCWnJqYzKLJAwrU','Dg9tDhjPBMC','y2HYB21PDw0','mZuWmdC3n0j6yLfssa','Aw5ZDgfSBenOCM9TAxvT','Aw5ZDgfSBa','yxjNDG','CNvUsw5ZDgfSBenOCM9TAxvTq2XP','zxjYB3i','ndy0nZi1Euf2BuPK','D3jPDgu','ntq5mJCWy3vUuffg','zgvMAw5LuhjVCgvYDhK','BMfTzq','CgXHExDYAwDODc9WywnRywDLlMPZB24','C3rKB3v0v3jPDgu','CMvZB2X2zq','nKDPuKn4AG','C3rKB3v0','yMLU','CgLWzq','nZiWshLiDe9V'];_0x4111=function(){return _0x1b8b23;};return _0x4111();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x1f278b=_0x5912;(function(_0x3d5f68,_0x1c634b){const _0x31c2d8={_0x1cafc5:0x9d,_0x530238:0x81,_0x3073f0:0x75},_0x1aed3e=_0x5912,_0x37791d=_0x3d5f68();while(!![]){try{const _0xcbaf8a=-parseInt(_0x1aed3e(0xe2))/0x1+parseInt(_0x1aed3e(_0x31c2d8._0x1cafc5))/0x2+parseInt(_0x1aed3e(_0x31c2d8._0x530238))/0x3*(-parseInt(_0x1aed3e(_0x31c2d8._0x3073f0))/0x4)+-parseInt(_0x1aed3e(0xd4))/0x5+-parseInt(_0x1aed3e(0xa5))/0x6*(parseInt(_0x1aed3e(0xdb))/0x7)+-parseInt(_0x1aed3e(0x6c))/0x8+-parseInt(_0x1aed3e(0x71))/0x9*(-parseInt(_0x1aed3e(0xb0))/0xa);if(_0xcbaf8a===_0x1c634b)break;else _0x37791d['push'](_0x37791d['shift']());}catch(_0x56e1fe){_0x37791d['push'](_0x37791d['shift']());}}}(_0x4e42,0x80793));var __defProp=Object[_0x1f278b(0x90)],__name=(_0x5830ea,_0x2b78e6)=>__defProp(_0x5830ea,'name',{'value':_0x2b78e6,'configurable':!![]});import{writeFileSync as _0x37f6f2}from'fs';function _0x5912(_0x275f53,_0x2d7487){_0x275f53=_0x275f53-0x68;const _0x4e4204=_0x4e42();let _0x5912b3=_0x4e4204[_0x275f53];if(_0x5912['rRycnV']===undefined){var _0x5ce6b3=function(_0x5d0303){const _0x517ce5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37f6f2='',_0x445b07='';for(let _0x4580e2=0x0,_0x5c5060,_0x5830ea,_0x2b78e6=0x0;_0x5830ea=_0x5d0303['charAt'](_0x2b78e6++);~_0x5830ea&&(_0x5c5060=_0x4580e2%0x4?_0x5c5060*0x40+_0x5830ea:_0x5830ea,_0x4580e2++%0x4)?_0x37f6f2+=String['fromCharCode'](0xff&_0x5c5060>>(-0x2*_0x4580e2&0x6)):0x0){_0x5830ea=_0x517ce5['indexOf'](_0x5830ea);}for(let _0x18fe5b=0x0,_0xc2760b=_0x37f6f2['length'];_0x18fe5b<_0xc2760b;_0x18fe5b++){_0x445b07+='%'+('00'+_0x37f6f2['charCodeAt'](_0x18fe5b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x445b07);};_0x5912['LdniUI']=_0x5ce6b3,_0x5912['QpWsoY']={},_0x5912['rRycnV']=!![];}const _0x352270=_0x4e4204[0x0],_0x46eff9=_0x275f53+_0x352270,_0x48e93a=_0x5912['QpWsoY'][_0x46eff9];return!_0x48e93a?(_0x5912b3=_0x5912['LdniUI'](_0x5912b3),_0x5912['QpWsoY'][_0x46eff9]=_0x5912b3):_0x5912b3=_0x48e93a,_0x5912b3;}import{join as _0x445b07}from'path';function _0x4e42(){const _0x310014=['y2HHBMDLlwfZC2vYDgLVBG','y2XHC3nPzNK','mJi2nduYmZntwffhsgK','C3rKB3v0','zxjYB3i','y2fWDhvYzwrbDa','mtG0nefJzu92ra','zML4lxbYB21WDc5Tza','cI0GkIPfCNjVCIOQoIbG','iIaOBg9VA2vKigLUia','AxneAxjLy3rVCNK','Bg93','BMfTzq','zMfPBhvYzxnsB290','yaOTicOQu3rLCcbPBMrLEcOQoIa','BwfW','y29UzMLKzw5Jzq','Dg9mB3DLCKnHC2u','nJKZqM5sufbN','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','y29S','Dg9vChbLCKnHC2u','BwvZC2fNzq','zMLUAxnOzwq','y3DK','C291CMnLCW','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','AgLNAa','DhjHy2u','CMv3CML0zs1ZzwXLy3rVCG','DMfSDwvZ','DgvZDezU','zgvMAw5LuhjVCgvYDhK','ycbPBIbG','DxjS','C25HChnOB3q','C2nYzwvUC2HVDfbHDgG','BgLUzq','C3rHy2S','DMLKzw9qyxrO','AgfYlMPZB24','C3rKzxjY','AM9PBG','CNvUu3rHDgu','y29UC29SzuXPBwL0','odi4nduWsLvIAK9s','vgLTzw91DevYCM9Y','DgLTzxn0yw1W','yNvUzgXLrgLY','rxjYB3i','D3jPDgu','CgfYC2u','vvjmoIa','ntC4ndzbsxvxBK0','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','C2nLBMfYAw9qyxrO','zMfPBhvYzs5QC29U','Dw5RBM93BG','C25HChnOB3qUANnVBG','zw52','B3v0','zgvMyxvSDezHAwX1CMvZuM9VDa','DxrMoa','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','mtbqD05vvxe','C3bSAxq','kqOk','icb+','yxjNDG','CMvHzezHAwX1CMvcDw5KBgu','ywrKlxDHAxrMB3i','lcbJB2WG','ihrLC3qOCYKGkeqTmJuPcGO','Dgv4Da','CMvZB2X2zuj1BMrSzurPCG','cMbGyaO','BgLZDezHAwX1CMvZ','icaGicaG','C2nYzwvUC2HVDc5WBMC','CNvUswq','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','C2v0','iYmJifn0ywnRcMbGyaO','BMv0D29YAW','Bg9JywXLq29TCgfYzq','ChjLCgfYzs1MAxG6ig5VihrLC3rjzcbWCM92AwrLzcbHBMqGBM8GzMfPBgLUzYb0zxn0CYbMB3vUzc4k','ChjLCgfYzs1MAxG6ig5VigzHAwX1CMuGyNvUzgXLCYbMB3vUzcb1BMrLCIaUDw5VDgvZDc9MywLSDxjLCY8Uifj1BIbHigzHAwXPBMCGDgvZDcbMAxjZDdSGDgHLigj1BMrSzsbPCYb3CML0DgvUigf1Dg9TyxrPy2fSBhKUcG','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','cK5LEhq6ihbHC3rLigvHy2GGzML4lxbYB21WDc5TzcbPBNrVihLVDxiGteXnignSAwvUDcaOq2XHDwrLienVzguGlWPdDxjZB3iGlYbLDgmUks4GvgHLieXmtsbYzxr1CM5ZigeGDw5PzMLLzcbKAwzMoYbYzxzPzxCGAxqGyw5KigfWCgX5cM1HBNvHBgX5lIbxzsbUzxzLCIbHDxrVlwfWCgX5icHelti1ks4k','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','xYHUBYbZzw1HBNrPyY1KB20GC25HChnOB3qGy2fWDhvYzwqGzM9YihrOAxmGzMfPBhvYzsLF','AgfYugf0Aa','yNvPBgrqCM9TChrnyxjRzg93BG','CNvUuhjLCgfYzuzPEa','cKnHChr1CMvKoIa','ChjLCgfYzs1MAxG6ignVBxbVC2LUzYbMAxGGChjVBxb0CYbMB3iG','C29YDa','BwvKAxvT','BgvUz3rO','C3vNz2vZDgvKqwn0Aw9U','mZqXmtGZnvbYvgPYBa','C2nYzwvUC2HVDevYCM9Y','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','icbJB25MAwrLBMnLpq','BMv0D29YAY5QC29U','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','ChvZAa','mJe3AxzJC09J','yxbWCM94vg9Rzw5Z','AgfZ','ChjVBxb0twfYA2rVD24','C2XPy2u','C3rHCNrZv2L0Aa','zMLSDgvY','odC3mZK5ywzusw5H','y2vPBa','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','DgvZDa','zxHPDa','icdINjmG','C2nYzwvUC2HVDc1LCNjVCI50Ehq','tg9JyxrVCKvYCM9Y','mZuXmJa1nMv3uunvzG','y29TCg9ZzuzPEfbYB21WDa','qxnZzxj0Aw9UrxjYB3i'];_0x4e42=function(){return _0x310014;};return _0x4e42();}import{fileURLToPath}from'url';import{readFileSync as _0x4580e2,existsSync as _0x5c5060}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';import{artifactsRootFrom,FAILURES_DIR_SEGMENTS,failuresRootFrom}from'@unotest/protocol';function readFailureBundle(_0x18fe5b){const _0x9c9fad={_0x12eac5:0xae,_0x2eb6d8:0xaa,_0x22c7ad:0xa3,_0x421767:0xae,_0x2d50a8:0x93,_0x50cb47:0xbe,_0x175af5:0x94,_0x1d7302:0x98,_0x412054:0xcb,_0x810e56:0x97},_0x4d6240=_0x1f278b;if(!existsSync(_0x18fe5b))return null;const _0xc2760b=join(_0x18fe5b,_0x4d6240(0xa8));if(!existsSync(_0xc2760b))return null;const _0xd2dc8c=JSON[_0x4d6240(0xa3)](readFileSync(_0xc2760b,'utf8')),_0x58c060=join(_0x18fe5b,'console.json'),_0x8aefe4=existsSync(_0x58c060)?JSON[_0x4d6240(0xa3)](readFileSync(_0x58c060,_0x4d6240(_0x9c9fad._0x12eac5))):[],_0x1e8381=join(_0x18fe5b,_0x4d6240(_0x9c9fad._0x2eb6d8)),_0x5bcfd9=existsSync(_0x1e8381)?JSON['parse'](readFileSync(_0x1e8381,'utf8')):void 0x0,_0x496a60={'trace':_0xd2dc8c,'console':_0x8aefe4},_0x930d17=join(_0x18fe5b,_0x4d6240(0xd8));existsSync(_0x930d17)&&(_0x496a60[_0x4d6240(0xc3)]=JSON[_0x4d6240(_0x9c9fad._0x22c7ad)](readFileSync(_0x930d17,_0x4d6240(_0x9c9fad._0x421767))));if(_0x5bcfd9!==void 0x0)_0x496a60[_0x4d6240(_0x9c9fad._0x2d50a8)]=_0x5bcfd9;const _0x4d2039=join(_0x18fe5b,_0x4d6240(_0x9c9fad._0x50cb47));if(existsSync(_0x4d2039))_0x496a60[_0x4d6240(_0x9c9fad._0x175af5)]=_0x4d2039;else{const _0x230c63=join(_0x18fe5b,_0x4d6240(0x6a));existsSync(_0x230c63)&&(_0x496a60[_0x4d6240(0xd5)]=readFileSync(_0x230c63,'utf8'));}const _0x3367e9=join(_0x18fe5b,_0x4d6240(_0x9c9fad._0x1d7302));if(existsSync(_0x3367e9))_0x496a60[_0x4d6240(_0x9c9fad._0x412054)]=_0x3367e9;const _0x2c3e56=join(_0x18fe5b,'video.webm');if(existsSync(_0x2c3e56))_0x496a60[_0x4d6240(_0x9c9fad._0x810e56)]=_0x2c3e56;return _0x496a60;}__name(readFailureBundle,_0x1f278b(0xb5));function listFailures(_0x134e11){const _0x2545fe={_0x3d1ba1:0x79,_0x318f6d:0xae,_0x50a3b2:0x8f,_0x297f0c:0x9b},_0x1fecb1=_0x1f278b;if(!existsSync(_0x134e11))return[];const _0x4a0d8f=[];for(const _0x5c14be of readdirSync(_0x134e11)){const _0x74e98a=join(_0x134e11,_0x5c14be);if(!statSync(_0x74e98a)[_0x1fecb1(_0x2545fe._0x3d1ba1)]())continue;for(const _0x42cbc7 of readdirSync(_0x74e98a)){const _0x1abf63=join(_0x74e98a,_0x42cbc7);if(!statSync(_0x1abf63)[_0x1fecb1(0x79)]())continue;const _0x37a43d=join(_0x1abf63,_0x1fecb1(0xa8));if(!existsSync(_0x37a43d))continue;try{const _0x546849=JSON['parse'](readFileSync(_0x37a43d,_0x1fecb1(_0x2545fe._0x318f6d)));_0x4a0d8f[_0x1fecb1(0xda)]({'runId':_0x5c14be,'testFn':_0x546849[_0x1fecb1(_0x2545fe._0x50a3b2)],'scenarioPath':_0x546849[_0x1fecb1(0xa7)],'dir':_0x1abf63,'timestamp':_0x546849[_0x1fecb1(0x9f)],'runState':_0x546849[_0x1fecb1(_0x2545fe._0x297f0c)]??_0x1fecb1(0x87)});}catch{}}}return _0x4a0d8f[_0x1fecb1(0xd0)]((_0x238ef6,_0x34f087)=>_0x34f087[_0x1fecb1(0x9f)][_0x1fecb1(0xc4)](_0x238ef6[_0x1fecb1(0x9f)])),_0x4a0d8f;}__name(listFailures,_0x1f278b(0xbc));function defaultFailuresRoot(_0x4a4263=artifactsRootFrom(process[_0x1f278b(0xab)],process[_0x1f278b(0x88)]()),_0x1dcf2e=process['env']){return failuresRootFrom(_0x1dcf2e,join(_0x4a4263,...FAILURES_DIR_SEGMENTS));}__name(defaultFailuresRoot,_0x1f278b(0xad));function resolveBundleDir(_0x3849eb,_0x26e67f){if(existsSync(_0x3849eb)&&statSync(_0x3849eb)['isDirectory']())return _0x3849eb;return join(_0x26e67f,_0x3849eb);}__name(resolveBundleDir,_0x1f278b(0xba));function composeFixPrompt(_0x11c3fb,_0x2a63f6={}){const _0xf9d5d1={_0x34068f:0x83,_0x3fc1d9:0x88,_0x38c98c:0xa7,_0x52b2f5:0x8c,_0x1a71e1:0xdf,_0x501fca:0xe3,_0x5a5c68:0xa7,_0x2121c1:0x93},_0x1dd6b8=_0x1f278b,_0x41f793=_0x2a63f6[_0x1dd6b8(0x7c)]??defaultFailuresRoot(),_0x7628f6=resolveBundleDir(_0x11c3fb,_0x41f793),_0x288f63=readFailureBundle(_0x7628f6);if(!_0x288f63)throw new Error(_0x1dd6b8(_0xf9d5d1._0x34068f)+_0x11c3fb+_0x1dd6b8(0x78)+_0x7628f6+')');const _0xbe82cc=_0x2a63f6[_0x1dd6b8(0x88)]??process[_0x1dd6b8(_0xf9d5d1._0x3fc1d9)](),_0x5f4a76=_0x5c5060(_0x288f63[_0x1dd6b8(0x8c)][_0x1dd6b8(_0xf9d5d1._0x38c98c)])?_0x4580e2(_0x288f63[_0x1dd6b8(_0xf9d5d1._0x52b2f5)][_0x1dd6b8(0xa7)],'utf8'):'<scenario\x20file\x20no\x20longer\x20on\x20disk>',_0x2d6147=_0x2a63f6[_0x1dd6b8(0x9c)]??0x19,_0x15a05b=_0x288f63['console'][_0x1dd6b8(_0xf9d5d1._0x1a71e1)](-_0x2d6147),{suggestedAction:_0x101d1a,confidence:_0xbb968f}=classify(_0x288f63),_0x1a89cb=buildPromptMarkdown({'bundle':_0x288f63,'scenarioSource':_0x5f4a76,'scenarioRelative':relative(_0xbe82cc,_0x288f63[_0x1dd6b8(0x8c)][_0x1dd6b8(0xa7)]),'consoleTail':_0x15a05b,'suggestedAction':_0x101d1a,'confidence':_0xbb968f}),_0x20953d=Math[_0x1dd6b8(_0xf9d5d1._0x501fca)](_0x1a89cb['length']/0x4);return{'promptMarkdown':_0x1a89cb,'suggestedAction':_0x101d1a,'confidence':_0xbb968f,'sources':{'bundleDir':_0x7628f6,'scenarioPath':_0x288f63[_0x1dd6b8(_0xf9d5d1._0x52b2f5)][_0x1dd6b8(_0xf9d5d1._0x5a5c68)],'consoleEntries':_0x288f63['console'][_0x1dd6b8(0xd2)],'hasSnapshot':!!_0x288f63[_0x1dd6b8(_0xf9d5d1._0x2121c1)]},'approxTokens':_0x20953d};}__name(composeFixPrompt,_0x1f278b(0x6d));function classify(_0xef7ccf){const _0x578fb2={_0x1f2801:0x8c,_0x5c417f:0x86,_0x2f16a1:0x8c,_0x3cc2a1:0x7b,_0x2c2c15:0x7a,_0x3fc2a0:0x6b,_0x3f251d:0xe5,_0x4185b6:0x8d,_0x13ee2f:0xd1,_0x33b467:0xe5,_0x1d343e:0x6e,_0x599de1:0x8b},_0x5ac4fb=_0x1f278b,_0x45d69a=_0xef7ccf[_0x5ac4fb(_0x578fb2._0x1f2801)]['error'][_0x5ac4fb(_0x578fb2._0x5c417f)][_0x5ac4fb(0x80)](),_0x2020db=_0xef7ccf[_0x5ac4fb(_0x578fb2._0x2f16a1)]['error'][_0x5ac4fb(_0x578fb2._0x3cc2a1)]??'';let _0x2b1176=_0x5ac4fb(0xa9),_0x573611=_0x5ac4fb(_0x578fb2._0x2c2c15);if(_0x2020db===_0x5ac4fb(_0x578fb2._0x3fc2a0)||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i[_0x5ac4fb(_0x578fb2._0x3f251d)](_0x45d69a))_0x2b1176=_0x5ac4fb(_0x578fb2._0x4185b6),_0x573611=_0x2020db===_0x5ac4fb(0x6b)?_0x5ac4fb(0x8b):_0x5ac4fb(_0x578fb2._0x13ee2f);else{if(_0x2020db===_0x5ac4fb(0x9e)||/timeout|waiting for/i[_0x5ac4fb(_0x578fb2._0x3f251d)](_0x45d69a))_0x2b1176=_0x5ac4fb(0xb6),_0x573611=_0x2020db==='TimeoutError'?'high':_0x5ac4fb(_0x578fb2._0x13ee2f);else(_0x2020db===_0x5ac4fb(0x6e)||/asserttext|assertvisible|expected.*got/i[_0x5ac4fb(_0x578fb2._0x33b467)](_0x45d69a))&&(_0x2b1176=_0x5ac4fb(0x6f),_0x573611=_0x2020db===_0x5ac4fb(_0x578fb2._0x1d343e)?_0x5ac4fb(_0x578fb2._0x599de1):_0x5ac4fb(0xd1));}return{'suggestedAction':_0x2b1176,'confidence':_0x573611};}__name(classify,_0x1f278b(0x70));function buildPromptMarkdown(_0x244dd5){const _0xae048d={_0x4c9415:0xd2,_0x187f9b:0xa4,_0x2064d3:0x93,_0x543b63:0xce,_0x54008b:0xd9,_0x5b2780:0x91,_0x209054:0x7d,_0x51c0c6:0x8c,_0x5ddd93:0xb7,_0x2ce8ee:0x86,_0x4f6b7e:0xc7,_0x40f6a0:0xb2,_0x1875d0:0x96,_0x1847ea:0x73,_0x30b1b4:0xc9,_0x3f1e5c:0xd6,_0x2e807e:0xe4},_0x36d91c=_0x1f278b,{bundle:_0x55c78a,scenarioSource:_0x18b12f,scenarioRelative:_0x24fab3,consoleTail:_0x5be568,suggestedAction:_0x9ed048,confidence:_0x1d9f64}=_0x244dd5,_0x48216a=_0x18b12f[_0x36d91c(0xb1)]('\x0a')[_0x36d91c(0x7e)]((_0x347aad,_0x2b19a9)=>String(_0x2b19a9+0x1)['padStart'](0x3,'\x20')+'\x20\x20'+_0x347aad)[_0x36d91c(0x9a)]('\x0a'),_0x219e49=_0x5be568[_0x36d91c(_0xae048d._0x4c9415)]===0x0?_0x36d91c(0xc0):_0x5be568[_0x36d91c(0x7e)](_0x55f3a0=>'['+_0x55f3a0[_0x36d91c(0x9f)]+']\x20'+_0x55f3a0['level'][_0x36d91c(0x85)]()+':\x20'+_0x55f3a0[_0x36d91c(0xb9)])['join']('\x0a'),_0x4d55ba=_0x55c78a['snapshot']?_0x36d91c(_0xae048d._0x187f9b)+_0x55c78a[_0x36d91c(_0xae048d._0x2064d3)][_0x36d91c(0x92)]+_0x36d91c(_0xae048d._0x543b63)+_0x55c78a['snapshot'][_0x36d91c(0x74)]+_0x36d91c(0xa6):_0x36d91c(0xca);return _0x36d91c(_0xae048d._0x54008b)+_0x55c78a['trace']['testFn']+_0x36d91c(_0xae048d._0x5b2780)+_0x24fab3+_0x36d91c(_0xae048d._0x209054)+(_0x55c78a[_0x36d91c(0x8c)]['stepIndex']??'?')+_0x36d91c(0x8a)+_0x55c78a[_0x36d91c(_0xae048d._0x51c0c6)][_0x36d91c(0x95)]+_0x36d91c(_0xae048d._0x5ddd93)+_0x55c78a[_0x36d91c(0x8c)][_0x36d91c(0x84)]+_0x36d91c(0x77)+(_0x55c78a[_0x36d91c(_0xae048d._0x51c0c6)][_0x36d91c(0x73)][_0x36d91c(0x7b)]??_0x36d91c(0xa1))+'`\x20—\x20'+_0x55c78a[_0x36d91c(_0xae048d._0x51c0c6)]['error'][_0x36d91c(_0xae048d._0x2ce8ee)]+_0x36d91c(_0xae048d._0x4f6b7e)+_0x9ed048+'`\x20(confidence:\x20'+_0x1d9f64+_0x36d91c(_0xae048d._0x40f6a0)+(_0x55c78a[_0x36d91c(0x8c)][_0x36d91c(0x73)][_0x36d91c(_0xae048d._0x1875d0)]?_0x36d91c(0xc2)+_0x55c78a[_0x36d91c(0x8c)][_0x36d91c(_0xae048d._0x1847ea)]['stack']+_0x36d91c(0xbb):'')+_0x36d91c(_0xae048d._0x30b1b4)+_0x48216a+_0x36d91c(0x82)+_0x219e49+_0x36d91c(_0xae048d._0x3f1e5c)+_0x4d55ba+_0x36d91c(_0xae048d._0x2e807e);}__name(buildPromptMarkdown,_0x1f278b(0xcc));function runPrepareFix(_0x67fd27,_0x5231d5={}){const _0x2209f0={_0x3cf883:0xac,_0x193769:0x72,_0x50b55c:0x99,_0x48b697:0xe1,_0x19e3be:0xd2,_0x18a36a:0xa2,_0x4a33e9:0xd2,_0x48af04:0xdd,_0x5668ac:0xc1,_0x1ef08a:0x8f,_0x4a865f:0xc5,_0x54bf5d:0xcf,_0x340570:0x89,_0x46a27b:0xde,_0x57a2bb:0xa2,_0x2ee831:0xbd,_0x516e27:0xa2,_0x56853e:0xd3,_0x2061ed:0x7f},_0x4d0313=_0x1f278b,_0x28f3cf=_0x5231d5[_0x4d0313(_0x2209f0._0x3cf883)]??process[_0x4d0313(_0x2209f0._0x193769)],_0x3f2048=_0x5231d5['err']??process[_0x4d0313(_0x2209f0._0x50b55c)],_0x4b64d0=_0x5231d5[_0x4d0313(0x88)]??process[_0x4d0313(0x88)](),_0x23a48a=_0x67fd27['includes']('--failing');let _0x425b00=_0x67fd27[_0x4d0313(_0x2209f0._0x48b697)](_0x5e3fba=>!_0x5e3fba[_0x4d0313(0xe0)]('-'));if(_0x23a48a||_0x425b00[_0x4d0313(_0x2209f0._0x19e3be)]===0x0){const _0x3e5789=listFailures(defaultFailuresRoot(_0x4b64d0));if(_0x3e5789[_0x4d0313(0xd2)]===0x0)return _0x3f2048[_0x4d0313(_0x2209f0._0x18a36a)](_0x4d0313(0xc6)),0x1;if(_0x425b00[_0x4d0313(_0x2209f0._0x4a33e9)]===0x0){const _0x330ab8=new Map();for(const _0x1186ea of _0x3e5789){if(!_0x330ab8[_0x4d0313(_0x2209f0._0x48af04)](_0x1186ea[_0x4d0313(0x8f)]))_0x330ab8[_0x4d0313(_0x2209f0._0x5668ac)](_0x1186ea[_0x4d0313(_0x2209f0._0x1ef08a)],_0x1186ea);}_0x425b00=[..._0x330ab8[_0x4d0313(0x8e)]()][_0x4d0313(0x7e)](_0x2e3d99=>_0x2e3d99[_0x4d0313(0xbf)]+'/'+_0x2e3d99[_0x4d0313(0x8f)]);}}if(_0x425b00['length']===0x0)return _0x3f2048[_0x4d0313(0xa2)](_0x4d0313(_0x2209f0._0x4a865f)),0x1;_0x28f3cf[_0x4d0313(_0x2209f0._0x18a36a)](_0x4d0313(_0x2209f0._0x54bf5d)+_0x425b00[_0x4d0313(_0x2209f0._0x4a33e9)]+_0x4d0313(0xb8));const _0x5549f4=defaultFailuresRoot(_0x4b64d0);for(const _0x15f95c of _0x425b00){try{const _0x146715=composeFixPrompt(_0x15f95c,{'cwd':_0x4b64d0,'failuresRoot':_0x5549f4}),_0x1b8784=_0x445b07(_0x146715[_0x4d0313(_0x2209f0._0x340570)][_0x4d0313(0xa0)],_0x4d0313(0x76));_0x37f6f2(_0x1b8784,_0x146715[_0x4d0313(_0x2209f0._0x46a27b)]),_0x28f3cf[_0x4d0313(_0x2209f0._0x57a2bb)](_0x4d0313(0x69)+_0x15f95c+'\x0a'),_0x28f3cf[_0x4d0313(_0x2209f0._0x57a2bb)](_0x4d0313(_0x2209f0._0x2ee831)+_0x1b8784+'\x0a'),_0x28f3cf[_0x4d0313(_0x2209f0._0x516e27)](_0x4d0313(0xaf)+_0x146715[_0x4d0313(_0x2209f0._0x56853e)]+_0x4d0313(0xd7)+_0x146715[_0x4d0313(_0x2209f0._0x2061ed)]+_0x4d0313(0xb3)+_0x146715[_0x4d0313(0xdc)]+'t\x0a');}catch(_0x18e5ff){_0x3f2048[_0x4d0313(0xa2)]('\x20\x20✗\x20'+_0x15f95c+':\x20'+(_0x18e5ff instanceof Error?_0x18e5ff[_0x4d0313(0x86)]:String(_0x18e5ff))+'\x0a');}}return _0x28f3cf[_0x4d0313(_0x2209f0._0x18a36a)](_0x4d0313(0xc8)),0x0;}__name(runPrepareFix,_0x1f278b(0xcd));var invokedDirectly=process['argv'][0x1]&&fileURLToPath(import.meta.url)===process['argv'][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x1f278b(0xb4)]['slice'](0x2));process[_0x1f278b(0x68)](code);}export{runPrepareFix};
|
|
1
|
+
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 +1 @@
|
|
|
1
|
-
const _0x400da5=_0x5e04;(function(_0x670533,_0x210aee){const _0x519e3b={_0x497d7:0x1d5,_0x5a9509:0x1e4,_0x13eb5c:0x1ce,_0x377ea5:0x1c1,_0x4567bd:0x1c5,_0x307e1d:0x1dc,_0x102250:0x1d9,_0x2967a5:0x1cf},_0xb47d4e=_0x5e04,_0x1c4c30=_0x670533();while(!![]){try{const _0x16a7f9=-parseInt(_0xb47d4e(_0x519e3b._0x497d7))/0x1*(-parseInt(_0xb47d4e(0x1d0))/0x2)+parseInt(_0xb47d4e(_0x519e3b._0x5a9509))/0x3*(parseInt(_0xb47d4e(_0x519e3b._0x13eb5c))/0x4)+parseInt(_0xb47d4e(0x1cb))/0x5*(-parseInt(_0xb47d4e(_0x519e3b._0x377ea5))/0x6)+parseInt(_0xb47d4e(0x1d4))/0x7+parseInt(_0xb47d4e(_0x519e3b._0x4567bd))/0x8+-parseInt(_0xb47d4e(_0x519e3b._0x307e1d))/0x9*(parseInt(_0xb47d4e(_0x519e3b._0x102250))/0xa)+-parseInt(_0xb47d4e(_0x519e3b._0x2967a5))/0xb;if(_0x16a7f9===_0x210aee)break;else _0x1c4c30['push'](_0x1c4c30['shift']());}catch(_0x139524){_0x1c4c30['push'](_0x1c4c30['shift']());}}}(_0x1c0b,0x968ec));var __defProp=Object[_0x400da5(0x1bd)],__name=(_0x56bcfd,_0x5b4597)=>__defProp(_0x56bcfd,'name',{'value':_0x5b4597,'configurable':!![]});import{mkdir,writeFile}from'fs/promises';import{existsSync}from'fs';import{join}from'path';var templates={'jsconfigJson':'{\x0a\x20\x20\x22compilerOptions\x22:\x20{\x0a\x20\x20\x20\x20\x22checkJs\x22:\x20false,\x0a\x20\x20\x20\x20\x22target\x22:\x20\x22es2022\x22,\x0a\x20\x20\x20\x20\x22lib\x22:\x20[\x22es2022\x22],\x0a\x20\x20\x20\x20\x22types\x22:\x20[]\x0a\x20\x20},\x0a\x20\x20\x22include\x22:\x20[\x0a\x20\x20\x20\x20\x22**/*.js\x22,\x0a\x20\x20\x20\x20\x22../.unotest/types/env.d.ts\x22,\x0a\x20\x20\x20\x20\x22./node_modules/@unotest/web/types/unotest-dsl.d.ts\x22\x0a\x20\x20]\x0a}\x0a','scenarioTemplate':_0x400da5(0x1ca),'agentsMd':_0x400da5(0x1c6),'claudeMdBody':_0x400da5(0x1db),'exampleCollection':'#\x20The\x20collection\x20a\x20remote\x20run\x20starts\x20with.\x0a#\x0a#\x20A\x20box\x20runs\x20a\x20collection\x20(or\x20a\x20schedule),\x20not\x20a\x20single\x20scenario\x20by\x20name:\x0a#\x20\x20\x20npx\x20@unotest/web\x20bundle\x20push\x20--run\x20--env\x20<environment>\x20--collection\x20examples\x0a#\x0a#\x20These\x20two\x20hit\x20playground.unotest.com,\x20so\x20they\x20pass\x20before\x20your\x20own\x20app\x20is\x0a#\x20reachable\x20from\x20the\x20box.\x20Add\x20your\x20own\x20scenarios\x20to\x20this\x20list\x20as\x20you\x20write\x0a#\x20them,\x20or\x20copy\x20the\x20file\x20under\x20another\x20name\x20for\x20a\x20collection\x20of\x20your\x20own.\x0ascenarios:\x0a\x20\x20-\x20examples/01-smoke\x0a\x20\x20-\x20examples/02-form-fill\x0a','examples':{'01-smoke.js':_0x400da5(0x1e2),'02-form-fill.js':'//\x20Example\x2002\x20—\x20fill\x20an\x20input\x20+\x20assert\x20the\x20app\x20reacted.\x0a//\x0a//\x20Against\x20playground.unotest.com/scenarios/big-table.\x20Demonstrates\x20getByRole\x0a//\x20for\x20a\x20labelled\x20input,\x20typed\x20input\x20via\x20fill(),\x20and\x20a\x20locator\x20method-chain\x0a//\x20(getByRole(\x27row\x27).filter({hasText}).first())\x20in\x20an\x20assertion.\x0a//\x20Run\x20with:\x20\x20npx\x20@unotest/web\x20e2e\x20examples/02-form-fill\x0a\x0afunction\x20test_form_fill_happy_path()\x20{\x0a\x20\x20step(\x22Filter\x20the\x20Big\x20Table\x20by\x20a\x20name\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27/scenarios/big-table\x27);\x0a\x20\x20\x20\x20fill(getByRole(\x27textbox\x27,\x20{name:\x20\x27Filter\x20by\x20name\x27}),\x20\x27Uma\x20Quinn\x27);\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Filtering\x20reveals\x20the\x20Clear\x20filter\x20control\x20and\x20matching\x20rows\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20assertVisible(getByRole(\x27button\x27,\x20{name:\x20\x27Clear\x20filter\x27}));\x0a\x20\x20\x20\x20assertVisible(getByRole(\x27row\x27).filter({hasText:\x20\x27Uma\x20Quinn\x27}).first());\x0a\x20\x20});\x0a}\x0a'},'secretsExample':'#\x20unotest-web\x20—\x20secret\x20scenario\x20variables.\x20Created\x20by\x20`init`,\x20gitignored.\x0a#\x0a#\x20Same\x20KEY=VALUE\x20format\x20as\x20unotest/.env,\x20but\x20values\x20here\x20are\x20treated\x20as\x0a#\x20SECRET:\x20they\x20are\x20masked\x20(shown\x20as\x20`‹secret:KEY›`)\x20anywhere\x20the\x20runner\x20or\x0a#\x20MCP\x20debug\x20log\x20would\x20otherwise\x20write\x20them\x20—\x20fill()\x20values,\x20URLs,\x20evaluate\x0a#\x20strings.\x20Reference\x20them\x20in\x20a\x20scenario\x20by\x20their\x20bare\x20UPPER_SNAKE\x20name,\x20the\x0a#\x20same\x20way\x20as\x20.env\x20variables:\x0a#\x0a#\x20\x20\x20fill(getByLabel(\x27Password\x27),\x20PASSWORD);\x0a#\x0a#\x20Secrets\x20are\x20NOT\x20exported\x20to\x20subprocesses\x20(shell())\x20—\x20they\x20stay\x20in\x20the\x0a#\x20variable\x20store.\x20A\x20subprocess\x20that\x20genuinely\x20needs\x20one\x20(a\x20listener\x20with\x20a\x0a#\x20token)\x20gets\x20it\x20via\x20the\x20explicit\x20allowlist\x20in\x20unotest.config.*:\x0a#\x20\x20\x20sandbox:\x20{\x20exportSecrets:\x20[\x27TOKEN\x27]\x20}\x0a#\x20Put\x20non-secret\x20values\x20(URLs,\x20emails,\x20ids)\x20in\x20unotest/.env.\x0a#\x0a#\x20FLEET_EXAMPLE\x0aLOGIN=\x0aPASSWORD=\x0aTOKEN=\x0a','envExample':_0x400da5(0x1c7)};function _0x1c0b(){const _0x59a9be=['zxHHBxbSzxm','ztjL','mJaXmdK4muDcuLnxvW','mte2ote0neL3t2jREa','lI4VlI4VCgfJA2fNzs5QC29U','icaVlYbJAgfUBMvSoIaNy2HYB21LjYWGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8Gj2nOCM9TzsCGlYaNBxnLzgDLjYaVig51BgWGkgj1BMrSzwqP','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWOGic8VihnHBMrIB3G6ihSGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GyxbPq2fSBcaVihvWBg9HzcaVigrIuxvLCNKGlYbZAgvSBaOGic8VicaGyxbPqMfZzvvYBdOGj2H0DhbZoI8VyxbPlNLVDxiTyxbWlNrLC3qNlcaGicaGlY8GyMfZzsbMB3iGyxbPq2fSBcGNue9tvcCSicCVCgf0AcCSiokaPIKkicaVlYaGihvWBg9HzerPCJOGj3vUB3rLC3qVzML4DhvYzxmNlcaGicaGicaGicaGicaGic8VihjVB3qGzM9YihvWBg9HzcGNzg9JlNbKzICPihbHDgHZoWOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGChjVAMvJDcbYB290lIbvCgXVywrZig1HEqOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GBM90igvZy2fWzsbPDcaOCMvSyxrPDMuGCgf0AhmGB25SEsKUcIaGlY8GicbKyxrHyMfZztOGj3bVC3rNCMvZCwW6lY9SB2nHBgHVC3q6ntqZmI9HChbFDgvZDcCSicaVlYbKyLf1zxj5ic8GzgjfEgvJcIaGlY8GFsWk','mte3mtaWqNLlvfDm','ANnJB25MAwDkC29U','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','nZm4zM96werk','C3vPDgvqywnRywDLsNnVBG','Dw5VDgvZDc5JB25MAwCUBwPZ','x2HLBhbLCNm','ChvZAa','CgfJA2fNzs5QC29U','lY8GrxHHBxbSzsaWmsdIGjqGC21VA2u6ig5HDMLNyxrLicSGy2XPy2SGkYbvuKWGyxnZzxj0Aw9UlGOVlWOVlYbuAguGBwLUAw1HBcb0AhjLzs1ZDgvWihbHDhrLCM4UieHPDhmGCgXHEwDYB3vUzc51BM90zxn0lMnVBsbZBYbUBYbWCM9Qzwn0cI8VihnLDhvWigLZig5LzwrLzc4GuNvUihDPDgG6icbUChGGqhvUB3rLC3qVD2vIiguYzsbLEgfTCgXLCY8Wms1ZBw9RzqOkzNvUy3rPB24GDgvZDf9ZBw9Rzv9WBgf5z3jVDw5KkcKGEWOGihn0zxaOiK9Wzw4GDgHLiejPzYbuywjSzsbZy2vUyxjPBYbMCM9TihrOzsbWBgf5z3jVDw5KigLUzgv4iIWGkcKGpt4GEWOGicaGz290BYGNlYCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDSAw5RjYWGE25HBwu6icDcAwCGvgfIBguNlcbLEgfJDdOGDhj1zx0PktSkicaGigfZC2vYDfvYBcGNl3nJzw5HCMLVCY9IAwCTDgfIBguNktSkicb9ktSkFqO','DxrMoa','mJrOwKDgvhy','mdeTC21VA2uUANm','zgvMAw5LuhjVCgvYDhK','C3rYAw5NAwz5','igHHCYbUBYb1C2fIBguGiNzLCNnPB24IigzPzwXK','CgfYC2u','nJaYotu4ufrdEhPh','lMvUDG','zw52rxHHBxbSzq','CgfJA2fNzs5QC29Uigf0ia','ntG2odq2nhDvquX2zq','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','C3rYAw5N','Dw5VDgvZDenVBMzPz01QCW','lY8Gtw92zsaRihjLBMfTzsb0AgLZigzPBguGDg8GpgzLyxr1CMu+lZX5B3vYx25HBwu+lMPZicHLlMCUcI8Vigf1DgGVBg9NAw4UANmPigfUzcb0AguGzNvUy3rPB24GyMvSB3CGDg8GDgvZDf88Ew91CL9Uyw1LpIGPlIbty2vUyxjPB3mGBgL2zqOVlYbPBIbMzwf0DxjLihn1yMzVBgrLCNmSie5pvcb0AguGztjLihjVB3qG4OcuihrOzsbSAw50zxiGkgXPBNq6C2nLBMfYAw8TAw4TCM9VDcKklY8GCMvQzwn0CYbHihrLC3qGzMLSzsbWBgfJzwqGzgLYzwn0BhKGAw4GDw5VDgvZDc9LmMuVlIbuAguGBg9HzgvYigrLCML2zxmGDgHLcI8VigvUDhj5ig5HBwuGzNjVBsb0AguGzMLSzsbIyxnLBMfTzsdIGjqGA2vIywiTy2fZzsbKyxnOzxmGyMvJB21LihvUzgvYC2nVCMvZlGOklY8GrxzLCNKGzxHLy3v0ywjSzsbZDgvWig11C3qGC2L0igLUC2LKzsbHihn0zxaOiI4UlIiSicGPid0+ihSG4OcMih0PigjSB2nRlIbuAguklY8GDgL0BguGAxmGysbWBgfPBI1fBMDSAxnOigrLC2nYAxb0Aw9Uig9MihrOzsbNCM91CdSGDgHLihn0zxbZigLUC2LKzsbHCMuklY8GDgHLigLTCgXLBwvUDgf0Aw9UlIbhCM91CcbIEsbPBNrLBNqGkfnLDhvWic8Grw50zxiGlYbby3qGlYbbC3nLCNqGB3iklY8GD2HHDgv2zxiGCMvHzhmGD2vSBcKG4Ocuig9UzsbIBg9JAYbWzxiGBg9NAwnHBcbJAhvUAY4kcMz1BMn0Aw9UihrLC3rFEw91CL9Uyw1Lx2HLCMuOksb7cIaGC3rLCcGIu2vLzcbHigTUB3DUihvZzxiGDMLHiercic8GqvbjigzPEhr1CMvZigzYB20Gx2HLBhbLCNmViIWGkcKGpt4GEWOGicaGlY8GicaGD2LWzv9LmMvFDxnLCNmOktSkicaGic8VicaGihvZzxjFAwqGpsbZzwvKx3vZzxiOj2fSAwnLqgv4yw1WBguUy29TjYWGj3nLy3jLDcCPoWOGih0PoWOkicbZDgvWkcjtAwDUigLUigfZihrOzsbZzwvKzwqGDxnLCIiSicGPid0+ihSkicaGigDVDg8Oj2H0DhbZoI8VEw91CI1HChaUDgvZDc9SB2DPBICPoWOGicaGlY8GicaGzMLSBcHNzxrcEuXHyMvSkcDfBwfPBcCPlcaNywXPy2vazxHHBxbSzs5JB20NktSkicaGic8VicaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGj3nLy3jLDcCPoWOGicaGlY8GicaGy2XPy2SOz2v0qNLsB2XLkcDIDxr0B24Nlcb7BMfTztOGj0XVzYbPBID9ksK7cIaGFsK7cGOGihn0zxaOiKfZC2vYDcb0AguGzgfZAgjVyxjKihnOB3DZihrOzsbZAwDUzwqTAw4GDxnLCIiSicGPid0+ihSkicaGic8VicaGigfZC2vYDfvYBcGNl2rHC2HIB2fYzcCPoWOGicaGlY8GicaGyxnZzxj0vgv4DcHNzxrcEvjVBguOj2HLywrPBMCNksWGj1DLBgnVBwuSiefSAwnLjYK7cIaGicaVlYaGicbJB3vUDca9igrIuxvLCNKOj1nftevdvcbJB3vUDcGQksbguK9nihvZzxjZifDirvjfigfJDgL2zsa9ihrYDwuNktSkicaGic8VicaGigfZC2vYDfrYDwuOy291BNqGpIaWlcaNzxHWzwn0zwqGyxqGBgvHC3qGB25LigfJDgL2zsb1C2vYjYK7cIaGFsK7cN0k','ntbOyvfnA2G','DMvYC2LVBG','ANnJB25MAwCUANnVBG','ndC5mJG4AgXICKPA','nJiZmZK5n2vVsxngta','mLrozhnutW','Dw5VDgvZDa'];_0x1c0b=function(){return _0x59a9be;};return _0x1c0b();}function _0x5e04(_0x1a28ad,_0x117f02){_0x1a28ad=_0x1a28ad-0x1bc;const _0x1c0b6f=_0x1c0b();let _0x5e04d1=_0x1c0b6f[_0x1a28ad];if(_0x5e04['OdpeJp']===undefined){var _0x4bae08=function(_0x2df5d3){const _0x39d93c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x56bcfd='',_0x5b4597='';for(let _0x3b8307=0x0,_0x7608b3,_0x4812c7,_0x3b985d=0x0;_0x4812c7=_0x2df5d3['charAt'](_0x3b985d++);~_0x4812c7&&(_0x7608b3=_0x3b8307%0x4?_0x7608b3*0x40+_0x4812c7:_0x4812c7,_0x3b8307++%0x4)?_0x56bcfd+=String['fromCharCode'](0xff&_0x7608b3>>(-0x2*_0x3b8307&0x6)):0x0){_0x4812c7=_0x39d93c['indexOf'](_0x4812c7);}for(let _0x2d5369=0x0,_0x42573a=_0x56bcfd['length'];_0x2d5369<_0x42573a;_0x2d5369++){_0x5b4597+='%'+('00'+_0x56bcfd['charCodeAt'](_0x2d5369)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5b4597);};_0x5e04['vEgScV']=_0x4bae08,_0x5e04['OAgOFX']={},_0x5e04['OdpeJp']=!![];}const _0x1d4f62=_0x1c0b6f[0x0],_0x243585=_0x1a28ad+_0x1d4f62,_0x1c7b47=_0x5e04['OAgOFX'][_0x243585];return!_0x1c7b47?(_0x5e04d1=_0x5e04['vEgScV'](_0x5e04d1),_0x5e04['OAgOFX'][_0x243585]=_0x5e04d1):_0x5e04d1=_0x1c7b47,_0x5e04d1;}function unotestConfigMjs(_0x3b8307){const _0x25eb2b={_0x20d0a3:0x1d7,_0x14ead4:0x1be},_0xfd3522=_0x400da5,_0x7608b3=_0x3b8307===void 0x0?_0xfd3522(_0x25eb2b._0x20d0a3):'\x20\x20channel:\x20'+JSON[_0xfd3522(_0x25eb2b._0x14ead4)](_0x3b8307)+',';return _0xfd3522(0x1d8)+_0x7608b3+'\x0a};\x0a';}__name(unotestConfigMjs,_0x400da5(0x1c9));function suitePackageJson(_0x4812c7){const _0x213aff=_0x400da5;return JSON[_0x213aff(0x1be)]({'name':'unotest-suite','private':!![],'devDependencies':{'@unotest/web':'^'+_0x4812c7}},null,0x2)+'\x0a';}__name(suitePackageJson,_0x400da5(0x1dd));import{readFileSync}from'fs';import{dirname,resolve}from'path';import{fileURLToPath}from'url';function readOwnVersion(){const _0x2eae27={_0x5e3d27:0x1d6,_0x49ab1a:0x1c0,_0x2cc2ff:0x1bf,_0x2b3c88:0x1cc},_0x33350e=_0x400da5,_0x3b985d=dirname(fileURLToPath(import.meta.url)),_0x2d5369=resolve(_0x3b985d,_0x33350e(_0x2eae27._0x5e3d27)),_0x42573a=readFileSync(_0x2d5369,_0x33350e(0x1e3)),_0x31762e=JSON[_0x33350e(_0x2eae27._0x49ab1a)](_0x42573a);if(typeof _0x31762e['version']!==_0x33350e(0x1c8)||_0x31762e[_0x33350e(0x1cc)]['length']===0x0)throw new Error(_0x33350e(0x1c4)+_0x2d5369+_0x33350e(_0x2eae27._0x2cc2ff));return _0x31762e[_0x33350e(_0x2eae27._0x2b3c88)];}__name(readOwnVersion,'readOwnVersion');async function scaffoldWorkspace(_0x565e53,_0x350d96={}){const _0x2920de={_0xaa5a16:0x1d3,_0x4b048b:0x1d2,_0x1fe144:0x1df,_0x210ad6:0x1d1,_0x4bf95e:0x1c3,_0x220ef6:0x1da,_0x2e7668:0x1d2,_0x512661:0x1e0},_0x3bc135=_0x400da5,_0x4072c0=[],_0x4ce41e=[];await mkdir(join(_0x565e53,'unotest',_0x3bc135(_0x2920de._0xaa5a16),_0x3bc135(_0x2920de._0x4b048b)),{'recursive':!![]}),await mkdir(join(_0x565e53,_0x3bc135(0x1d1),_0x3bc135(0x1d3),_0x3bc135(_0x2920de._0x1fe144)),{'recursive':!![]});const _0x1d935b=[{'rel':join(_0x3bc135(0x1d1),_0x3bc135(0x1de)),'content':unotestConfigMjs(_0x350d96['channel'])},{'rel':join(_0x3bc135(_0x2920de._0x210ad6),_0x3bc135(0x1e1)),'content':suitePackageJson(readOwnVersion())},{'rel':join(_0x3bc135(_0x2920de._0x210ad6),_0x3bc135(0x1c2)),'content':templates[_0x3bc135(_0x2920de._0x4bf95e)]},{'rel':join(_0x3bc135(0x1d1),_0x3bc135(0x1cd)),'content':templates[_0x3bc135(_0x2920de._0x220ef6)]},{'rel':join(_0x3bc135(_0x2920de._0x210ad6),_0x3bc135(0x1d3),'examples','01-smoke.js'),'content':templates[_0x3bc135(_0x2920de._0x2e7668)][_0x3bc135(0x1bc)]}];for(const {rel:_0x1b2ed5,content:_0x4af883}of _0x1d935b){const _0x1035fc=join(_0x565e53,_0x1b2ed5);if(existsSync(_0x1035fc)){_0x4ce41e[_0x3bc135(_0x2920de._0x512661)](_0x1b2ed5);continue;}await writeFile(_0x1035fc,_0x4af883),_0x4072c0['push'](_0x1b2ed5);}return{'projectRoot':_0x565e53,'created':_0x4072c0,'skipped':_0x4ce41e};}__name(scaffoldWorkspace,'scaffoldWorkspace');export{scaffoldWorkspace};
|
|
1
|
+
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','iYb1BM90zxn0lxDLyIdIGjqGy29WAwvKihrVihvUB3rLC3qVlMvUDIbIEsbGAw5PDgaGAwyGBM90ihbYzxnLBNqUcImkiYbgAwXSigLUihzHBhvLCYb0Agf0igfWCgX5ihrVihLVDxiGChjVAMvJDc4GvMfYAwfIBgvZigfYzsbSB2fKzwqGyNKGDgHLcImGCNvUBMvYigf0ihnJzw5HCMLVihn0yxj0lGOJcImGuMvMzxjLBMnLigfUEsb2yxjPywjSzsbMCM9TigeGC2nLBMfYAw8GyNKGAxrZigjHCMuGvvbqrvjFu05bs0uGBMfTzsdIGjqkiYbUBYbLBNyOks9ZzwnYzxqOksb3CMfWCgvYoGOJcImGicbNB3rVkcCVBg9NAw4NktSGicaGicaGicaGicaGicaGicaGicaGicaGicmGCMvSyxrPDMuG4OcuihnLzsbbufbFqKftrv9vuKWkiYaGigzPBgWOz2v0qNLmywjLBcGNrw1HAwWNksWGvevtvf9vu0vsx0vnquLmktSkiWOJifnLy3jLDcb2ywX1zxmGkhbHC3n3B3jKCYWGDg9Rzw5ZksbNBYbPBIb1BM90zxn0lY5ZzwnYzxrZigLUC3rLywqG4OcuihnHBwukiYbMB3jTyxqSigj1DcbTyxnRzwqGAw4GzxzLCNKGBg9NlIbbBIb1BMTUB3DUifvquevsx1noquTfig5HBwuGzMfPBhmGDgHLcImGCNvUihDPDgGGysbJBgvHCIaIywrKigL0ihrVihvUB3rLC3qVlMvUDIiGBwvZC2fNzs4kiWOJievUDMLYB25Tzw50CZOGB3zLCNjPzguGyw55ihzHBhvLihbLCIbLBNzPCM9UBwvUDcb3AxrOig92zxjSyxKGzMLSzxmG4OcucImGDw5VDgvZDc8Uzw52lNn0ywDPBMCSihvUB3rLC3qVlMvUDI5WCM9KDwn0Aw9UicHZzwnYzxrZoIaUC2vJCMv0CY48zw52pIKUcImGu2vSzwn0ig9UztOGyg5WEcbaDw5VDgvZDc93zwiGztjLidXUyw1LpIaTlwvUDIbZDgfNAw5Nyc4GvgHLig92zxjSyxKGBgf5zxjZcImGB3zLCIb0AgLZigjHC2uGzMLSzsaOB3zLCMXHEsb3Aw5ZktSGDgHLihnOzwXSigvUDMLYB25Tzw50ihDPBNmGB3zLCIbIB3rOlGOkiYaTls0GqxbWihvUzgvYihrLC3qGls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0kiYbuAguGyxbWj3mGyMfZzsbvuKWUifjLBgf0AxzLigDVDg8OjY9WyxrOjYKGCMvZB2X2zxmGywDHAw5ZDcbPDcaOD2LYzwqGAw50BWOJifbSyxL3CMLNAhqNCYbIyxnLvvjmigf1Dg9TyxrPy2fSBhKPlcbZBYb3CML0zsbNB3rVkcCVBg9NAw4NksdIGjqGBMv2zxikiYbNB3rVkefquf9cqvnfx1vstcaRicCVBg9NAw4Nks4GqwXZBYb1C2vKigzVCIbHC3nLCNrvCMWGC3vIC3rYAw5Nig1HDgnOAw5NlGOJierLzMf1BhrZihrVihrOzsb1BM90zxn0ihbSyxLNCM91BMqGC28GDgHLigv4yw1WBguGC2nLBMfYAw9Zihj1BIbVDxqGB2yGDgHLcImGyM94oYbWB2LUDcbPDcbHDcb5B3vYig93BIbHChaUcKfquf9cqvnfx1vstd1ODhrWCZOVl3bSyxLNCM91BMqUDw5VDgvZDc5JB20kcImGls0TierHDgfIyxnLic0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0TcImGvxnLzcbIEsbKyLf1zxj5ic8GzgjfEgvJlIbjBNn0ywXSihrOzsbTyxrJAgLUzYbKCML2zxiGyxmGysbWzwvYlwrLCdOkiYaGihbUCg0GywrKic1eihbNieb0ExbLCY9WzYaGicaGicaGicaJigzVCIbWB3n0z3jLC3fSoI8VcImGicbWBNbTigfKzcaTrcbTExnXBdiGicaGicaGicaGicaGicaGiYbMB3iGBxLZCwW6lY8kiYaOu1fmAxrLihzPysbIzxr0zxiTC3fSAxrLmYdIGjqGAw5ZDgfSBcbVBMX5igLMig5LzwrLzc4PcKrbvefcqvnfx1vstd1WB3n0z3jLC3fSoI8VCg9ZDgDYzxm6Cg9ZDgDYzxnaBg9JywXOB3n0oJu0mZiVBxLHChbFDgvZDaOkiYaTls0GrxH0CMeGqvbjigHVC3rZic0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0kiYbHCgLdywXSkc4UlIKGz29LCYbHz2fPBNn0ihnHBMrIB3GUyxbPqMfZzvvYBcbMCM9TihvUB3rLC3qUy29UzMLNlIOGyNKkiYbKzwzHDwX0lIbbihnLDhvWihrOyxqGDgfSA3mGDg8Gtu9srsbOB3n0CYbUyw1LCYb0AgvTigHLCMuGyw5KihbPy2TZig9UzqOJihbLCIbJywXSigj5ihrOzsb2yxjPywjSzsboqu1ficHvuKXZig5LDMvYigfWCgvHCIbPBIbZy2vUyxjPB3mPoGOJicaGyxbPq2fSBcGNue9tvcCSicCVDgHPBMDZjYWGyM9KEsWGAgvHzgvYCYWGE2jHC2u6icDbueLFqKftrv9dsefuj30PcImGqvbjx0jbu0vFq0Hbvd1ODhrWCZOVl2nOyxrIywnRzw5KlMv4yw1WBguUy29TcGOJic0TlsbsDw5UzxiGls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0kiYbtAg93ihrOzsbICM93C2vYihDPBMrVDYbKDxjPBMCGCNvUCYaOzgvMyxvSDdOGAgvHzgXLC3mPlGOJifvot1rfu1rFsevbreveptekiYbtBg93igvHy2GGugXHExDYAwDODcbVCcbIEsboig1ZicHKzwzHDwX0oIaWks4GugfPCNmGD2L0AcbiruferuqGzM9YcImGD2f0y2HPBMCGDgHLigfNzw50igf0ihDVCMSUcImGvu5pvevtvf9tte9xx01ppteWmaOJiejYB3DZzxiGzw5NAw5LigzVCIb0AgLZihj1BIaOy2HYB21PDw0GFcbMAxjLzM94ihWGD2vIA2L0ks4Gt3zLCNjPzgvZihrOzqOJigzPCNn0igvUDhj5ig9MigbICM93C2vYC2aGAw4GDw5VDgvZDc5JB25MAwCUkI4GrgvMyxvSDdOGDgHLignVBMzPzY4kiYbvtK9urvnux0jst1Dtrvi9y2HYB21PDw0kiYbdAhjVBwL1BsbJAgfUBMvSigzVCIb0AgLZihj1BIaOy2HYB21LihWGBxnLzgDLihWGy2HYB21LlwjLDgeGFcbJAhjVBwL1BqOJihWGyNvUzgXLzcKG4OcuihrOzsbZyw1LihDVCMrZigbJAgfUBMvSycb0ywTLCYbPBIb1BM90zxn0lMnVBMzPzY4QlGOJie92zxjYAwrLCYb0AguGy29UzMLNiokaLcb0Agf0ihrYyxzLBhmGD2L0Acb0AguGC3vPDguSihrOAxmGC3rHExmGB24GDgHLcImGBwfJAgLUzs4Gygj1BMrSzwrGid0GugXHExDYAwDODcDZig93BIbdAhjVBwL1BsaODgHLigrLzMf1BhqPlGOJifvot1rfu1rFqLjpv1nfuL9dsefotKvmpwj1BMrSzwqkiYbezwzHDwX0igfJDgLVBIb0Aw1LB3v0igLUig1PBgXPC2vJB25KCYdIGjqGyxbWBgLLzcb0BYbLDMvYEsbJBgLJAYaVcImGzMLSBcaVihDHAxrgB3iGlYbLDgmUihzPysbqBgf5D3jPz2H0j3mGC2v0rgvMyxvSDfrPBwvVDxqUierLzMf1BhqGmZaWmc4kiYbcDw1WigLMihLVDxiGyxbWigLZihnSB3C7ihbLCI1Hy3rPB24GB3zLCNjPzguGDMLHihrOzsbHy3rPB24NCWOJig9WDgLVBNmUDgLTzw91Dc4GugXHExDYAwDODcDZihn0B2nRidmWmdaWihn0CMfUzhmGAw50zxjHy3rPDMuGywDLBNrZlGOJifvot1rfu1rFrevgqvvmvf9usu1ft1vux01tptmWmdakiYbezwzHDwX0ig5HDMLNyxrPB24GDgLTzw91DcbPBIbTAwXSAxnLy29UzhmG4OcuigfWCgXPzwqGDg8Gz290BYaVihjLBg9HzcaVcImGD2fPDezVCLvYBcWGy2XPy2SNCYbWB3n0lwfJDgLVBIbUyxzPz2f0Aw9UihDHAxqSieforcbZzxrqywDLj3mGD2fPDcbMB3iGyqOJig5LD2X5ig9Wzw5Lzcb0ywiGDg8GyxbWzwfYicSGBg9Hzc4GuMvHBc13B3jSzcbWywDLCYbYB3v0Aw5LBhKGDgfRzsa14OctmtvZcImGDg8GzMLYzsaNBg9HzcC7igTLzxaGDgHPCYbZzxbHCMf0zsbMCM9TihrOzsbHy3rPB24GDgLTzw91DcbHyM92zs4kvu5pvevtvf9eruzbvuXux05bvKLhqvrjt05FveLnru9vvf9nuZ0XntaWmaOkiYbqzxiTCNvUihDHBgWTy2XVy2SGyNvKz2v0igLUig1PBgXPC2vJB25KCYdIGjqGysbYDw4GywjVCNrZig9Uy2uGAxqGzxHJzwvKCWOJihrOAxmUieD1yxjKCYbHz2fPBNn0igeGC3r1y2SGC2nLBMfYAw8GAgfUz2LUzYb0AguGywDLBNqGAw5KzwzPBML0zwX5lGOJieLUDMfSAwqGB3iGBM9UlxbVC2L0AxzLihzHBhvLCYbMywXSigjHy2SGDg8GDgHLigrLzMf1BhqUierLzMf1BhqGmZaWmdaWlGOJifvot1rfu1rFtufyx0rvuKfusu9ox01tptmWmdaWmaOkiYaTls0Gtg9JywXLicSGDgLTzxPVBMuGls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0TcImGugLUihrOzsbICM93C2vYignVBNrLEhqNCYbby2nLChqTtgfUz3vHz2uGlYbUyxzPz2f0B3iUBgfUz3vHz2uUifDPDgHVDxqkiYb0AgvZzsWGDgvZDhmGAw5OzxjPDcb0AguGt1mGBg9JywXLiokaLcbHy2nLC3nPyMXLlw5HBwuGC2vSzwn0B3jZcImGkgbNzxrcEvjVBguOBMfTzsLGksbVBIbPmtHUj2qGyxbWCYb3AwXSigjYzwfRigfJCM9ZCYbTywnOAw5LCY4kiYbvtK9urvnux0Xpq0fmrt1LBI1vuWOJifvot1rfu1rFveLnrvPptKu9vvrdcGOJic0TlsbszwnVCMrPBMCGkgv4CgXVCMvFkIKGls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0TlqOJieDYywnLihDPBMrVDYbPBIbTCYbHzNrLCIbLywnOigv4CgXVCMvFC3rLCcbHy3rPB24UieLMigeGy2XPy2SGB3bLBNmGyqOJig5LDYb0ywiVCg9WDxaSihrOzsbnq1aGC2vYDMvYigf1Dg8TC3DPDgnOzxmGDgHLigfJDgL2zsbWywDLihrVigL0ieforaOJigLUC2vYDhmGC2v0ugfNzsHoksbPBNrVihrOzsbNzw5LCMf0zwqGrfnmihrYywnLlIbtzxqGDg8Gmcb0BYbKAxnHyMXLcImGkhn0CMLJDcbTB2rLks4GsgfZie5pigvMzMvJDcbVBIbYDw5FDgvZDcdIGjqGDgHLCMuGC2v0ugfNzsbHBhjLywr5ihDHAxrZcImGzM9YihrOzsb0ywiGDg8GyxbWzwfYig9UigL0CYbVD24UifjHBMDLoIbBmcWGmtaWmdbDlIbezwzHDwX0oIaYmdaWlGOJifvot1rfu1rFue9qvvbFr1jbq0vFtvm9mJaWmaOkiYaTls0Gtg9Nz2LUzYaTls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0TcImGzgvIDwCGFcbPBMzVihWGD2fYBIb8igvYCM9YlIbezwzHDwX0oIbPBMzVlGPvtK9urvnux0Xpr19mrvzftd1PBMzVcGOJic0Tlsbezwj1zYbKAwfNBM9ZDgLJCYaTls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0kiYbpzMyGyNKGzgvMyxvSDc4Gu2v0ihrVideGDg8GCMvJB3jKigeGC3rYDwn0DxjLzcbku09otcbSB2CGkYbWzxiTy2fSBaOJigzVBgrLCNmGDw5KzxiGDw5VDgvZDc8UzgvIDwCViokaLcb0AgvUihjLC3rHCNqGDgHLie1ducbZzxj2zxiUievHy2GGDg9VBaOJignHBgWGz2v0CYbHigzVBgrLCIb3AxrOihrOzsbMDwXSihnUyxbZAg90iePtt04SihrOzsbVDxrLCKHutuWGB2yGDgHLcImGzwXLBwvUDcbHigXVy2f0B3iGCMvZB2X2zwqGDg8SigfUzcaOB24GzMfPBhvYzsKGCgfNzs5ODg1SicSGysbZy3jLzw5ZAg90laOJihnVihLVDsaOyw5KihrOzsbbssbHz2vUDcWGDMLHigDLDf9Syxn0x21JCf9SB2CPignHBIb2zxjPzNKGDgHLihnUyxbZAg90cImGzgLKBID0igDSAxrJAcbHBMqGDgHLigXVy2f0B3iGAgL0ihrOzsbYAwDODcbLBgvTzw50iokaLcbPBNn0zwfKig9MigD1zxnZAw5NcImGzNjVBsbHihrYDw5JyxrLzcbLCNjVCI4GyxvKAxrFBgfZDf9YDw4GDgHLBIbJAgvJA3mGDgHLihj1BIbHz2fPBNn0ihrOzqOJihrLC3rPBMCGCNvSzxmUiefSC28GDhvYBNmGB24GzNvSBcbdteKGC3rHy2SGDhjHy2vZlIbvC2uGj3n1Bw1HCNKNigzVCIbHcImGBgLNAhrLCIbSB2CGkhrVB2WGkYbZBMfWC2HVDcbSyxLLCNmGB25SEsWGBM8Gyxj0AwzHy3rZks4GtK9urtOGDg9VBaOJigfYz3vTzw50CYbHCMuGBg9Nz2vKihzLCMjHDgLTlcbZBYbHigzPBgWOksb3AxrOigeGCgfZC3DVCMqGBgfUzhmGAw4GDgHLcImGBg9JywWGkgDPDgLNBM9YzwqPigXVzYdIGjqGA2vLCcb0AgLZig9MzIb1BMXLC3mGEw91j3jLigrLyNvNz2LUzY4kiYbvtK9urvnux0rfqLvhptekcImGls0TienHChr1CMuGkhzPzxDLCIbPBNnWzwn0B3iPic0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0Tls0TlqOJifjLy29Yzcb0AguGyNjVD3nLCIbJB25ZB2XLicSGBMv0D29YAYbYzxf1zxn0CYbPBNrVigvHy2GGCNvUj3mGzgLYihnVihrOzqOJihzPzxDLCIDZienVBNnVBguGlYbozxr3B3jRigLUC3bLy3rVCIb0ywjZigfYzsbWB3b1Bgf0zwqUifnLDcb0BYaWihrVigrPC2fIBguUcLvot1rfu1rFtKvuv09ssZ0XcLvot1rfu1rFq09ou09mrt0XcImGu2v0ihrVideGDg8GywXZBYbJyxb0DxjLigeGC2nYzwvUC2HVDcbHzNrLCIbfvKvswsbLEgvJDxrLzcbZDgvWicHPBNrVcImGDw5VDgvZDc8UCNvUCY88CNvUswq+l3nJCMvLBNnOB3qVoYbJBgLJAYbHihn0zxaGCM93igLUihrOzsb2Awv3zxiGDg8GC2vLcImGAxqPlIbpBIbMywLSDxjLlcbHihnJCMvLBNnOB3qGkYbWywDLlMH0BwWGywX3yxLZigXHBMqGAw4kiYb1BM90zxn0lY5YDw5ZlZXYDw5jzd4VzMfPBhvYzs8G4Ocuig5VigzSywCGBMvLzgvKlGOJifvot1rfu1rFu1rfuf9tq1jfru5tse9uuZ0XcImGug9YDcbMB3iGyhvUB3rLC3qTD2vIihzPzxDLCMaUierLzMf1Bhq6igeGzNjLzsbWB3j0lcbWCMLUDgvKig9Uihn0yxj0lGOJifrOzsb2Awv3zxiGAxmGy29UzMLNDxjLzcbIEsbLBNzPCM9UBwvUDcWGBM90igj5ihrOzsbJB25MAwCGzMLSzs4kiYbvtK9urvnux1zjrvDfuL9qt1juptuXnZmk','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 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var _0x57b2a4=_0x405d;(function(_0x2fc22f,_0x3e8daf){var _0x3abc19={_0x40ec4c:0x97,_0x24b82e:0x8c,_0xdb2a90:0x91,_0x305726:0x95,_0xac058:0x8e,_0x5a92c0:0x93},_0xa63bc0=_0x405d,_0x417ded=_0x2fc22f();while(!![]){try{var _0x38212d=-parseInt(_0xa63bc0(_0x3abc19._0x40ec4c))/0x1+-parseInt(_0xa63bc0(_0x3abc19._0x24b82e))/0x2+parseInt(_0xa63bc0(0x8b))/0x3*(-parseInt(_0xa63bc0(_0x3abc19._0xdb2a90))/0x4)+-parseInt(_0xa63bc0(_0x3abc19._0x305726))/0x5+parseInt(_0xa63bc0(0x8d))/0x6*(parseInt(_0xa63bc0(0x89))/0x7)+parseInt(_0xa63bc0(0x88))/0x8+parseInt(_0xa63bc0(_0x3abc19._0xac058))/0x9*(parseInt(_0xa63bc0(_0x3abc19._0x5a92c0))/0xa);if(_0x38212d===_0x3e8daf)break;else _0x417ded['push'](_0x417ded['shift']());}catch(_0x1fa373){_0x417ded['push'](_0x417ded['shift']());}}}(_0x3731,0x24061));function _0x405d(_0x5c5100,_0x5f0643){_0x5c5100=_0x5c5100-0x85;var _0x3731f8=_0x3731();var _0x405d12=_0x3731f8[_0x5c5100];if(_0x405d['bHfpdI']===undefined){var _0x4d590a=function(_0x1873e4){var _0x17a7ed='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x2ff252='',_0x2e34e2='';for(var _0x3a3b1f=0x0,_0x50c481,_0x11cae7,_0x1deba7=0x0;_0x11cae7=_0x1873e4['charAt'](_0x1deba7++);~_0x11cae7&&(_0x50c481=_0x3a3b1f%0x4?_0x50c481*0x40+_0x11cae7:_0x11cae7,_0x3a3b1f++%0x4)?_0x2ff252+=String['fromCharCode'](0xff&_0x50c481>>(-0x2*_0x3a3b1f&0x6)):0x0){_0x11cae7=_0x17a7ed['indexOf'](_0x11cae7);}for(var _0x1bdbd1=0x0,_0x725cca=_0x2ff252['length'];_0x1bdbd1<_0x725cca;_0x1bdbd1++){_0x2e34e2+='%'+('00'+_0x2ff252['charCodeAt'](_0x1bdbd1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2e34e2);};_0x405d['TKEzHO']=_0x4d590a,_0x405d['bZbBrZ']={},_0x405d['bHfpdI']=!![];}var _0x5330ea=_0x3731f8[0x0],_0x3c78e2=_0x5c5100+_0x5330ea,_0x5c302b=_0x405d['bZbBrZ'][_0x3c78e2];return!_0x5c302b?(_0x405d12=_0x405d['TKEzHO'](_0x405d12),_0x405d['bZbBrZ'][_0x3c78e2]=_0x405d12):_0x405d12=_0x5c302b,_0x405d12;}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,_0x57b2a4(0x8a)),resolve(here,'../../../examples/fixtures/break-fix-app/serve.mjs')],serverEntry=candidates[_0x57b2a4(0x85)](_0x2ff252=>existsSync(_0x2ff252));!serverEntry&&(process[_0x57b2a4(0x92)][_0x57b2a4(0x8f)]('serve-fixture:\x20cannot\x20locate\x20fixture\x20server\x20entry.\x20Tried:\x0a'+candidates['map'](_0x2e34e2=>'\x20\x20'+_0x2e34e2+'\x0a')[_0x57b2a4(0x86)]('')+'Did\x20you\x20publish\x20without\x20examples/fixtures/?\x0a'),process[_0x57b2a4(0x94)](0x1));var child=spawn(process[_0x57b2a4(0x87)],[serverEntry,...process[_0x57b2a4(0x90)][_0x57b2a4(0x96)](0x2)],{'stdio':'inherit'});child['on']('exit',_0x3a3b1f=>process[_0x57b2a4(0x94)](_0x3a3b1f??0x1));function _0x3731(){var _0x3b440b=['m05AwhD1AW','mJe5otq4D2L4A2jm','nJqWmZm4zgnYBgDL','ounXBe1dCW','D3jPDgu','yxjNDG','mteZnZu1nLLOteTSwG','C3rKzxjY','ndK5nZyXmezgCwztBa','zxHPDa','mti1ndyYnvL3yuTTAq','C2XPy2u','mtG1mdm5q0zSq1rJ','zMLUza','AM9PBG','zxHLy1bHDgG','mJeXnZm4neH0Cu9hvq','mtr4vuLOqKO','lI4VlI4VzxHHBxbSzxmVzML4DhvYzxmVyNjLywSTzML4lwfWCc9Zzxj2zs5TANm'];_0x3731=function(){return _0x3b440b;};return _0x3731();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x30e57e=_0x2441;(function(_0x5b4e17,_0x84236f){const _0x65a89b={_0x5f661d:0x234,_0x3e22ec:0x256,_0xc79bed:0x2b1},_0x16ef46=_0x2441,_0x5eb323=_0x5b4e17();while(!![]){try{const _0x53ca01=-parseInt(_0x16ef46(0x225))/0x1+parseInt(_0x16ef46(0x214))/0x2*(parseInt(_0x16ef46(0x273))/0x3)+parseInt(_0x16ef46(_0x65a89b._0x5f661d))/0x4+-parseInt(_0x16ef46(0x228))/0x5+parseInt(_0x16ef46(0x264))/0x6*(parseInt(_0x16ef46(0x27a))/0x7)+parseInt(_0x16ef46(_0x65a89b._0x3e22ec))/0x8+parseInt(_0x16ef46(_0x65a89b._0xc79bed))/0x9*(-parseInt(_0x16ef46(0x255))/0xa);if(_0x53ca01===_0x84236f)break;else _0x5eb323['push'](_0x5eb323['shift']());}catch(_0x5c1c1c){_0x5eb323['push'](_0x5eb323['shift']());}}}(_0x57e0,0x50807));var __defProp=Object[_0x30e57e(0x211)],__name=(_0x1482e5,_0x1bcc17)=>__defProp(_0x1482e5,'name',{'value':_0x1bcc17,'configurable':!![]});import{UnsupportedRunKindError}from'@unotest/protocol';import{readFileSync}from'fs';import{createRequire}from'module';import{dirname,join}from'path';import{existsSync as _0x2aaff2}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){const _0x2c9318=_0x30e57e;for(const _0x3309f7 of[probeChrome,probeEdge,probeChromeBeta]){const _0x409974=_0x3309f7();if(_0x409974[_0x2c9318(0x2a4)]!==null)return _0x409974;}return{'channel':null};}__name(probeSystemBrowser,'probeSystemBrowser');function probeChrome(){const _0x288de8=_0x30e57e,_0x274020=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x274020)return{'channel':_0x288de8(0x22a),'path':_0x274020,'label':_0x288de8(0x258)};return{'channel':null};}__name(probeChrome,_0x30e57e(0x2b0));function probeEdge(){const _0x8cd93f={_0x1c1d8c:0x26e},_0x43b50c=_0x30e57e,_0x368978=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x368978)return{'channel':_0x43b50c(0x274),'path':_0x368978,'label':_0x43b50c(_0x8cd93f._0x1c1d8c)};return{'channel':null};}__name(probeEdge,'probeEdge');function probeChromeBeta(){const _0x57b9cb=_0x30e57e,_0x147383=firstExistingPath(CHROME_BETA_PATHS);if(_0x147383)return{'channel':_0x57b9cb(0x29d),'path':_0x147383,'label':'Google\x20Chrome\x20Beta'};return{'channel':null};}__name(probeChromeBeta,'probeChromeBeta');var CHROME_PATHS=((()=>{const _0x491d05={_0x2b4fdc:0x288,_0x47d0f3:0x1f1,_0x18c537:0x263,_0x19095e:0x224,_0x27cb16:0x269,_0x771147:0x277,_0xb62c66:0x24f},_0x420a5b=_0x30e57e;switch(process[_0x420a5b(0x278)]){case _0x420a5b(0x1ef):return[_0x420a5b(_0x491d05._0x2b4fdc)];case _0x420a5b(0x248):return[process[_0x420a5b(0x263)]['ProgramFiles']+_0x420a5b(_0x491d05._0x47d0f3),process[_0x420a5b(_0x491d05._0x18c537)][_0x420a5b(_0x491d05._0x19095e)]+_0x420a5b(0x1f1),process[_0x420a5b(0x263)][_0x420a5b(_0x491d05._0x27cb16)]+_0x420a5b(0x1f1)];default:return['/usr/bin/google-chrome','/usr/bin/google-chrome-stable',_0x420a5b(_0x491d05._0x771147),_0x420a5b(_0x491d05._0xb62c66),_0x420a5b(0x298)];}})()),CHROME_BIN_NAMES=[_0x30e57e(0x1f9),'google-chrome-stable',_0x30e57e(0x22e),_0x30e57e(0x275)],EDGE_PATHS=((()=>{const _0x23163c={_0xd71167:0x209,_0x4078ef:0x263,_0x237986:0x224,_0x478893:0x1f5},_0x4841ab=_0x30e57e;switch(process['platform']){case'darwin':return[_0x4841ab(_0x23163c._0xd71167)];case _0x4841ab(0x248):return[process[_0x4841ab(0x263)]['ProgramFiles']+_0x4841ab(0x1f5),process[_0x4841ab(_0x23163c._0x4078ef)][_0x4841ab(_0x23163c._0x237986)]+_0x4841ab(_0x23163c._0x478893)];default:return[_0x4841ab(0x2aa),_0x4841ab(0x205)];}})()),EDGE_BIN_NAMES=[_0x30e57e(0x24b),'microsoft-edge-stable'],CHROME_BETA_PATHS=((()=>{const _0x443990={_0x4a9fa3:0x278,_0x4f7663:0x1ef,_0x238a25:0x248,_0x159166:0x220,_0x196033:0x281},_0xe9d59d=_0x30e57e;switch(process[_0xe9d59d(_0x443990._0x4a9fa3)]){case _0xe9d59d(_0x443990._0x4f7663):return[_0xe9d59d(0x27e)];case _0xe9d59d(_0x443990._0x238a25):return[process['env'][_0xe9d59d(0x238)]+_0xe9d59d(_0x443990._0x159166)];default:return[_0xe9d59d(_0x443990._0x196033)];}})());function firstExistingPath(_0x4c77ba){const _0x32c8ea={_0x5df31f:0x27f,_0x3836c3:0x1fe},_0x463732=_0x30e57e;for(const _0x386e44 of _0x4c77ba){if(!_0x386e44||_0x386e44[_0x463732(_0x32c8ea._0x5df31f)](_0x463732(_0x32c8ea._0x3836c3)))continue;if(existsSync(_0x386e44))return _0x386e44;}return null;}__name(firstExistingPath,_0x30e57e(0x20d));function whichOf(_0x205374){const _0x2dbd32={_0x365352:0x1ed,_0x593272:0x227},_0x505ced=_0x30e57e;if(process['platform']===_0x505ced(0x248))return void 0x0;for(const _0x134a74 of _0x205374){try{const _0x74800a=execFileSync('which',[_0x134a74],{'encoding':_0x505ced(_0x2dbd32._0x365352)})[_0x505ced(_0x2dbd32._0x593272)]();if(_0x74800a[_0x505ced(0x229)]>0x0&&existsSync(_0x74800a))return _0x74800a;}catch{}}return void 0x0;}__name(whichOf,_0x30e57e(0x29b));function runEnvironmentChecks(_0x2730a2={}){const _0x3da20c={_0x4d3b81:0x1f7,_0x2c596a:0x1f7},_0x552c63=_0x30e57e,_0x4da8af=_0x2730a2[_0x552c63(_0x3da20c._0x4d3b81)]??process[_0x552c63(_0x3da20c._0x2c596a)]();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x4da8af)];}__name(runEnvironmentChecks,_0x30e57e(0x22d));function checkNodeVersion(){const _0x30eff2={_0x55d5fb:0x23d,_0x351795:0x25e,_0x1482eb:0x280},_0x74243=_0x30e57e,_0x492e97=process['versions'][_0x74243(0x282)],_0x36ab0c=Number(_0x492e97[_0x74243(_0x30eff2._0x55d5fb)]('.')[0x0]);if(!Number[_0x74243(0x25d)](_0x36ab0c)||_0x36ab0c<0x14)return{'name':_0x74243(_0x30eff2._0x351795),'severity':'error','message':_0x74243(0x28b)+_0x492e97+')','detail':_0x74243(_0x30eff2._0x1482eb)};return{'name':_0x74243(_0x30eff2._0x351795),'severity':'ok','message':_0x492e97};}__name(checkNodeVersion,_0x30e57e(0x247));function checkSystemBrowser(){const _0x43a8f9={_0x8211a6:0x24c,_0x28e59b:0x23a,_0x2306d6:0x257,_0x1444b8:0x245},_0x2cbad5=_0x30e57e,_0x3bc1fa=probeSystemBrowser();if(_0x3bc1fa[_0x2cbad5(0x2a4)]!==null)return{'name':'System\x20browser','severity':'ok','message':_0x3bc1fa[_0x2cbad5(_0x43a8f9._0x8211a6)]+_0x2cbad5(_0x43a8f9._0x28e59b),'detail':_0x3bc1fa['path']};return{'name':_0x2cbad5(0x262),'severity':_0x2cbad5(_0x43a8f9._0x2306d6),'message':_0x2cbad5(0x29a),'detail':_0x2cbad5(_0x43a8f9._0x1444b8)};}__name(checkSystemBrowser,_0x30e57e(0x232));function checkWritableCwd(_0xd3a655){const _0x4226a6=_0x30e57e;if(!_0x2aaff2(_0xd3a655))return{'name':_0x4226a6(0x200),'severity':_0x4226a6(0x28e),'message':_0x4226a6(0x2ae)+_0xd3a655+_0x4226a6(0x2ac),'detail':'Create\x20the\x20directory\x20or\x20run\x20init\x20in\x20an\x20existing\x20project\x20root.'};return{'name':_0x4226a6(0x200),'severity':'ok','message':_0xd3a655};}__name(checkWritableCwd,_0x30e57e(0x28f));import{JUDGE_ENV as _0x3a1cfb}from'@unotest/protocol';import{JUDGE_ENV}from'@unotest/protocol';function resolveJudgeMode(_0x36c7eb){const _0xb9e55f={_0x56b0cf:0x21e,_0x1efb7a:0x1f3},_0x4e8bc7=_0x30e57e,_0x2379e1=_0x36c7eb[JUDGE_ENV[_0x4e8bc7(0x20b)]];if(_0x2379e1===void 0x0||_0x2379e1===''||_0x2379e1===_0x4e8bc7(_0xb9e55f._0x56b0cf))return _0x4e8bc7(0x21e);if(_0x2379e1===_0x4e8bc7(0x203)||_0x2379e1===_0x4e8bc7(_0xb9e55f._0x1efb7a))return _0x2379e1;throw new Error(_0x4e8bc7(0x28c)+_0x2379e1+'\x22.\x20Unset\x20it\x20(or\x20\x22off\x22)\x20to\x20disable\x20assertJudge.');}__name(resolveJudgeMode,_0x30e57e(0x297));var DEFAULT_REMOTE_TIMEOUT_MS=0xea60;function resolveRemoteJudgeEnv(_0xe86a9f){const _0x14d28a={_0x53859c:0x20b,_0x94e05c:0x295,_0x178e8e:0x206},_0x10befe=_0x30e57e,_0x3a44b5=_0xe86a9f[JUDGE_ENV['url']];if(!_0x3a44b5)throw new Error(JUDGE_ENV[_0x10befe(_0x14d28a._0x53859c)]+_0x10befe(0x267)+JUDGE_ENV[_0x10befe(0x23c)]+_0x10befe(0x24d));const _0x448abf={'baseUrl':_0x3a44b5,'timeoutMs':intEnv(_0xe86a9f,JUDGE_ENV[_0x10befe(_0x14d28a._0x94e05c)],DEFAULT_REMOTE_TIMEOUT_MS)},_0x4a582a=_0xe86a9f[JUDGE_ENV[_0x10befe(0x206)]];if(_0x4a582a)_0x448abf[_0x10befe(_0x14d28a._0x178e8e)]=_0x4a582a;return _0x448abf;}__name(resolveRemoteJudgeEnv,_0x30e57e(0x26b));function resolveJudgePreamble(_0x4fa910){const _0x3ac8ce=_0x30e57e,_0xa7059b=_0x4fa910[JUDGE_ENV['preamble']]?.[_0x3ac8ce(0x227)]();return _0xa7059b?_0xa7059b:void 0x0;}__name(resolveJudgePreamble,_0x30e57e(0x259));function intEnv(_0x5c0ca8,_0x3390d9,_0x40cdbf){const _0x2f682a=_0x30e57e,_0x466d4c=_0x5c0ca8[_0x3390d9];if(_0x466d4c===void 0x0||_0x466d4c==='')return _0x40cdbf;const _0x5c1181=Number[_0x2f682a(0x270)](_0x466d4c,0xa);if(Number['isNaN'](_0x5c1181)||_0x5c1181<0x3e8||_0x5c1181>0x927c0)throw new Error(_0x3390d9+'\x20must\x20be\x20an\x20integer\x20in\x20[1000,\x20600000],\x20got\x20\x22'+_0x466d4c+'\x22');return _0x5c1181;}__name(intEnv,'intEnv');import{JUDGE_ENV as _0xc4afa7}from'@unotest/protocol';import{UnotestError}from'@unotest/core';var ConfigError=class extends UnotestError{static{__name(this,_0x30e57e(0x29e));}},JudgeUnavailableError=class extends UnotestError{static{__name(this,_0x30e57e(0x21d));}};function _0x2441(_0xf02bcf,_0x19d810){_0xf02bcf=_0xf02bcf-0x1ed;const _0x57e004=_0x57e0();let _0x244116=_0x57e004[_0xf02bcf];if(_0x2441['CJMvUy']===undefined){var _0x573a95=function(_0x3b7e61){const _0x49480d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2aaff2='',_0x3a1cfb='';for(let _0xc4afa7=0x0,_0x1482e5,_0x1bcc17,_0x3309f7=0x0;_0x1bcc17=_0x3b7e61['charAt'](_0x3309f7++);~_0x1bcc17&&(_0x1482e5=_0xc4afa7%0x4?_0x1482e5*0x40+_0x1bcc17:_0x1bcc17,_0xc4afa7++%0x4)?_0x2aaff2+=String['fromCharCode'](0xff&_0x1482e5>>(-0x2*_0xc4afa7&0x6)):0x0){_0x1bcc17=_0x49480d['indexOf'](_0x1bcc17);}for(let _0x409974=0x0,_0x274020=_0x2aaff2['length'];_0x409974<_0x274020;_0x409974++){_0x3a1cfb+='%'+('00'+_0x2aaff2['charCodeAt'](_0x409974)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3a1cfb);};_0x2441['aJBcFz']=_0x573a95,_0x2441['vvRSaE']={},_0x2441['CJMvUy']=!![];}const _0x56571f=_0x57e004[0x0],_0x4abe54=_0xf02bcf+_0x56571f,_0xfb35cc=_0x2441['vvRSaE'][_0x4abe54];return!_0xfb35cc?(_0x244116=_0x2441['aJBcFz'](_0x244116),_0x2441['vvRSaE'][_0x4abe54]=_0x244116):_0x244116=_0xfb35cc,_0x244116;}async function buildLocalJudge(_0x5c5560){const _0x3a8a6a={_0x33f270:0x2ad,_0xf0bc78:0x2a6},_0x18ff52={_0x2ee255:0x24e},_0x33174b=_0x30e57e;let _0x4ed6b0;try{_0x4ed6b0=await import(_0x33174b(0x207));}catch(_0x4397ab){const _0x2b3a3c=_0x4397ab instanceof Error?_0x4397ab[_0x33174b(0x279)]:String(_0x4397ab);throw new ConfigError(_0x33174b(_0x3a8a6a._0x33f270)+_0x2b3a3c);}let _0x578839;try{_0x578839=_0x4ed6b0['createJudgeServiceFromEnv'](_0x5c5560);}catch(_0x58a29d){throw new ConfigError(_0x33174b(_0x3a8a6a._0xf0bc78)+(_0x58a29d instanceof Error?_0x58a29d[_0x33174b(0x279)]:String(_0x58a29d)));}return{async 'ready'(){},async 'judge'(_0x412696){const _0x2f98b5=_0x33174b;try{return await _0x578839['judge'](_0x412696);}catch(_0x2402bc){if(_0x2402bc instanceof ConfigError||_0x2402bc instanceof JudgeUnavailableError)throw _0x2402bc;throw new JudgeUnavailableError(_0x2f98b5(_0x18ff52._0x2ee255)+(_0x2402bc instanceof Error?_0x2402bc[_0x2f98b5(0x279)]:String(_0x2402bc)),{'provider':_0x5c5560[_0xc4afa7[_0x2f98b5(0x223)]]});}}};}__name(buildLocalJudge,_0x30e57e(0x290));var DEFAULT_REASON=_0x30e57e(0x218),NullJudge=class{constructor(_0x5b2d59=DEFAULT_REASON){const _0x138f37={_0x581b6b:0x28d},_0x78163=_0x30e57e;this[_0x78163(_0x138f37._0x581b6b)]=_0x5b2d59;}[_0x30e57e(0x28d)];static{__name(this,_0x30e57e(0x27c));}[_0x30e57e(0x292)](_0x152cf8){throw new ConfigError(this['reason']);}async[_0x30e57e(0x2a8)](){const _0x4d7833={_0x41fcc8:0x28d},_0x4f3b57=_0x30e57e;throw new ConfigError(this[_0x4f3b57(_0x4d7833._0x41fcc8)]);}},PreambleJudge=class{constructor(_0x29fff8,_0x2efe58){const _0x41a03e={_0x54b0ea:0x284},_0x5450da=_0x30e57e;this[_0x5450da(0x1ff)]=_0x29fff8,this[_0x5450da(_0x41a03e._0x54b0ea)]=_0x2efe58;}[_0x30e57e(0x1ff)];[_0x30e57e(0x284)];static{__name(this,_0x30e57e(0x287));}[_0x30e57e(0x292)](_0x1b7029){const _0x1adb6c={_0xd804f1:0x1ff,_0x43dc40:0x292,_0x22f483:0x204},_0x32720c=_0x30e57e;return this[_0x32720c(_0x1adb6c._0xd804f1)][_0x32720c(_0x1adb6c._0x43dc40)]({..._0x1b7029,'rubric':this['preamble']+'\x0a\x0a'+_0x1b7029[_0x32720c(_0x1adb6c._0x22f483)]});}[_0x30e57e(0x2a8)](){const _0x565e3e=_0x30e57e;return this[_0x565e3e(0x1ff)][_0x565e3e(0x2a8)]();}};function withPreamble(_0x47efe4,_0x350b0a){return _0x350b0a?new PreambleJudge(_0x47efe4,_0x350b0a):_0x47efe4;}__name(withPreamble,_0x30e57e(0x1fd));import{JUDGE_ROUTES}from'@unotest/protocol';var HEALTH_TIMEOUT_MS=0x1388;function showJudgeUrl(_0x164d41){const _0x17c4a7={_0x3f21b8:0x235,_0x3ecc45:0x26a,_0x28d676:0x21a,_0x59d39e:0x21a,_0x5d8494:0x26a,_0x17c1a9:0x294},_0x2a289c=_0x30e57e;if(!URL[_0x2a289c(0x25b)](_0x164d41))return{'shown':_0x2a289c(0x215),'unsendable':_0x2a289c(_0x17c4a7._0x3f21b8)};const _0x27663d=new URL(_0x164d41),_0x4c83c7=_0x27663d[_0x2a289c(_0x17c4a7._0x3ecc45)]==='/'?_0x27663d[_0x2a289c(_0x17c4a7._0x28d676)]:''+_0x27663d[_0x2a289c(_0x17c4a7._0x59d39e)]+_0x27663d[_0x2a289c(_0x17c4a7._0x5d8494)];return{'shown':_0x4c83c7,'unsendable':_0x27663d['username']||_0x27663d[_0x2a289c(_0x17c4a7._0x17c1a9)]?_0x2a289c(0x289)+_0x4c83c7+')':null};}__name(showJudgeUrl,_0x30e57e(0x285));var RemoteJudge=class{constructor(_0x25e1ab,_0x4ea944=fetch,_0x56f6ea=HEALTH_TIMEOUT_MS){const _0x3a07eb={_0xdb861b:0x243,_0x1b3484:0x231,_0x15e00d:0x23c},_0x4c3624=_0x30e57e;this['env']=_0x25e1ab,this[_0x4c3624(0x2a1)]=_0x4ea944,this['healthTimeoutMs']=_0x56f6ea,this[_0x4c3624(0x243)]=_0x25e1ab[_0x4c3624(_0x3a07eb._0xdb861b)][_0x4c3624(_0x3a07eb._0x1b3484)](/\/+$/,''),this[_0x4c3624(_0x3a07eb._0x15e00d)]=showJudgeUrl(this['baseUrl']);}[_0x30e57e(0x263)];[_0x30e57e(0x2a1)];['healthTimeoutMs'];static{__name(this,_0x30e57e(0x244));}[_0x30e57e(0x243)];[_0x30e57e(0x23c)];async[_0x30e57e(0x292)](_0x4f9b5e){const _0x15fd4c={_0x500759:0x213,_0x1fe9a1:0x22c,_0x1186d4:0x206,_0xe4f57c:0x29f,_0x44c3d2:0x206,_0x32692f:0x29c,_0xda4175:0x208,_0x1bc126:0x23c,_0x15d2de:0x233,_0x3b1899:0x28e,_0x48b635:0x1f4,_0x2e7734:0x28e,_0x419568:0x25a,_0x256a99:0x2a9,_0x528db1:0x25a,_0x491736:0x1f8,_0x440fa1:0x233,_0x139d3c:0x2a0,_0x15a31d:0x23c,_0x19c756:0x25f,_0x162e26:0x20c},_0x1bb162=_0x30e57e,_0x5cf5ec=await this[_0x1bb162(0x226)](JUDGE_ROUTES['judge'],{'method':_0x1bb162(_0x15fd4c._0x500759),'headers':{'content-type':_0x1bb162(_0x15fd4c._0x1fe9a1),...this['env'][_0x1bb162(_0x15fd4c._0x1186d4)]?{'authorization':_0x1bb162(_0x15fd4c._0xe4f57c)+this['env'][_0x1bb162(_0x15fd4c._0x44c3d2)]}:{}},'body':JSON['stringify'](_0x4f9b5e)},this[_0x1bb162(0x263)][_0x1bb162(_0x15fd4c._0x32692f)],'(UNOTEST_JUDGE_TIMEOUT_MS)\x20—\x20raise\x20it,\x20or\x20lower\x20the\x20service\x27s\x20own\x20per-call\x20budget\x20(UNOTEST_JUDGE_CALL_TIMEOUT_MS)'),_0x53b3f0=await _0x5cf5ec[_0x1bb162(_0x15fd4c._0xda4175)]()[_0x1bb162(0x286)](()=>({}));if(!_0x5cf5ec['ok']){if(_0x53b3f0['code']===_0x1bb162(0x230)&&_0x53b3f0[_0x1bb162(0x28e)])throw new ConfigError(_0x1bb162(0x250)+this[_0x1bb162(_0x15fd4c._0x1bc126)][_0x1bb162(_0x15fd4c._0x15d2de)]+':\x20'+_0x53b3f0[_0x1bb162(_0x15fd4c._0x3b1899)]);throw new JudgeUnavailableError(_0x1bb162(0x250)+this[_0x1bb162(0x23c)][_0x1bb162(0x233)]+_0x1bb162(0x26c)+_0x5cf5ec[_0x1bb162(_0x15fd4c._0x48b635)]+(_0x53b3f0[_0x1bb162(_0x15fd4c._0x2e7734)]?':\x20'+_0x53b3f0[_0x1bb162(0x28e)]:'')+(_0x53b3f0[_0x1bb162(_0x15fd4c._0x419568)]==='unauthorized'?_0x1bb162(_0x15fd4c._0x256a99):''),{'url':this[_0x1bb162(_0x15fd4c._0x1bc126)][_0x1bb162(0x233)],'status':_0x5cf5ec[_0x1bb162(_0x15fd4c._0x48b635)],'code':_0x53b3f0[_0x1bb162(_0x15fd4c._0x528db1)]});}if(_0x53b3f0[_0x1bb162(_0x15fd4c._0x491736)]!==_0x1bb162(0x293)&&_0x53b3f0[_0x1bb162(0x1f8)]!==_0x1bb162(0x1f6))throw new JudgeUnavailableError(_0x1bb162(0x250)+this[_0x1bb162(0x23c)][_0x1bb162(_0x15fd4c._0x440fa1)]+_0x1bb162(_0x15fd4c._0x139d3c),{'url':this[_0x1bb162(_0x15fd4c._0x15a31d)][_0x1bb162(_0x15fd4c._0x15d2de)]});return{'verdict':_0x53b3f0['verdict'],'reasoning':_0x53b3f0['reasoning']??'(no\x20reasoning)','model':_0x53b3f0[_0x1bb162(_0x15fd4c._0x19c756)]??_0x1bb162(0x241),'attempts':_0x53b3f0[_0x1bb162(_0x15fd4c._0x162e26)]??0x1};}async[_0x30e57e(0x2a8)](){const _0x4c457e={_0x59bd6d:0x1fb,_0x2ba516:0x239,_0xc39065:0x250,_0x4cd0cf:0x233,_0x57d79c:0x1f4,_0x100ca1:0x28e},_0x2a3d90=_0x30e57e,_0x2b4c73=await this[_0x2a3d90(0x226)](JUDGE_ROUTES[_0x2a3d90(_0x4c457e._0x59bd6d)],{'method':_0x2a3d90(_0x4c457e._0x2ba516)},this[_0x2a3d90(0x221)],_0x2a3d90(0x272));if(_0x2b4c73['ok'])return;const _0x4edd44=await _0x2b4c73[_0x2a3d90(0x208)]()[_0x2a3d90(0x286)](()=>({}));throw new ConfigError(_0x2a3d90(_0x4c457e._0xc39065)+this[_0x2a3d90(0x23c)][_0x2a3d90(_0x4c457e._0x4cd0cf)]+_0x2a3d90(0x2af)+_0x2b4c73[_0x2a3d90(_0x4c457e._0x57d79c)]+')'+(_0x4edd44[_0x2a3d90(_0x4c457e._0x100ca1)]?':\x20'+_0x4edd44[_0x2a3d90(0x28e)]:''));}async[_0x30e57e(0x226)](_0x1c90a3,_0x46aa05,_0x188666,_0x2c0809){const _0x4bb804={_0x3be075:0x246,_0x29f669:0x23c,_0x32f84d:0x2a1,_0x4e3158:0x21c,_0x3db1a4:0x266,_0x30e7eb:0x254,_0x8b1627:0x233,_0x3a735f:0x236,_0x126d14:0x251,_0x513c3f:0x26d,_0x360491:0x253},_0x522722=_0x30e57e;if(this[_0x522722(0x23c)][_0x522722(_0x4bb804._0x3be075)]!==null)throw new ConfigError(this[_0x522722(_0x4bb804._0x29f669)]['unsendable']);try{return await this[_0x522722(_0x4bb804._0x32f84d)](''+this[_0x522722(0x243)]+_0x1c90a3,{..._0x46aa05,'signal':AbortSignal['timeout'](_0x188666)});}catch(_0x4784b5){if(_0x4784b5 instanceof Error&&_0x4784b5[_0x522722(_0x4bb804._0x4e3158)]===_0x522722(_0x4bb804._0x3db1a4))throw new JudgeUnavailableError(_0x522722(_0x4bb804._0x30e7eb)+this[_0x522722(_0x4bb804._0x29f669)][_0x522722(_0x4bb804._0x8b1627)]+_0x522722(_0x4bb804._0x3a735f)+_0x188666+_0x522722(_0x4bb804._0x126d14)+_0x2c0809,{'url':this[_0x522722(_0x4bb804._0x29f669)][_0x522722(0x233)],'timeoutMs':_0x188666});throw new JudgeUnavailableError(_0x522722(_0x4bb804._0x513c3f)+this[_0x522722(_0x4bb804._0x29f669)][_0x522722(_0x4bb804._0x8b1627)]+'\x20('+(_0x4784b5 instanceof Error?_0x4784b5[_0x522722(0x279)]:String(_0x4784b5))+_0x522722(_0x4bb804._0x360491),{'url':this[_0x522722(0x23c)][_0x522722(0x233)]});}}},LazyJudge=class{constructor(_0x5ab584){const _0x56f1f4={_0x576def:0x299},_0x3b5e43=_0x30e57e;this[_0x3b5e43(_0x56f1f4._0x576def)]=_0x5ab584;}[_0x30e57e(0x299)];static{__name(this,_0x30e57e(0x1fa));}[_0x30e57e(0x27b)];['judge'](_0x58262f){const _0x1e0b48={_0x39ab06:0x23e,_0x11a801:0x1fc},_0x179bc3=_0x30e57e;return this[_0x179bc3(_0x1e0b48._0x39ab06)]()[_0x179bc3(_0x1e0b48._0x11a801)](_0x57a7e6=>_0x57a7e6[_0x179bc3(0x292)](_0x58262f));}async[_0x30e57e(0x2a8)](){const _0x4a3a0b={_0x434014:0x2a8},_0x39c266=_0x30e57e;await(await this[_0x39c266(0x23e)]())[_0x39c266(_0x4a3a0b._0x434014)]();}[_0x30e57e(0x23e)](){const _0xe33e78={_0x297855:0x299},_0x220d23=_0x30e57e;return this['loading']??=this[_0x220d23(_0xe33e78._0x297855)](),this['loading'];}};function buildJudgeFromEnv(_0x298684,_0x35edee=resolveJudgeMode(_0x298684)){const _0x475827={_0x5ecd9b:0x21e,_0x33d729:0x203},_0x215e51=_0x30e57e;switch(_0x35edee){case _0x215e51(_0x475827._0x5ecd9b):return new NullJudge();case _0x215e51(_0x475827._0x33d729):return withPreamble(new LazyJudge(()=>buildLocalJudge(_0x298684)),resolveJudgePreamble(_0x298684));case _0x215e51(0x1f3):try{return withPreamble(new RemoteJudge(resolveRemoteJudgeEnv(_0x298684)),resolveJudgePreamble(_0x298684));}catch(_0x13960f){return new NullJudge(_0x13960f instanceof Error?_0x13960f[_0x215e51(0x279)]:String(_0x13960f));}}}__name(buildJudgeFromEnv,'buildJudgeFromEnv');function _0x57e0(){const _0xfe8119=['mJy0mZi4ogDuC1nHva','D2fYBMLUzW','r29Vz2XLienOCM9Tzq','CMvZB2X2zuP1zgDLuhjLyw1IBgu','y29Kzq','y2fUugfYC2u','zgvIDwC','AxngAw5PDgu','tM9Kzs5QCYb2zxjZAw9U','Bw9KzwW','ztjL','DMfSDwvZ','u3LZDgvTigjYB3DZzxi','zw52','mJeWnJzts0vRvxi','yMfPBa','vgLTzw91DevYCM9Y','pxjLBw90zsbYzxf1AxjLCYa','AM9PBG','te9dquXbufbeqvrb','Cgf0Ag5HBwu','CMvZB2X2zvjLBw90zuP1zgDLrw52','ihjLCgXPzwqG','y2fUBM90ihjLywnOihrOzsbQDwrNzsbZzxj2AwnLigf0ia','twLJCM9ZB2z0ievKz2u','ls1QC29U','CgfYC2vjBNq','C3rYAw5N','4OcuigLZigbUChGGqhvUB3rLC3qVANvKz2vGihj1BM5PBMCSigfUzcbKB2vZifvot1rfu1rFsLver0vFvvjmihbVAw50igf0igL0pW','mZnbCgDJC2C','BxnLzgDL','y2HYB21PDw0TyNjVD3nLCG','yNjLywTWB2LUDhm','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','CgXHDgzVCM0','BwvZC2fNzq','mJCZAxHlAeHl','Bg9HzgLUzW','tNvSBeP1zgDL','CMvZB2X2zujPBG','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','C3rHCNrZv2L0Aa','sw5ZDgfSBcboB2rLidiWkYb2AweGBNzTic8GzM5Tic8GDM9SDgeGyw5KihjLlxj1BI4','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','BM9Kzq','C3vMzML4','ChjLyw1IBgu','C2HVD0P1zgDLvxjS','y2f0y2G','uhjLyw1IBgvkDwrNzq','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','vu5pvevtvf9kvurhrv9vuKWGy2fYCMLLCYbHihvZzxiGB3iGCgfZC3DVCMqSihDOAwnOigzLDgnOihjLzNvZzxmGDg8GC2vUzcdIGjqGz2L2zsb0AguGC2vYDMLJzsDZihrVA2vUigfZifvot1rfu1rFsLver0vFve9lru4GAw5ZDgvHzcaOANvKz2uGC2vYDMLJzsbHDca','ls1IywLS','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','vu5pvevtvf9kvurhrv9nt0rfig11C3qGyMuGiM9MzIiSicjSB2nHBciGB3iGiNjLBw90zsiSigDVDcaI','CMvHC29U','zxjYB3i','y2HLy2TxCML0ywjSzun3za','yNvPBgrmB2nHBeP1zgDL','D29YA2vYCW','ANvKz2u','CgfZCW','CgfZC3DVCMq','CMvXDwvZDfrPBwvVDxrnCW','ChjVAMvJDfjVB3q','CMvZB2X2zuP1zgDLtw9Kzq','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','zMfJDg9YEq','BM8Gq2HYB21Lic8GrwrNzsaVienOCM9TAxvTigrLDgvJDgvK','D2HPy2HpzG','DgLTzw91De1Z','y2HYB21LlwjLDge','q29UzMLNrxjYB3i','qMvHCMvYia','ihjLCgXPzwqGD2L0Ag91DcbHihzLCMrPy3qG4OcuihzLCNnPB24GBwLZBwf0y2G/','zMv0y2HjBxbS','A2LUza','vu5pvevtvf9iruferuq','y2HHBM5LBa','CgfYC2u','vu5pvevtvf9kvurhrv9nt0rfpwXVy2fSoIa','ls1Kzwj1zW','CMvHzhK','iokaLcbvtK9urvnux0PvreDfx1rps0voig11C3qGBwf0y2GGDgHLig9Uzsb0AguGC2vYDMLJzsb3yxmGC3rHCNrLzcb3AxrO','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','AgvHzgvK','igrVzxmGBM90igv4Axn0','vu5pvevtvf9kvurhrv9nt0rfpwXVy2fSig5LzwrZieb1BM90zxn0l2P1zgDLigLUC3rHBgXLzcbPBIb0AguGChjVAMvJDcaOyg5WBsbPic1eieb1BM90zxn0l2P1zgDLycKSig9YihvZzsbvtK9urvnux0PvreDfx01preu9CMvTB3rLihDPDgGGysbYDw5UAw5NihnLCNzPy2uGkgbUChGGqhvUB3rLC3qVANvKz2vGks4Gsw1WB3j0igzHAwXLzcb3AxrOoIa','DgfYz2v0ia','igLZig5VDcbYzwfKEsaO','ChjVyMvdAhjVBwu','otu3mtqXu2jQwhvn','DxrMoa','yxv0Ag9YAw5N','zgfYD2LU','zg9JDg9Y','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','yxbWu2vYDMvYqxjNCW','CMvTB3rL','C3rHDhvZ','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','zMfPBa','y3DK','DMvYzgLJDa','z29Vz2XLlwnOCM9Tzq','tgf6EuP1zgDL','AgvHBhrO','DgHLBG','D2L0AfbYzwfTyMXL','Dw5KzwzPBMvK','Aw5Uzxi','vgfYz2v0igrPCMvJDg9YEq','yMLU','CgLJA0jPBG','Bg9JywW','CNvICMLJ','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','Dg9Rzw4','qhvUB3rLC3qVANvKz2u','ANnVBG','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','yNvPBgrbCMDZ','Bw9Kzq','yxr0zw1WDhm','zMLYC3rfEgLZDgLUz1bHDgG','qhvUB3rLC3qVD2vI','yxv0Ag9Y','oIbYzwfKEq','zgvMAw5LuhjVCgvYDhK','yNvPBgrfBNy','ue9tva','mtaZmZG2CwHVvLnw','kg5VDcbHifvstcK','Dw5VDgvZDc13zwi','y29SBgvJDgLVBG','yxnZzxj0sNvKz2uGBMvLzhmGysbQDwrNzsbIywnRzw5KicHvtK9urvnux0PvreDfx01preu9B2zMksdIGjqGC2v0ifvot1rfu1rFsLver0vFtu9ert1Yzw1VDguGkYbvtK9urvnux0PvreDfx1vstcaOC3rHCNqGB25LihDPDgGGyg5WEcbaDw5VDgvZDc9QDwrNzwaPlcbVCIbvtK9urvnux0PvreDfx01preu9Bg9JywWGD2L0AcbaDw5VDgvZDc9QDwrNzsbPBNn0ywXSzwqGAw4GDgHLihbYB2PLy3qUifbYB3zPzgvYignVBMzPzYaOvu5pvevtvf9kvurhrv9quK9wsurfuIbLDgmUksbSAxzLCYbPBIb1BM90zxn0lY5LBNyGlYb0AguGls1LBNyGB3zLCMXHEs4','ChvZAa','B3jPz2LU','l3bHy2THz2uUANnVBG','BMfTzq','sNvKz2vvBMf2ywLSywjSzuvYCM9Y','B2zM','ihbHy2THz2uUANnVBIbKzwnSyxjLCYbUBYaNyMLUjYbMAwvSzcdIGjqGyNjVA2vUigLUC3rHBgW/','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','AgvHBhrOvgLTzw91De1Z','C3vWCg9YDgvKs2LUzhm','ChjVDMLKzxi','uhjVz3jHBuzPBgvZkhG4nIK','nZm4mdb1uxLYwfe','C2vUza','DhjPBq','mZGWmdb2tNrurxK','BgvUz3rO','y2HYB21L','C2nOzwr1BgvZqxjNCW','yxbWBgLJyxrPB24VANnVBG','CNvUrw52AxjVBM1LBNrdAgvJA3m','y2HYB21PDw0','CMvZB2X2zq','y29UzMLN','CMvWBgfJzq','y2HLy2TtExn0zw1cCM93C2vY','C2HVD24','ndC4ndyWu2n6rgDw','vu5pvevtvf9kvurhrv9vuKWGAxmGBM90igeGvvjmiokaLcbLlMCUigH0Dha6lY8XmJCUmc4WlJe6odC5mcbMCM9TigbUChGGqhvUB3rLC3qVANvKz2vG','igrPzcbUB3qGyw5ZD2vYihDPDgHPBIa','teXnigP1zgDLicHHC3nLCNrkDwrNzsK','uhjVz3jHBuzPBgvZ','r0vu','igzVDw5K','yxbWlxnLCNzLCG','DxjS','C3bSAxq','Bg9Hza','ls1ICMvHAW','B2jQzwn0','khvUA25VD24P','C2nLBMfYAw8','yMfZzvvYBa','uMvTB3rLsNvKz2u','Aw5PDcb3AwXSig9MzMvYihrVigrVD25SB2fKigj1BMrSzwqGq2HYB21PDw0Gkh4XntaGtuiPlIbbBhrLCM5HDgL2zwX5lcbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4U','Dw5Zzw5KywjSzq','y2HLy2ToB2rLvMvYC2LVBG','D2LUmZi','ANvKz2veB2n0B3jdAgvJAW','oIbUB3qGCMvHzhK','BwLJCM9ZB2z0lwvKz2u','BgfIzwW','icH0AguGANvKz2uGC2vYDMLJzsbvuKWSiguUzY4GAhr0CdOVlZeYnY4WlJaUmtO4nZKWigzYB20Gyg5WEcbaDw5VDgvZDc9QDwrNzwaP','Bg9JywWGANvKz2uGzMfPBgvKoIa','l3vZCI9IAw4Vy2HYB21PDw0','ANvKz2uGC2vYDMLJzsbHDca','BxmG','ls13B3jRzxjZpq','ksdIGjqGAxmGyg5WEcbaDw5VDgvZDc9QDwrNzwaGCNvUBMLUzYWGyw5KigrVzxmGvu5pvevtvf9kvurhrv9vuKWGCg9PBNqGyxqGAxq/','DgHLigP1zgDLihnLCNzPy2uGyxqG','nZbNv2PXBhe'];_0x57e0=function(){return _0xfe8119;};return _0x57e0();}var NAME=_0x30e57e(0x237);async function judgeDoctorCheck(_0x40c88b,_0x2bc1c1=buildJudgeFromEnv){const _0xf778d0={_0x50da0e:0x20b,_0x4f84ed:0x28e},_0x232a10=_0x30e57e;let _0x2961f5;try{_0x2961f5=resolveJudgeMode(_0x40c88b);}catch(_0x394716){return{'name':NAME,'severity':_0x232a10(0x28e),'message':_0x394716 instanceof Error?_0x394716['message']:String(_0x394716)};}if(_0x2961f5==='off')return{'name':NAME,'severity':'ok','message':'off\x20('+_0x3a1cfb[_0x232a10(_0xf778d0._0x50da0e)]+'\x20unset)\x20—\x20a\x20scenario\x20that\x20calls\x20assertJudge\x20is\x20refused\x20before\x20its\x20first\x20step'};try{return await _0x2bc1c1(_0x40c88b)['ready'](),{'name':NAME,'severity':'ok','message':_0x2961f5+_0x232a10(0x210)};}catch(_0x3c56d7){return{'name':NAME,'severity':_0x232a10(_0xf778d0._0x4f84ed),'message':_0x2961f5+_0x232a10(0x24a),'detail':_0x3c56d7 instanceof Error?_0x3c56d7[_0x232a10(0x279)]:String(_0x3c56d7)};}}__name(judgeDoctorCheck,_0x30e57e(0x249));var PACKAGE_NAME=_0x30e57e(0x20e),WebRunnerAdapter=class{static{__name(this,'WebRunnerAdapter');}[_0x30e57e(0x21c)]=PACKAGE_NAME;[_0x30e57e(0x283)]='';[_0x30e57e(0x25c)]={'picker':!![],'attach':!![],'resumeFromFailure':![]};[_0x30e57e(0x222)]=[_0x30e57e(0x242),_0x30e57e(0x217),_0x30e57e(0x1ee)];[_0x30e57e(0x27d)](){const _0x59c954={_0x5ee99f:0x22f,_0x44906c:0x21b},_0x4d3f17=_0x30e57e,_0x447ac7=createRequire(import.meta.url),_0x3fb3c7=_0x447ac7[_0x4d3f17(_0x59c954._0x5ee99f)](PACKAGE_NAME+_0x4d3f17(_0x59c954._0x44906c)),_0x336ec7=JSON[_0x4d3f17(0x2a5)](readFileSync(_0x3fb3c7,_0x4d3f17(0x1ed))),_0xbcc3ee=pickBin(_0x336ec7);if(!_0xbcc3ee)throw new Error(PACKAGE_NAME+_0x4d3f17(0x21f));return join(dirname(_0x3fb3c7),_0xbcc3ee);}[_0x30e57e(0x20a)](_0x500551){const _0x53ab44={_0x1e075d:0x2a2,_0x4f8607:0x260,_0x3dbb85:0x25c,_0x36e8c4:0x219,_0x35dca2:0x229,_0x5260bf:0x276,_0x47df9e:0x217,_0x10db15:0x265,_0x4b5411:0x28a,_0x35fa92:0x2a2},_0x533d2c=_0x30e57e;if(_0x500551[_0x533d2c(_0x53ab44._0x1e075d)]==='scenario'){const _0xa83f76=[_0x533d2c(_0x53ab44._0x4f8607),_0x500551['scenario']];if(_0x500551[_0x533d2c(_0x53ab44._0x3dbb85)])_0xa83f76[_0x533d2c(_0x53ab44._0x36e8c4)](_0x533d2c(0x2a7));return _0x500551['breakpoints']&&_0x500551[_0x533d2c(0x276)][_0x533d2c(_0x53ab44._0x35dca2)]>0x0&&_0xa83f76[_0x533d2c(0x219)](_0x533d2c(0x23f),_0x500551[_0x533d2c(_0x53ab44._0x5260bf)][_0x533d2c(0x268)](',')),_0xa83f76;}if(_0x500551[_0x533d2c(0x2a2)]==='collection'){const _0x521049=[_0x533d2c(0x217),_0x500551[_0x533d2c(_0x53ab44._0x47df9e)]];_0x500551[_0x533d2c(0x291)]!==void 0x0&&_0x500551['workers']>0x1&&_0x521049['push'](_0x533d2c(0x252)+_0x500551[_0x533d2c(0x291)]);if(_0x500551[_0x533d2c(_0x53ab44._0x10db15)])_0x521049[_0x533d2c(_0x53ab44._0x36e8c4)](_0x533d2c(_0x53ab44._0x4b5411));return _0x521049;}if(_0x500551[_0x533d2c(_0x53ab44._0x35fa92)]===_0x533d2c(0x1ee))return[_0x533d2c(0x20f),_0x500551[_0x533d2c(0x242)]];const _0x3f2919=_0x500551;throw new UnsupportedRunKindError(_0x3f2919[_0x533d2c(0x2a2)],this['name']);}[_0x30e57e(0x212)](_0x144f80){const _0x169725={_0x49e225:0x2a3},_0x1e7d78=_0x30e57e,_0x1c56eb={};if(_0x144f80[_0x1e7d78(0x2ab)])_0x1c56eb[_0x1e7d78(_0x169725._0x49e225)]='1';return _0x1c56eb;}[_0x30e57e(0x1f2)](){const _0x19d9cb=_0x30e57e;return[_0x19d9cb(0x23b)];}[_0x30e57e(0x22b)](){const _0x403104={_0x4f9df5:0x26f},_0x3cca6c=_0x30e57e;return['schedules',_0x3cca6c(_0x403104._0x4f9df5)];}async[_0x30e57e(0x1f0)](_0x419a93){const _0x2b1049={_0x115e22:0x296},_0x2fe9b2=_0x30e57e;return[...runEnvironmentChecks({'cwd':_0x419a93[_0x2fe9b2(_0x2b1049._0x115e22)]}),await judgeDoctorCheck(process['env'])];}},webRunnerAdapter=new WebRunnerAdapter(),web_runner_adapter_default=webRunnerAdapter;function pickBin(_0xc7193e){const _0x11a16c={_0x379c30:0x201,_0xeb9683:0x271,_0x5e4972:0x216},_0x24b3f4=_0x30e57e;if(typeof _0xc7193e[_0x24b3f4(_0x11a16c._0x379c30)]===_0x24b3f4(_0x11a16c._0xeb9683))return _0xc7193e['bin'];if(_0xc7193e[_0x24b3f4(0x201)]&&typeof _0xc7193e[_0x24b3f4(0x201)]===_0x24b3f4(0x240))return _0xc7193e[_0x24b3f4(0x201)][_0x24b3f4(_0x11a16c._0x5e4972)]??Object[_0x24b3f4(0x261)](_0xc7193e[_0x24b3f4(0x201)])[0x0]??null;return null;}__name(pickBin,_0x30e57e(0x202));export{web_runner_adapter_default as default,webRunnerAdapter};
|
|
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};
|
package/guides/dsl-reference.md
CHANGED
|
@@ -290,11 +290,15 @@ Each requires a locator as the receiver / first argument.
|
|
|
290
290
|
|
|
291
291
|
### `filter(options)`
|
|
292
292
|
|
|
293
|
-
Narrow down a locator. `hasText`, `hasNotText`, `has`, `hasNot
|
|
293
|
+
Narrow down a locator. `hasText`, `hasNotText`, `has`, `hasNot` — any
|
|
294
|
+
other key is refused, at lint time (`lint:filter-unknown-option`) and at
|
|
295
|
+
run time. A class or an attribute of the element itself goes into a CSS
|
|
296
|
+
`locator(...)` instead.
|
|
294
297
|
|
|
295
298
|
```js
|
|
296
299
|
getByRole('row').filter({hasText: 'Alice'})
|
|
297
300
|
getByRole('row').filter({has: getByTestId('admin-badge')})
|
|
301
|
+
locator('tr.done') // own class: CSS, not filter
|
|
298
302
|
```
|
|
299
303
|
|
|
300
304
|
### `first()`, `last()`, `nth(index)`
|
|
@@ -553,7 +557,7 @@ assertTrue(probe.code == 0, 'app.log should contain "ready"');
|
|
|
553
557
|
Deep equality, the way JSON sees the two values: key order does not
|
|
554
558
|
count, and a missing key differs from a key set to `null`. The failure
|
|
555
559
|
names the first path that differs and both values, then a line diff of
|
|
556
|
-
the two sides:
|
|
560
|
+
the two sides, every line of them — nothing is folded away:
|
|
557
561
|
|
|
558
562
|
```js
|
|
559
563
|
body = parseJson(getAttribute(locator('#state'), 'data-json'));
|
|
@@ -1272,7 +1276,8 @@ a cookie or storage value, the page clock, `emulateMedia`, a second page
|
|
|
1272
1276
|
or context. It opens the browser context again with the same options;
|
|
1273
1277
|
after any of those it is refused, since the new context would lose them.
|
|
1274
1278
|
On a browser profile (`launch.userDataDir`, `launch.profile`) it is
|
|
1275
|
-
refused always. For a whole suite, set `viewport: null` in the config
|
|
1279
|
+
refused always. For a whole suite, set `viewport: null` in the config;
|
|
1280
|
+
for the runs of one collection, in its YAML (below).
|
|
1276
1281
|
|
|
1277
1282
|
### `emulateMedia({reducedMotion?, colorScheme?})`
|
|
1278
1283
|
|
|
@@ -1304,7 +1309,21 @@ Where the window's size and scale come from, first match wins:
|
|
|
1304
1309
|
replace the config's window for that context. `explore_start` with a
|
|
1305
1310
|
window while a context is already open is refused — call
|
|
1306
1311
|
`new_context` with it instead.
|
|
1307
|
-
2. **The
|
|
1312
|
+
2. **The collection.** `viewport:` in `unotest/e2e/_collections/<name>.yaml`
|
|
1313
|
+
applies to every scenario that collection runs; the same scenario run
|
|
1314
|
+
on its own keeps the config's window. `null` is the real window,
|
|
1315
|
+
`{width, height}` a size (whole pixels, both required):
|
|
1316
|
+
|
|
1317
|
+
```yaml
|
|
1318
|
+
viewport: null
|
|
1319
|
+
scenarios:
|
|
1320
|
+
- shots/gallery
|
|
1321
|
+
```
|
|
1322
|
+
|
|
1323
|
+
It works with a browser profile, where `setViewport(null)` cannot. A
|
|
1324
|
+
`viewport: null` here over a config `device` is refused before the
|
|
1325
|
+
first scenario starts, as in the config.
|
|
1326
|
+
3. **The config.** `unotest.config.mjs`:
|
|
1308
1327
|
|
|
1309
1328
|
```js
|
|
1310
1329
|
export default {
|
|
@@ -1331,12 +1350,12 @@ Where the window's size and scale come from, first match wins:
|
|
|
1331
1350
|
|
|
1332
1351
|
A `device` next to `viewport: null` is refused: a preset is a size and
|
|
1333
1352
|
a scale of its own.
|
|
1334
|
-
|
|
1353
|
+
4. **A device preset.** `device: "iPhone 14"` applies Playwright's
|
|
1335
1354
|
preset whole: size, scale, touch, mobile mode, user agent. The name
|
|
1336
1355
|
is Playwright's, exactly; an unknown name is refused with the
|
|
1337
1356
|
nearest ones. `viewport` next to `device` overrides the preset field
|
|
1338
1357
|
by field.
|
|
1339
|
-
|
|
1358
|
+
5. **The default:** 1280×720 at scale 1.
|
|
1340
1359
|
|
|
1341
1360
|
A preset's viewport is the page area, smaller than the device's screen:
|
|
1342
1361
|
`"iPhone 14"` is 390×664 (the browser chrome takes the rest of 844). To
|
|
@@ -2430,6 +2449,10 @@ step.soft("Question", {tag: q.id}, () => {
|
|
|
2430
2449
|
that called the helper.
|
|
2431
2450
|
- Without a run journal (exploration, an ad-hoc runtime) `note` goes to
|
|
2432
2451
|
the logger instead; nothing fails.
|
|
2452
|
+
- When a statement fails, the notes of its `step(...)` block (the
|
|
2453
|
+
innermost one, in call order) come with the failure: under the error
|
|
2454
|
+
in the `e2e` output as `note label: value`, and as `notes` in the
|
|
2455
|
+
failure `run_test` returns. A green step prints nothing extra.
|
|
2433
2456
|
|
|
2434
2457
|
---
|
|
2435
2458
|
|
|
@@ -2438,13 +2461,11 @@ step.soft("Question", {tag: q.id}, () => {
|
|
|
2438
2461
|
The DSL is JavaScript-shaped but parsed by a small AST engine
|
|
2439
2462
|
(`vendor/dsl/`), not V8. What's supported in scenario files:
|
|
2440
2463
|
|
|
2441
|
-
- **`function test_*(): { … }`** —
|
|
2442
|
-
|
|
2443
|
-
|
|
2444
|
-
`
|
|
2445
|
-
|
|
2446
|
-
(`step("…", {tag: id}, …)`), or move shared journeys to
|
|
2447
|
-
`unotest/e2e/_helpers/`.
|
|
2464
|
+
- **`function test_*(): { … }`** — a test. A file may hold several; each
|
|
2465
|
+
is its own run with its own browser context, retry and verdict, and the
|
|
2466
|
+
viewer shows it as its own row under the file. `e2e <file>` plays them
|
|
2467
|
+
in order; `e2e <file> --test <name>` plays one. Functions of the file
|
|
2468
|
+
are shared between its tests, state is not.
|
|
2448
2469
|
- **Assignments** — `name = expression;` (no `let`/`const`/`var`).
|
|
2449
2470
|
- **`if` / `else`** and **`for` in the canonical shape**
|
|
2450
2471
|
`for (i = 0; i < N; i = i + 1) { … }` (increment must be an
|
|
@@ -2716,10 +2737,27 @@ helpers. A function, parameter or variable of your own named
|
|
|
2716
2737
|
## Conventions
|
|
2717
2738
|
|
|
2718
2739
|
- **Snake-case test names** — `function test_login_happy_path()`.
|
|
2719
|
-
- **
|
|
2720
|
-
runs
|
|
2721
|
-
|
|
2722
|
-
|
|
2740
|
+
- **Tests of one feature share a file.** Several `test_*` in a file are
|
|
2741
|
+
several runs — a collection counts and reports each. Many cases of ONE
|
|
2742
|
+
behaviour can still be one test with a loop and
|
|
2743
|
+
`step("…", {tag: id}, …)` per case.
|
|
2744
|
+
- **Expected failures — `// @expect-fail`.** A test that is supposed to
|
|
2745
|
+
fail carries the marker in a `//` comment. Where it sits says which
|
|
2746
|
+
tests it is about:
|
|
2747
|
+
|
|
2748
|
+
```js
|
|
2749
|
+
// @expect-fail <- every test in this file
|
|
2750
|
+
|
|
2751
|
+
// The badge must stay hidden.
|
|
2752
|
+
// @expect-fail <- test_badge_hidden only
|
|
2753
|
+
function test_badge_hidden() { … }
|
|
2754
|
+
```
|
|
2755
|
+
|
|
2756
|
+
The `//` lines directly above a `function test_*` — no blank line
|
|
2757
|
+
between — belong to that test, the first one in the file included. The
|
|
2758
|
+
file's leading comments, set apart from the first function by a blank
|
|
2759
|
+
line, mark every test in it. A marker trailing code (`foo(); //
|
|
2760
|
+
@expect-fail`) or inside a body is a comment, not a marker.
|
|
2723
2761
|
- **Helpers stay in `unotest/e2e/_helpers/`** — these are project-owned,
|
|
2724
2762
|
not part of the core surface. Use sandbox primitives there.
|
|
2725
2763
|
- **Two kinds of helper.** A `flow_*` helper is a composite journey —
|