@ranger-testing/ranger-cli 2.5.2 → 2.5.3
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/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x5fee67,_0x51ae66){const _0x39c187=_0xa7ad,_0x22d472=_0x5fee67();while(!![]){try{const _0x5c38bd=parseInt(_0x39c187(0x1d0))/0x1*(-parseInt(_0x39c187(0x195))/0x2)+-parseInt(_0x39c187(0x1c3))/0x3*(-parseInt(_0x39c187(0x1dd))/0x4)+parseInt(_0x39c187(0x1e6))/0x5+-parseInt(_0x39c187(0x1cf))/0x6+parseInt(_0x39c187(0x19e))/0x7*(parseInt(_0x39c187(0x18e))/0x8)+-parseInt(_0x39c187(0x1c6))/0x9+-parseInt(_0x39c187(0x16a))/0xa*(-parseInt(_0x39c187(0x177))/0xb);if(_0x5c38bd===_0x51ae66)break;else _0x22d472['push'](_0x22d472['shift']());}catch(_0x473405){_0x22d472['push'](_0x22d472['shift']());}}}(_0x5c69,0x21b6d));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function _0xa7ad(_0x1ab5f8,_0x96f80f){_0x1ab5f8=_0x1ab5f8-0x160;const _0x5c69a7=_0x5c69();let _0xa7ad0f=_0x5c69a7[_0x1ab5f8];return _0xa7ad0f;}function truncatePreview(_0xdf706b,_0x226825=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x52ede4=_0xa7ad,_0x18bc63={'mMXyA':function(_0x856584,_0x48ad38){return _0x856584+_0x48ad38;},'xDeJV':'...'};return _0xdf706b['length']>_0x226825?_0x18bc63['mMXyA'](_0xdf706b['slice'](0x0,_0x226825),_0x18bc63[_0x52ede4(0x17e)]):_0xdf706b;}function buildCliArtifactPath(_0x4473d9,_0x2e8519){const _0xd618e9={'TSAkr':function(_0xdcd691,_0x2fe9ba,_0x4a72f3){return _0xdcd691(_0x2fe9ba,_0x4a72f3);}};return _0xd618e9['TSAkr'](join,_0x4473d9,_0x2e8519);}function toStepDisplayName(_0x3c1ad1){const _0x179a4b=_0xa7ad,_0x148307={'NlBms':function(_0x2a0273,_0x5711cb){return _0x2a0273(_0x5711cb);}},_0x37eaeb=basename(_0x3c1ad1)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x179a4b(0x19c)](/^\d+_/,'')[_0x179a4b(0x19c)](/-/g,'\x20');return{'name':_0x37eaeb,'isKeyStep':/^key_/i[_0x179a4b(0x1d6)](_0x148307[_0x179a4b(0x1e0)](basename,_0x3c1ad1))};}function extractShellValue(_0x2dafb3){if(!_0x2dafb3)return null;return _0x2dafb3[0x1]??_0x2dafb3[0x2]??_0x2dafb3[0x3]??null;}function extractFilenameOption(_0x3b17ad){const _0x45d47f=_0xa7ad,_0x179423={'Wguzy':function(_0xccc00,_0x8babf4){return _0xccc00(_0x8babf4);}};return _0x179423[_0x45d47f(0x199)](extractShellValue,_0x3b17ad['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x1bcc24,_0x56b8d7){const _0x78a6d3=_0xa7ad,_0x42ca07={'jDaXc':function(_0x1dd365,_0x4b9e07){return _0x1dd365(_0x4b9e07);}},_0x157668=_0x56b8d7[_0x78a6d3(0x19c)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return _0x42ca07[_0x78a6d3(0x193)](extractShellValue,_0x1bcc24['match'](new RegExp('(?:^|\x5cs)'+_0x157668+_0x78a6d3(0x1e4))));}function formatCommandTarget(_0x5a7ecb){const _0x2bfca4=_0xa7ad;if(!_0x5a7ecb)return _0x2bfca4(0x1e1);if(/^e\d+$/i[_0x2bfca4(0x1d6)](_0x5a7ecb))return'ref\x20'+_0x5a7ecb;return JSON[_0x2bfca4(0x162)](truncatePreview(_0x5a7ecb,0x78));}function formatPlaywrightCliLog(_0x29ca5e,_0x41b782){const _0x49b6c8=_0xa7ad,_0x552665={'anmmC':_0x49b6c8(0x1c1),'PJnPA':'open\x20browser','xFtkD':'tracing-start','icAfa':'start\x20tracing','hDvVk':_0x49b6c8(0x1ac),'gONWj':'start\x20video\x20recording','abPCu':'snapshot','JFoxF':function(_0x8e3db5,_0x2cfb1e){return _0x8e3db5(_0x2cfb1e);},'rsLOR':'capture\x20snapshot','xgokr':function(_0x2abec7,_0xad73ce){return _0x2abec7(_0xad73ce);},'iFbZd':_0x49b6c8(0x192),'ZRLHz':function(_0x49dcbb,_0x120c6e,_0x1df56e){return _0x49dcbb(_0x120c6e,_0x1df56e);},'JelpT':function(_0x16212a,_0x5898c7,_0x3fefe1){return _0x16212a(_0x5898c7,_0x3fefe1);},'Hzlqr':_0x49b6c8(0x1de),'unlAQ':_0x49b6c8(0x165),'rRqJa':_0x49b6c8(0x188),'rTIKz':'tab-select'};switch(_0x41b782){case _0x552665['anmmC']:{const _0x3ced6e=extractFirstCommandArgument(_0x29ca5e,_0x41b782);return _0x3ced6e?'open\x20'+_0x3ced6e:_0x552665[_0x49b6c8(0x183)];}case _0x552665['xFtkD']:return _0x552665['icAfa'];case _0x552665[_0x49b6c8(0x189)]:return _0x49b6c8(0x190);case _0x49b6c8(0x167):return _0x552665['gONWj'];case'video-stop':return _0x49b6c8(0x171);case _0x552665['abPCu']:{const _0x536218=_0x552665[_0x49b6c8(0x187)](extractFilenameOption,_0x29ca5e);if(!_0x536218)return _0x552665['rsLOR'];const {name:_0x7fb1ee}=toStepDisplayName(_0x536218);return _0x49b6c8(0x1ab)+_0x7fb1ee+'`';}case'screenshot':{const _0x4bbbd2=_0x552665[_0x49b6c8(0x187)](extractFilenameOption,_0x29ca5e);if(!_0x4bbbd2)return _0x49b6c8(0x1c7);const {name:_0x21a3d5,isKeyStep:_0x3208d4}=_0x552665['xgokr'](toStepDisplayName,_0x4bbbd2);return _0x3208d4?'capture\x20key\x20step\x20`'+_0x21a3d5+'`':_0x49b6c8(0x19a)+_0x21a3d5+'`';}case _0x49b6c8(0x176):return _0x49b6c8(0x17c)+formatCommandTarget(extractFirstCommandArgument(_0x29ca5e,_0x41b782));case _0x552665['iFbZd']:return'check\x20'+formatCommandTarget(_0x552665['ZRLHz'](extractFirstCommandArgument,_0x29ca5e,_0x41b782));case _0x49b6c8(0x18c):return'fill\x20'+_0x552665['JFoxF'](formatCommandTarget,_0x552665['JelpT'](extractFirstCommandArgument,_0x29ca5e,_0x41b782));case _0x552665['Hzlqr']:return'press\x20'+formatCommandTarget(_0x552665['JelpT'](extractFirstCommandArgument,_0x29ca5e,_0x41b782));case _0x49b6c8(0x1cc):return _0x552665[_0x49b6c8(0x175)];case'tab-new':{const _0x2aa2a8=extractFirstCommandArgument(_0x29ca5e,_0x41b782);return _0x2aa2a8?_0x49b6c8(0x1d4)+_0x2aa2a8:_0x552665['rRqJa'];}case _0x552665['rTIKz']:{const _0x3ff622=_0x552665[_0x49b6c8(0x1a3)](extractFirstCommandArgument,_0x29ca5e,_0x41b782);return _0x3ff622?_0x49b6c8(0x1b5)+_0x3ff622:'select\x20tab';}default:return _0x41b782;}}function extractPlaywrightCliToolDescription(_0x2db1d5){const _0xf9a1d0=_0xa7ad,_0x159f9b={'TuWrv':'string'},_0x31fee9=_0x2db1d5[_0xf9a1d0(0x1bb)];if(typeof _0x31fee9!==_0x159f9b[_0xf9a1d0(0x197)])return null;const _0x10b242=_0x31fee9['trim']()[_0xf9a1d0(0x19c)](/\s+/g,'\x20');return _0x10b242[_0xf9a1d0(0x178)]>0x0?_0x10b242:null;}export function formatPlaywrightCliConsoleLogMessage(_0x4ee31c,_0x2742f2,_0x1847e7){const _0x285c6e=_0xa7ad,_0x314960={'JVvtI':function(_0xd5e264,_0x2598ed){return _0xd5e264(_0x2598ed);}},_0x4e8c9d=formatPlaywrightCliLog(_0x2742f2,_0x1847e7),_0x3b07c0=_0x314960[_0x285c6e(0x16f)](extractPlaywrightCliToolDescription,_0x4ee31c);if(!_0x3b07c0)return _0x285c6e(0x1b2)+_0x4e8c9d;if(process[_0x285c6e(0x1d9)]['DEBUG'])return _0x285c6e(0x1a2)+_0x3b07c0+'\x20('+_0x4e8c9d+')';return'[ranger-verification-agent]\x20'+_0x3b07c0;}export function buildVerifyFeatureCliDebugPrompt(_0x49dd72,_0x4b4e99){const _0x2bee39=_0xa7ad,_0x576fec={'PQLOD':function(_0x15a264,_0x5dd720,_0x3eac2b){return _0x15a264(_0x5dd720,_0x3eac2b);},'SNIxV':'02_learn-more.yml','vTcPd':'03_learn-more.png','svgJw':function(_0x28931e,_0x1256aa){return _0x28931e(_0x1256aa);}},_0x46ba7d=_0x576fec['PQLOD'](buildCliArtifactPath,_0x4b4e99,_0x2bee39(0x173)),_0x1e0bdc=buildCliArtifactPath(_0x4b4e99,_0x2bee39(0x1b7)),_0x3e80d1=buildCliArtifactPath(_0x4b4e99,_0x576fec['SNIxV']),_0x3b235b=_0x576fec['PQLOD'](buildCliArtifactPath,_0x4b4e99,_0x576fec['vTcPd']),_0x47dfb2=_0x576fec['svgJw'](quoteShellArg,_0x46ba7d),_0x5790c8=quoteShellArg(_0x1e0bdc),_0x30d83a=_0x576fec['svgJw'](quoteShellArg,_0x3e80d1),_0x552ac7=quoteShellArg(_0x3b235b);return _0x2bee39(0x1b6)+_0x49dd72+_0x2bee39(0x194)+_0x49dd72+_0x2bee39(0x1bd)+_0x49dd72+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x49dd72+_0x2bee39(0x1d2)+_0x4b4e99+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x49dd72+_0x2bee39(0x163)+_0x47dfb2+_0x2bee39(0x1a0)+_0x49dd72+'\x20screenshot\x20--filename\x20'+_0x5790c8+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x49dd72+_0x2bee39(0x163)+_0x30d83a+_0x2bee39(0x170)+_0x49dd72+'\x20screenshot\x20--filename\x20'+_0x552ac7+_0x2bee39(0x1b9);}export function buildVerifyFeatureCliPrompt(_0x2d43f1){const _0x201733=_0xa7ad,_0x707f95={'POqiv':_0x201733(0x174),'eNyTT':function(_0x47822a,_0x256840,_0x42ee22){return _0x47822a(_0x256840,_0x42ee22);},'Czgur':_0x201733(0x1cd),'VJAmX':_0x201733(0x1c8),'psdfS':function(_0x182ba4,_0x58896e){return _0x182ba4(_0x58896e);},'FZEhn':function(_0x4263ad,_0x145525){return _0x4263ad(_0x145525);},'EdqfD':function(_0x48a084,_0x35b581){return _0x48a084(_0x35b581);},'bhPnk':function(_0x24b290,_0x35160e,_0x2abfec){return _0x24b290(_0x35160e,_0x2abfec);},'nniZP':function(_0x26c3a2,_0x4089a8,_0xcfa128){return _0x26c3a2(_0x4089a8,_0xcfa128);},'leHLf':_0x201733(0x1db)},{checklistItem:_0x5406d5,itemFeedback:_0x37fb99,taskDescription:_0x1be95a,cliCommandPrefix:_0x7e80c5,cliArtifactDir:_0x53ff62,isCdpMode:_0x3bc784,url:_0x58a998,cdpEndpoint:_0x348791,loginInstructions:_0x5075ec}=_0x2d43f1,_0x569c0d=_0x707f95['eNyTT'](buildCliArtifactPath,_0x53ff62,_0x707f95[_0x201733(0x1e2)]),_0x12dc21=_0x707f95['eNyTT'](buildCliArtifactPath,_0x53ff62,_0x201733(0x181)),_0x23a3f6=buildCliArtifactPath(_0x53ff62,'key_03_success-state.png'),_0x52fa9a=buildCliArtifactPath(_0x53ff62,_0x707f95['VJAmX']),_0xa205eb=quoteShellArg(_0x569c0d),_0x39a90a=_0x707f95[_0x201733(0x16d)](quoteShellArg,_0x12dc21),_0x4ba869=quoteShellArg(_0x23a3f6),_0x14a9f4=_0x707f95[_0x201733(0x1a7)](quoteShellArg,_0x52fa9a),_0x1dbb80=_0x5406d5['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x5406d5['notes']:'';let _0x46cc99='';if(_0x37fb99&&_0x37fb99['unaddressedComments'][_0x201733(0x178)]>0x0){const _0x4b3553=_0x37fb99['unaddressedComments']['map'](_0x3fea6a=>{const _0x49ce88=_0x201733,_0x5b6347=new Date(_0x3fea6a[_0x49ce88(0x17f)])['toLocaleDateString'](_0x49ce88(0x18d),{'month':'short','day':_0x49ce88(0x1c0)}),_0x4def1c=_0x3fea6a[_0x49ce88(0x1a8)]||_0x3fea6a[_0x49ce88(0x169)]||_0x707f95['POqiv'],_0x1f0064=_0x3fea6a[_0x49ce88(0x1d1)]?'\x20(on\x20element:\x20<'+(_0x3fea6a['domRef']['selector'][_0x49ce88(0x196)](_0x49ce88(0x179))[_0x49ce88(0x17b)]()?.[_0x49ce88(0x196)](':')[0x0]||_0x49ce88(0x1e3))+_0x49ce88(0x18b)+(_0x3fea6a['domRef'][_0x49ce88(0x1b8)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x3fea6a['id']+']\x20**'+_0x4def1c+'**\x20('+_0x5b6347+'):\x20\x22'+_0x3fea6a['content']+'\x22'+_0x1f0064;})[_0x201733(0x164)]('\x0a');_0x46cc99=_0x201733(0x16c)+_0x4b3553;}const _0x39ffbb=_0x37fb99?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x37fb99[_0x201733(0x1e7)]:'',_0x51418f=_0x3bc784?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x348791+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x58a998+_0x201733(0x1ad),_0x4f6c2e=_0x58a998?_0x707f95['EdqfD'](quoteShellArg,_0x58a998):'',_0x1d2c89=_0x3bc784?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x7e80c5+'\x20open`,\x20then\x20`'+_0x7e80c5+'\x20tracing-start`,\x20then\x20`'+_0x7e80c5+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x53ff62+_0x201733(0x1ba)+_0x7e80c5+'\x20snapshot\x20--filename\x20'+_0xa205eb+_0x201733(0x166)+_0x7e80c5+_0x201733(0x168)+_0x14a9f4+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x7e80c5+'\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario':_0x201733(0x1da)+_0x7e80c5+'\x20open\x20'+_0x4f6c2e+_0x201733(0x19d)+_0x7e80c5+'\x20tracing-start`,\x20then\x20`'+_0x7e80c5+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x53ff62+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x7e80c5+_0x201733(0x163)+_0xa205eb+_0x201733(0x1d7)+_0x7e80c5+_0x201733(0x168)+_0x14a9f4+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x7e80c5+_0x201733(0x160),_0x972138=_0x3bc784?_0x201733(0x185):'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x5a3f9e=_0x5075ec?_0x201733(0x1c4)+_0x5075ec+_0x201733(0x1d5):'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x5406d5['description']+_0x1dbb80+_0x46cc99+_0x39ffbb+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x1be95a+'\x0a\x0a'+_0x51418f+_0x5a3f9e+'\x0a\x0a'+_0x1d2c89+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x7e80c5+_0x201733(0x1aa)+_0x53ff62+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x39a90a+_0x201733(0x1c2)+_0x4ba869+'`\x0a-\x20`run-code\x20\x22await\x20page.waitForTimeout(1000)\x22`\x20for\x20waits\x20or\x20small\x20custom\x20checks\x0a\x0a##\x20Screenshot\x20Guidelines\x20-\x20IMPORTANT\x0aTake\x20screenshots\x20throughout\x20the\x20verification\x20flow\x20so\x20a\x20human\x20can\x20review\x20it\x20for\x20completeness.\x20Screenshots\x20are\x20your\x20evidence\x20trail.\x0a\x0a**When\x20to\x20take\x20screenshots\x20(use\x20Playwright\x20CLI\x20screenshot):**\x0a-\x20After\x20the\x20initial\x20snapshot\x20(capture\x20starting\x20state)\x0a-\x20Before\x20and\x20after\x20clicking\x20buttons\x20or\x20submitting\x20forms\x0a-\x20When\x20important\x20UI\x20elements\x20appear\x20(modals,\x20notifications,\x20loading\x20states)\x0a-\x20After\x20navigating\x20to\x20different\x20views\x20or\x20pages\x0a-\x20When\x20verifying\x20specific\x20elements\x20exist\x0a-\x20At\x20the\x20final\x20state\x20showing\x20the\x20completed\x20action\x0a\x0a**Screenshot\x20naming:**\x0a-\x20Use\x20descriptive\x20filenames\x20under\x20`'+_0x53ff62+_0x201733(0x18a)+_0x52fa9a+_0x201733(0x1ca)+_0x707f95['bhPnk'](buildCliArtifactPath,_0x53ff62,'02_button-clicked.png')+_0x201733(0x1ca)+_0x707f95['nniZP'](buildCliArtifactPath,_0x53ff62,_0x707f95['leHLf'])+_0x201733(0x1b0)+_0x707f95[_0x201733(0x1c9)](buildCliArtifactPath,_0x53ff62,_0x201733(0x1df))+'\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a'+_0x972138+_0x201733(0x1c5);}export function summarizeVerifyFeatureCliCommandAvailability(_0x1914fa){const _0x25737d=_0xa7ad,_0x2c9337={'XPBYZ':function(_0x1cb61a,_0x7db460){return _0x1cb61a===_0x7db460;}},_0x51dc0b=[..._0x1914fa['keys']()]['sort']();let _0x3fe9fc=0x0;for(const _0x40ffa5 of _0x1914fa[_0x25737d(0x1a9)]()){_0x3fe9fc+=_0x40ffa5;}return{'cliCommandCount':_0x3fe9fc,'cliCommandsSeen':_0x51dc0b,'noCliCommandsCalled':_0x2c9337[_0x25737d(0x1be)](_0x3fe9fc,0x0)};}export function createVerifyFeatureCliHooks(_0x271b71){const _0x29e546=_0xa7ad,_0x1517e1={'onSob':'Bash','Prnqp':function(_0x31ee28,_0x2288b6){return _0x31ee28(_0x2288b6);},'RivWm':_0x29e546(0x1b1),'SOAmd':function(_0x277a9b,_0x20f55a){return _0x277a9b!==_0x20f55a;},'iylyc':'PostToolUseFailure','jLABW':'tool_failure'},_0x190706=new Map(),_0x48075f=async _0x8e8b21=>{const _0x4e58a9=_0x29e546;if(_0x8e8b21[_0x4e58a9(0x1a4)]!==_0x4e58a9(0x1a5))return{};const _0x476e97=_0x8e8b21;if(_0x476e97[_0x4e58a9(0x1a6)]!==_0x1517e1['onSob'])return{};const _0x397b4a=_0x476e97['tool_input'],_0x1417b4=_0x1517e1[_0x4e58a9(0x1cb)](extractBashCommand,_0x397b4a);if(!_0x1417b4)return{};const _0x2248dc=_0x1517e1[_0x4e58a9(0x1cb)](parsePlaywrightCliCommand,_0x1417b4);if(!_0x2248dc)return{};return _0x190706[_0x4e58a9(0x198)](_0x2248dc,(_0x190706['get'](_0x2248dc)||0x0)+0x1),_0x271b71['trackPhaseStart'](_0x1517e1[_0x4e58a9(0x17a)],{'transport':'playwright-cli','toolName':_0x2248dc}),_0x271b71['trackPhaseEnd'](_0x4e58a9(0x1b1),{'transport':'playwright-cli','toolName':_0x2248dc,'bashCommandPreview':truncatePreview(_0x1417b4)}),_0x1517e1['SOAmd'](_0x2248dc,'snapshot')&&console['log'](formatPlaywrightCliConsoleLogMessage(_0x397b4a,_0x1417b4,_0x2248dc)),{};},_0x592b22=async _0x4f2e9d=>{const _0x378b29=_0x29e546;if(_0x1517e1['SOAmd'](_0x4f2e9d['hook_event_name'],_0x1517e1['iylyc']))return{};const _0x7e1321=_0x4f2e9d;if(_0x1517e1[_0x378b29(0x172)](_0x7e1321['tool_name'],'Bash'))return{};return await _0x271b71[_0x378b29(0x191)](_0x1517e1[_0x378b29(0x1e8)],_0x7e1321[_0x378b29(0x182)],{'transport':_0x378b29(0x1bf),'toolName':_0x1517e1[_0x378b29(0x1a1)]}),{};};return{'postToolUseHook':_0x48075f,'postToolUseFailureHook':_0x592b22,'commandCounts':_0x190706};}async function runPlaywrightCliLifecycleCommand(_0x42d0ef){const _0x18f94f=_0xa7ad,_0x58adad={'gmczd':function(_0x1155f9,_0x1e22d8){return _0x1155f9(_0x1e22d8);},'BIgth':function(_0x5874d4,_0x5c2ca5){return _0x5874d4??_0x5c2ca5;}},{sessionId:_0x46072b,configPath:_0x269380,commandArgs:_0x35d586,env:_0x3fa02a,telemetry:_0x3fad84,phase:_0x469955,metadata:_0x377856,timeoutMs:_0x2c68b8}=_0x42d0ef;_0x3fad84[_0x18f94f(0x1b3)](_0x469955,_0x377856);try{const _0x4e125f=await _0x58adad[_0x18f94f(0x19f)](runPlaywrightCliCommand,{'sessionId':_0x46072b,'configPath':_0x269380,'commandArgs':_0x35d586,'cwd':process['cwd'](),'env':_0x3fa02a,'timeoutMs':_0x58adad['BIgth'](_0x2c68b8,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x3fad84[_0x18f94f(0x19b)](_0x469955,{..._0x377856,'subcommand':_0x4e125f[_0x18f94f(0x161)]['subcommand'],'stdoutPreview':truncatePreview(_0x4e125f[_0x18f94f(0x16b)],0x7d0),'stderrPreview':truncatePreview(_0x4e125f[_0x18f94f(0x180)],0x7d0)});}catch(_0x141c6b){await _0x3fad84['trackPhaseError'](_0x469955,_0x141c6b,_0x377856);throw _0x141c6b;}}export async function finalizeVerifyFeatureCliSession(_0x18f256){const _0x23997e=_0xa7ad,_0x322d8b={'nKYEq':'playwright_cli_tracing_stop','vClub':_0x23997e(0x1d8),'tMrXD':_0x23997e(0x18f),'QgbAe':function(_0x156998,_0x291a7a,_0x4f8ad8){return _0x156998(_0x291a7a,_0x4f8ad8);},'ipcCc':_0x23997e(0x17d)},{telemetry:_0x2eb589,sessionId:_0x318fcc,configPath:_0x15ef00,cliArtifactDir:_0x3e8d1c,env:_0x2d6106,transportMetadata:_0x441b4f}=_0x18f256,_0x1a084c=[{'phase':_0x322d8b[_0x23997e(0x1ae)],'commandArgs':['tracing-stop']},{'phase':_0x322d8b[_0x23997e(0x184)],'commandArgs':[_0x322d8b[_0x23997e(0x1af)],_0x23997e(0x186)+_0x322d8b[_0x23997e(0x1e5)](buildCliArtifactPath,_0x3e8d1c,'session-recording.webm')]},{'phase':_0x322d8b['ipcCc'],'commandArgs':[_0x23997e(0x16e)]}];for(const _0x1c8b14 of _0x1a084c){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x318fcc,'configPath':_0x15ef00,'commandArgs':[..._0x1c8b14['commandArgs']],'env':_0x2d6106,'telemetry':_0x2eb589,'phase':_0x1c8b14['phase'],'metadata':_0x441b4f});}catch{}}}function _0x5c69(){const _0x37b53d=['target','Czgur','element','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','QgbAe','301110giZpAn','canonicalFlow','jLABW','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','invocation','stringify','\x20snapshot\x20--filename\x20','join','run\x20custom\x20Playwright\x20code','`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`','video-start','\x20screenshot\x20--filename\x20','authorEmail','10RaETaz','stdout','\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20(the\x20bracketed\x20value)\x20in\x20the\x20addressedCommentIds\x20array\x20in\x20your\x20output.\x0a\x0a','psdfS','close','JVvtI','`\x0a9.\x20Run\x20`','stop\x20video\x20recording','SOAmd','00_mozilla-homepage.yml','Reviewer','unlAQ','click','1382051EtrMhz','length','\x20>\x20','RivWm','pop','click\x20','playwright_cli_close','xDeJV','createdAt','stderr','02_state.yml','error','PJnPA','vClub','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','--filename=','JFoxF','open\x20new\x20tab','hDvVk','`:\x20\x22','>\x20\x22','fill','en-US','8dsTdma','video-stop','stop\x20tracing','trackPhaseError','check','jDaXc','\x0a\x0a1.\x20Run\x20`','64478stfkKs','split','TuWrv','set','Wguzy','capture\x20step\x20`','trackPhaseEnd','replace','`,\x20then\x20`','1821911QvIDjw','gmczd','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','onSob','[ranger-verification-agent]\x20','ZRLHz','hook_event_name','PostToolUse','tool_name','FZEhn','authorName','values','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','capture\x20snapshot\x20`','tracing-stop','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification','nKYEq','tMrXD','\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22','tool_call','[playwright-cli]\x20','trackPhaseStart','mtimeMs','select\x20tab\x20','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','01_mozilla-homepage.png','textContent','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','description','trace.zip','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','XPBYZ','playwright-cli','numeric','open','`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20','3IjXdTA','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.','1325664zDlfLi','capture\x20screenshot','01_initial-state.png','bhPnk','\x22,\x20\x22','Prnqp','run-code','01_initial.yml','name','545202NCLjpM','3bUMoKw','domRef','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','push','open\x20new\x20tab\x20','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','test','`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`','playwright_cli_video_stop','env','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','03_result-visible.png','isFile','107348cvSvkf','press','key_04_success-state.png','NlBms'];_0x5c69=function(){return _0x37b53d;};return _0x5c69();}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x5cf28f){const _0x3e4437=_0xa7ad,_0x44bcaa=[_0x3e4437(0x1bc),'trace.trace.zip'];for(const _0x4649e7 of _0x44bcaa){const _0x1bb5b8=join(_0x5cf28f,_0x4649e7);try{return{'buffer':await readFile(_0x1bb5b8),'source':_0x1bb5b8};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x3dbb9a){const _0x5d769e=_0xa7ad,_0x25ceb8={'mXvWK':function(_0x412a1b,_0x47e399,_0xb2eeec){return _0x412a1b(_0x47e399,_0xb2eeec);},'OBwLM':function(_0x58bbeb,_0x15d7ef,_0x498706){return _0x58bbeb(_0x15d7ef,_0x498706);},'EXrZp':function(_0x49ff0d,_0x471a14){return _0x49ff0d+_0x471a14;}},{cwd:_0x5ce9b0,cliArtifactDir:_0x5e22ab,startTime:_0x30378a}=_0x3dbb9a,_0x5974cf=[];await mkdir(_0x5e22ab,{'recursive':!![]});const _0x14d279=await _0x25ceb8['mXvWK'](readdir,_0x5ce9b0,{'withFileTypes':!![]});for(const _0x5cc58f of _0x14d279){if(!_0x5cc58f[_0x5d769e(0x1dc)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x5cc58f['name']))continue;const _0x5d3755=_0x25ceb8['OBwLM'](join,_0x5ce9b0,_0x5cc58f['name']),_0x5eccf9=await stat(_0x5d3755);if(_0x25ceb8['EXrZp'](_0x5eccf9[_0x5d769e(0x1b4)],0x7d0)<_0x30378a)continue;const _0x4c9a78=buildCliArtifactPath(_0x5e22ab,_0x5cc58f[_0x5d769e(0x1ce)]);if(_0x5d3755===_0x4c9a78)continue;await rename(_0x5d3755,_0x4c9a78),_0x5974cf[_0x5d769e(0x1d3)](_0x5cc58f['name']);}return _0x5974cf['sort']();}
|
|
1
|
+
(function(_0xc3785f,_0x6f68f4){const _0x1dcd5f=_0x1906,_0x14e9e8=_0xc3785f();while(!![]){try{const _0x2589a3=-parseInt(_0x1dcd5f(0x120))/0x1+-parseInt(_0x1dcd5f(0xbe))/0x2*(-parseInt(_0x1dcd5f(0x123))/0x3)+-parseInt(_0x1dcd5f(0xf3))/0x4+-parseInt(_0x1dcd5f(0xcd))/0x5+parseInt(_0x1dcd5f(0xfd))/0x6+parseInt(_0x1dcd5f(0xcc))/0x7*(parseInt(_0x1dcd5f(0x101))/0x8)+parseInt(_0x1dcd5f(0xda))/0x9*(parseInt(_0x1dcd5f(0x105))/0xa);if(_0x2589a3===_0x6f68f4)break;else _0x14e9e8['push'](_0x14e9e8['shift']());}catch(_0x476f29){_0x14e9e8['push'](_0x14e9e8['shift']());}}}(_0x3e1e,0xa034e));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function _0x3e1e(){const _0x595fd5=['nTWDe','--filename=','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','tool_call','mtimeMs','tZDQi','press','YwWpn','capture\x20snapshot','trackPhaseError','values','start\x20video\x20recording','fDzmm','02_state.yml','capture\x20snapshot\x20`','03_result-visible.png','QonmR','4266324YOKqMh','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22','\x0a\x0a##\x20Additional\x20Notes\x0a','\x22,\x20\x22','push','DEBUG','BlppD','mnoHK','snapshot','5525802DXcFnv','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','uBanL','221664iBYGYI','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','fill\x20','stderr','20QRFyQa','subcommand','jbeng','domRef','\x0a\x0a1.\x20Run\x20`','test','Hvgtu','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','pop','error','`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`','BLagu','pFnGX','):\x20\x22','trackPhaseEnd','textContent','numeric','unaddressedComments','tracing-stop','capture\x20screenshot','voKXt','description','close','canonicalFlow','BrLHk','selector','tool_input','195319OvhOKS','env','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','3045XmydOW','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','PostToolUseFailure','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','check','eEPeT','GlgiT','isFile','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','ZAcWi','name','dXKXI','set','XNYyU','-\x20[','playwright-cli','cFoBI','RqMat','`\x0a-\x20`run-code\x20\x22await\x20page.waitForTimeout(1000)\x22`\x20for\x20waits\x20or\x20small\x20custom\x20checks\x0a\x0a##\x20Screenshot\x20Guidelines\x20-\x20IMPORTANT\x0aTake\x20screenshots\x20throughout\x20the\x20verification\x20flow\x20so\x20a\x20human\x20can\x20review\x20it\x20for\x20completeness.\x20Screenshots\x20are\x20your\x20evidence\x20trail.\x0a\x0a**When\x20to\x20take\x20screenshots\x20(use\x20Playwright\x20CLI\x20screenshot):**\x0a-\x20After\x20the\x20initial\x20snapshot\x20(capture\x20starting\x20state)\x0a-\x20Before\x20and\x20after\x20clicking\x20buttons\x20or\x20submitting\x20forms\x0a-\x20When\x20important\x20UI\x20elements\x20appear\x20(modals,\x20notifications,\x20loading\x20states)\x0a-\x20After\x20navigating\x20to\x20different\x20views\x20or\x20pages\x0a-\x20When\x20verifying\x20specific\x20elements\x20exist\x0a-\x20At\x20the\x20final\x20state\x20showing\x20the\x20completed\x20action\x0a\x0a**Screenshot\x20naming:**\x0a-\x20Use\x20descriptive\x20filenames\x20under\x20`','ref\x20','\x20tracing-start`\x0a3.\x20Run\x20`','Bash','stop\x20tracing','map','invocation','authorName','ptAuM','mGyuo','iqcGc','EuGeZ','UVmLE','video-start','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','SesNj','hook_event_name','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','trace.zip','trim','run-code','\x20screenshot\x20--filename\x20','trackPhaseStart','cwd','fill','match','310MLINek','key_04_success-state.png','wccsK','split','\x20snapshot\x20--filename\x20','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','run\x20custom\x20Playwright\x20code','HFjfv','replace','tracing-start','stop\x20video\x20recording','yjvfV','open','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','259zPMeKY','6294320exfDXP','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','trace.trace.zip','tool_name','03_learn-more.png','element','`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','sort','(?:^|\x5cs)','HKBvu','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','JuCFV','4830669TvfbrR','commandArgs','janFE','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','02_button-clicked.png','press\x20','\x5c$&','NdWgF'];_0x3e1e=function(){return _0x595fd5;};return _0x3e1e();}function truncatePreview(_0x20ed24,_0x12edfc=PLAYWRIGHT_CLI_PREVIEW_LIMIT){return _0x20ed24['length']>_0x12edfc?_0x20ed24['slice'](0x0,_0x12edfc)+'...':_0x20ed24;}function buildCliArtifactPath(_0x245d07,_0x4424a1){const _0x24b3b6=_0x1906,_0x271358={'ZAcWi':function(_0x339ade,_0x417183,_0x2a62f0){return _0x339ade(_0x417183,_0x2a62f0);}};return _0x271358[_0x24b3b6(0x12c)](join,_0x245d07,_0x4424a1);}function _0x1906(_0x13987c,_0x98b125){_0x13987c=_0x13987c-0xa6;const _0x3e1ed9=_0x3e1e();let _0x190632=_0x3e1ed9[_0x13987c];return _0x190632;}function toStepDisplayName(_0x611250){const _0x123f57=_0x1906,_0x13e715={'HFjfv':function(_0x51ae87,_0x25eff2){return _0x51ae87(_0x25eff2);}},_0x20c995=_0x13e715[_0x123f57(0xc5)](basename,_0x611250)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x123f57(0xc6)](/-/g,'\x20');return{'name':_0x20c995,'isKeyStep':/^key_/i['test'](basename(_0x611250))};}function extractShellValue(_0x98f4b7){if(!_0x98f4b7)return null;return _0x98f4b7[0x1]??_0x98f4b7[0x2]??_0x98f4b7[0x3]??null;}function extractFilenameOption(_0x118230){return extractShellValue(_0x118230['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x584aef,_0x27887e){const _0x19e55c=_0x1906,_0x360d43={'SesNj':_0x19e55c(0xe0),'fDzmm':function(_0x4b211e,_0x4ab5d4){return _0x4b211e(_0x4ab5d4);}},_0x11889b=_0x27887e[_0x19e55c(0xc6)](/[.*+?^${}()|[\]\\]/g,_0x360d43[_0x19e55c(0xb3)]);return _0x360d43[_0x19e55c(0xee)](extractShellValue,_0x584aef[_0x19e55c(0xbd)](new RegExp(_0x19e55c(0xd6)+_0x11889b+_0x19e55c(0xe4))));}function formatCommandTarget(_0x44523f){const _0x1a2230=_0x1906,_0x56bc82={'plrAw':'target'};if(!_0x44523f)return _0x56bc82['plrAw'];if(/^e\d+$/i[_0x1a2230(0x10a)](_0x44523f))return _0x1a2230(0x136)+_0x44523f;return JSON['stringify'](truncatePreview(_0x44523f,0x78));}function formatPlaywrightCliLog(_0x22859d,_0x6085c3){const _0x460921=_0x1906,_0x313a2c={'tXGvZ':_0x460921(0xca),'nTWDe':function(_0x33ae35,_0x40a40f,_0x2804be){return _0x33ae35(_0x40a40f,_0x2804be);},'voKXt':'open\x20browser','uBanL':_0x460921(0xc7),'HKBvu':'start\x20tracing','fCBFX':_0x460921(0xed),'bpDMK':_0x460921(0xc8),'QonmR':_0x460921(0xfc),'BlppD':function(_0x173337,_0x5df837){return _0x173337(_0x5df837);},'ZUKuF':'screenshot','BLagu':_0x460921(0x118),'dXKXI':'click','yXqPx':_0x460921(0xbc),'CVVIj':_0x460921(0xc4),'JuCFV':'open\x20new\x20tab','mGyuo':'tab-select','ptAuM':function(_0x13e6d5,_0x197a48,_0xf5f181){return _0x13e6d5(_0x197a48,_0xf5f181);}};switch(_0x6085c3){case _0x313a2c['tXGvZ']:{const _0x20f85b=_0x313a2c[_0x460921(0xe2)](extractFirstCommandArgument,_0x22859d,_0x6085c3);return _0x20f85b?'open\x20'+_0x20f85b:_0x313a2c[_0x460921(0x119)];}case _0x313a2c[_0x460921(0x100)]:return _0x313a2c[_0x460921(0xd7)];case _0x460921(0x117):return _0x460921(0xa8);case _0x460921(0xb1):return _0x313a2c['fCBFX'];case'video-stop':return _0x313a2c['bpDMK'];case _0x313a2c[_0x460921(0xf2)]:{const _0x25e76f=_0x313a2c[_0x460921(0xfa)](extractFilenameOption,_0x22859d);if(!_0x25e76f)return _0x460921(0xea);const {name:_0x198a44}=toStepDisplayName(_0x25e76f);return _0x460921(0xf0)+_0x198a44+'`';}case _0x313a2c['ZUKuF']:{const _0x470fe4=_0x313a2c[_0x460921(0xfa)](extractFilenameOption,_0x22859d);if(!_0x470fe4)return _0x313a2c[_0x460921(0x110)];const {name:_0x2795b6,isKeyStep:_0x277694}=toStepDisplayName(_0x470fe4);return _0x277694?'capture\x20key\x20step\x20`'+_0x2795b6+'`':'capture\x20step\x20`'+_0x2795b6+'`';}case _0x313a2c[_0x460921(0x12e)]:return'click\x20'+formatCommandTarget(extractFirstCommandArgument(_0x22859d,_0x6085c3));case _0x460921(0x127):return'check\x20'+_0x313a2c[_0x460921(0xfa)](formatCommandTarget,_0x313a2c[_0x460921(0xe2)](extractFirstCommandArgument,_0x22859d,_0x6085c3));case _0x313a2c['yXqPx']:return _0x460921(0x103)+formatCommandTarget(extractFirstCommandArgument(_0x22859d,_0x6085c3));case _0x460921(0xe8):return _0x460921(0xdf)+formatCommandTarget(extractFirstCommandArgument(_0x22859d,_0x6085c3));case _0x460921(0xb8):return _0x313a2c['CVVIj'];case'tab-new':{const _0x30d17d=extractFirstCommandArgument(_0x22859d,_0x6085c3);return _0x30d17d?'open\x20new\x20tab\x20'+_0x30d17d:_0x313a2c[_0x460921(0xd9)];}case _0x313a2c[_0x460921(0xad)]:{const _0x51cb4e=_0x313a2c[_0x460921(0xac)](extractFirstCommandArgument,_0x22859d,_0x6085c3);return _0x51cb4e?'select\x20tab\x20'+_0x51cb4e:'select\x20tab';}default:return _0x6085c3;}}function extractPlaywrightCliToolDescription(_0x44118d){const _0xfdc1aa=_0x1906,_0x22232e=_0x44118d['description'];if(typeof _0x22232e!=='string')return null;const _0x48659c=_0x22232e[_0xfdc1aa(0xb7)]()['replace'](/\s+/g,'\x20');return _0x48659c['length']>0x0?_0x48659c:null;}export function formatPlaywrightCliConsoleLogMessage(_0x3d7b39,_0x5de6d2,_0x558024){const _0x28d829=_0x1906,_0x5adfac={'RqMat':function(_0x21c3f0,_0x3caf5d){return _0x21c3f0(_0x3caf5d);}},_0x4d0e92=formatPlaywrightCliLog(_0x5de6d2,_0x558024),_0x48ab94=_0x5adfac[_0x28d829(0x134)](extractPlaywrightCliToolDescription,_0x3d7b39);if(!_0x48ab94)return'[playwright-cli]\x20'+_0x4d0e92;if(process[_0x28d829(0x121)][_0x28d829(0xf9)])return'[ranger-verification-agent]\x20'+_0x48ab94+'\x20('+_0x4d0e92+')';return'[ranger-verification-agent]\x20'+_0x48ab94;}export function buildVerifyFeatureCliDebugPrompt(_0x15372b,_0x4b3fbf){const _0x2c640e=_0x1906,_0x411c4a={'mnoHK':function(_0x5122b2,_0x78efe3,_0x457bca){return _0x5122b2(_0x78efe3,_0x457bca);},'yjvfV':_0x2c640e(0xd1),'Hvgtu':function(_0x226946,_0x38d38e){return _0x226946(_0x38d38e);},'ZacWf':function(_0xf16cfe,_0x1d8018){return _0xf16cfe(_0x1d8018);}},_0x1e7239=_0x411c4a[_0x2c640e(0xfb)](buildCliArtifactPath,_0x4b3fbf,'00_mozilla-homepage.yml'),_0x1a178c=buildCliArtifactPath(_0x4b3fbf,'01_mozilla-homepage.png'),_0x20c7c3=buildCliArtifactPath(_0x4b3fbf,'02_learn-more.yml'),_0x8000a6=buildCliArtifactPath(_0x4b3fbf,_0x411c4a[_0x2c640e(0xc9)]),_0x2eb8a9=_0x411c4a[_0x2c640e(0x10b)](quoteShellArg,_0x1e7239),_0x116d28=_0x411c4a[_0x2c640e(0x10b)](quoteShellArg,_0x1a178c),_0x2f24c0=_0x411c4a['ZacWf'](quoteShellArg,_0x20c7c3),_0x1f604c=quoteShellArg(_0x8000a6);return _0x2c640e(0x102)+_0x15372b+_0x2c640e(0x109)+_0x15372b+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x15372b+_0x2c640e(0xa6)+_0x15372b+_0x2c640e(0xd4)+_0x4b3fbf+_0x2c640e(0x122)+_0x15372b+'\x20snapshot\x20--filename\x20'+_0x2eb8a9+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x15372b+_0x2c640e(0xb9)+_0x116d28+_0x2c640e(0xb2)+_0x15372b+'\x20snapshot\x20--filename\x20'+_0x2f24c0+'`\x0a9.\x20Run\x20`'+_0x15372b+'\x20screenshot\x20--filename\x20'+_0x1f604c+_0x2c640e(0xb5);}export function buildVerifyFeatureCliPrompt(_0x4eacd5){const _0x4dff8c=_0x1906,_0x18be0a={'zMDby':_0x4dff8c(0x115),'UcNGE':'\x20>\x20','GlgiT':function(_0x1bfef5,_0x37505f,_0x2c5517){return _0x1bfef5(_0x37505f,_0x2c5517);},'pFnGX':'key_03_success-state.png','GTjsq':function(_0x33b853,_0x48e804){return _0x33b853(_0x48e804);},'qlPUL':function(_0x4b04ac,_0x2ffd55){return _0x4b04ac(_0x2ffd55);},'YpUHw':function(_0x2d51ce,_0x37eae4){return _0x2d51ce(_0x37eae4);},'UVmLE':_0x4dff8c(0xde),'XnrLj':_0x4dff8c(0xbf)},{checklistItem:_0x1020a2,itemFeedback:_0x2bc69e,taskDescription:_0xff138e,cliCommandPrefix:_0x35b73e,cliArtifactDir:_0x34036f,isCdpMode:_0x247860,url:_0x1284ce,cdpEndpoint:_0x470506,loginInstructions:_0x48a385}=_0x4eacd5,_0x3c4aec=buildCliArtifactPath(_0x34036f,'01_initial.yml'),_0x35e5cd=buildCliArtifactPath(_0x34036f,_0x4dff8c(0xef)),_0x8061d0=_0x18be0a[_0x4dff8c(0x129)](buildCliArtifactPath,_0x34036f,_0x18be0a[_0x4dff8c(0x111)]),_0x3d503b=_0x18be0a[_0x4dff8c(0x129)](buildCliArtifactPath,_0x34036f,'01_initial-state.png'),_0x5b3c0f=_0x18be0a['GTjsq'](quoteShellArg,_0x3c4aec),_0x3c313f=quoteShellArg(_0x35e5cd),_0x3d20e7=_0x18be0a['qlPUL'](quoteShellArg,_0x8061d0),_0x18477e=_0x18be0a['qlPUL'](quoteShellArg,_0x3d503b),_0x45fe33=_0x1020a2['notes']?_0x4dff8c(0xf6)+_0x1020a2['notes']:'';let _0x5cbb7e='';if(_0x2bc69e&&_0x2bc69e['unaddressedComments']['length']>0x0){const _0x3c8de1=_0x2bc69e[_0x4dff8c(0x116)][_0x4dff8c(0xa9)](_0x13a784=>{const _0xe3073d=_0x4dff8c,_0x4a917c=new Date(_0x13a784['createdAt'])['toLocaleDateString']('en-US',{'month':'short','day':_0x18be0a['zMDby']}),_0x545cc5=_0x13a784[_0xe3073d(0xab)]||_0x13a784['authorEmail']||'Reviewer',_0x5e20c1=_0x13a784[_0xe3073d(0x108)]?'\x20(on\x20element:\x20<'+(_0x13a784[_0xe3073d(0x108)][_0xe3073d(0x11e)][_0xe3073d(0xc1)](_0x18be0a['UcNGE'])[_0xe3073d(0x10d)]()?.['split'](':')[0x0]||_0xe3073d(0xd2))+'>\x20\x22'+(_0x13a784['domRef'][_0xe3073d(0x114)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0xe3073d(0x131)+_0x13a784['id']+']\x20**'+_0x545cc5+'**\x20('+_0x4a917c+_0xe3073d(0x112)+_0x13a784['content']+'\x22'+_0x5e20c1;})['join']('\x0a');_0x5cbb7e='\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20(the\x20bracketed\x20value)\x20in\x20the\x20addressedCommentIds\x20array\x20in\x20your\x20output.\x0a\x0a'+_0x3c8de1;}const _0x5b1ebe=_0x2bc69e?.[_0x4dff8c(0x11c)]?_0x4dff8c(0xd8)+_0x2bc69e['canonicalFlow']:'',_0x960474=_0x247860?_0x4dff8c(0x12b)+_0x470506+_0x4dff8c(0x126):_0x4dff8c(0x10c)+_0x1284ce+'\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification',_0x50f248=_0x1284ce?_0x18be0a['YpUHw'](quoteShellArg,_0x1284ce):'',_0x4b30bf=_0x247860?_0x4dff8c(0xdd)+_0x35b73e+'\x20open`,\x20then\x20`'+_0x35b73e+'\x20tracing-start`,\x20then\x20`'+_0x35b73e+_0x4dff8c(0x124)+_0x34036f+_0x4dff8c(0xcb)+_0x35b73e+'\x20snapshot\x20--filename\x20'+_0x5b3c0f+_0x4dff8c(0x10f)+_0x35b73e+_0x4dff8c(0xb9)+_0x18477e+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x35b73e+_0x4dff8c(0xff):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x35b73e+'\x20open\x20'+_0x50f248+'`,\x20then\x20`'+_0x35b73e+'\x20tracing-start`,\x20then\x20`'+_0x35b73e+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x34036f+_0x4dff8c(0xcb)+_0x35b73e+_0x4dff8c(0xc2)+_0x5b3c0f+_0x4dff8c(0xd3)+_0x35b73e+'\x20screenshot\x20--filename\x20'+_0x18477e+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x35b73e+_0x4dff8c(0xc3),_0x3b483b=_0x247860?_0x4dff8c(0xf4):'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x5059c0=_0x48a385?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x48a385+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x1020a2[_0x4dff8c(0x11a)]+_0x45fe33+_0x5cbb7e+_0x5b1ebe+_0x4dff8c(0xce)+_0xff138e+'\x0a\x0a'+_0x960474+_0x5059c0+'\x0a\x0a'+_0x4b30bf+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x35b73e+_0x4dff8c(0xfe)+_0x34036f+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x3c313f+'`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20'+_0x3d20e7+_0x4dff8c(0x135)+_0x34036f+'`:\x20\x22'+_0x3d503b+_0x4dff8c(0xf7)+_0x18be0a[_0x4dff8c(0x129)](buildCliArtifactPath,_0x34036f,_0x18be0a[_0x4dff8c(0xb0)])+'\x22,\x20\x22'+buildCliArtifactPath(_0x34036f,_0x4dff8c(0xf1))+_0x4dff8c(0xf5)+_0x18be0a['GlgiT'](buildCliArtifactPath,_0x34036f,_0x18be0a['XnrLj'])+'\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a'+_0x3b483b+'\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function summarizeVerifyFeatureCliCommandAvailability(_0x533e79){const _0x5ec125=_0x1906,_0x22aed4=[..._0x533e79['keys']()][_0x5ec125(0xd5)]();let _0x3e8aab=0x0;for(const _0x1844a8 of _0x533e79[_0x5ec125(0xec)]()){_0x3e8aab+=_0x1844a8;}return{'cliCommandCount':_0x3e8aab,'cliCommandsSeen':_0x22aed4,'noCliCommandsCalled':_0x3e8aab===0x0};}export function createVerifyFeatureCliHooks(_0x4e9526){const _0x55684e=_0x1906,_0x44c979={'EuGeZ':function(_0xbf523d,_0x176df3){return _0xbf523d!==_0x176df3;},'mzTTf':'Bash','rxRne':function(_0x36d7dc,_0x3b1836){return _0x36d7dc(_0x3b1836);},'BrLHk':function(_0x2fb28c,_0x51cf20){return _0x2fb28c+_0x51cf20;},'eEPeT':_0x55684e(0xe5),'DvySY':'playwright-cli','vtQTx':function(_0x9933df,_0x1523ae){return _0x9933df(_0x1523ae);},'NdWgF':function(_0x56aafa,_0x18bce2,_0x15b37f,_0x3845d7){return _0x56aafa(_0x18bce2,_0x15b37f,_0x3845d7);},'wccsK':'tool_failure'},_0x178770=new Map(),_0x2f5229=async _0x25f706=>{const _0x359398=_0x55684e;if(_0x44c979[_0x359398(0xaf)](_0x25f706[_0x359398(0xb4)],'PostToolUse'))return{};const _0x1541c4=_0x25f706;if(_0x1541c4[_0x359398(0xd0)]!==_0x44c979['mzTTf'])return{};const _0x512277=_0x1541c4[_0x359398(0x11f)],_0x538d14=_0x44c979['rxRne'](extractBashCommand,_0x512277);if(!_0x538d14)return{};const _0x2dbb31=parsePlaywrightCliCommand(_0x538d14);if(!_0x2dbb31)return{};return _0x178770[_0x359398(0x12f)](_0x2dbb31,_0x44c979[_0x359398(0x11d)](_0x178770['get'](_0x2dbb31)||0x0,0x1)),_0x4e9526['trackPhaseStart'](_0x44c979[_0x359398(0x128)],{'transport':_0x44c979['DvySY'],'toolName':_0x2dbb31}),_0x4e9526[_0x359398(0x113)](_0x359398(0xe5),{'transport':_0x359398(0x132),'toolName':_0x2dbb31,'bashCommandPreview':_0x44c979['vtQTx'](truncatePreview,_0x538d14)}),_0x44c979['EuGeZ'](_0x2dbb31,'snapshot')&&console['log'](_0x44c979[_0x359398(0xe1)](formatPlaywrightCliConsoleLogMessage,_0x512277,_0x538d14,_0x2dbb31)),{};},_0xeb72a1=async _0x2f381d=>{const _0x5670ed=_0x55684e;if(_0x44c979[_0x5670ed(0xaf)](_0x2f381d['hook_event_name'],_0x5670ed(0x125)))return{};const _0x2691ce=_0x2f381d;if(_0x2691ce['tool_name']!==_0x5670ed(0xa7))return{};return await _0x4e9526[_0x5670ed(0xeb)](_0x44c979[_0x5670ed(0xc0)],_0x2691ce[_0x5670ed(0x10e)],{'transport':_0x5670ed(0x132),'toolName':_0x5670ed(0xa7)}),{};};return{'postToolUseHook':_0x2f5229,'postToolUseFailureHook':_0xeb72a1,'commandCounts':_0x178770};}async function runPlaywrightCliLifecycleCommand(_0x30b1ea){const _0x455014=_0x1906,_0x5525b5={'iqcGc':function(_0x134a84,_0x3aa5df){return _0x134a84??_0x3aa5df;},'cFoBI':function(_0x32f36f,_0x3b0cca,_0x39cda5){return _0x32f36f(_0x3b0cca,_0x39cda5);}},{sessionId:_0x15ee24,configPath:_0x1cb610,commandArgs:_0x242f93,env:_0x79b7a,telemetry:_0x282777,phase:_0x159a7,metadata:_0x27a80d,timeoutMs:_0x350b3b}=_0x30b1ea;_0x282777[_0x455014(0xba)](_0x159a7,_0x27a80d);try{const _0x574887=await runPlaywrightCliCommand({'sessionId':_0x15ee24,'configPath':_0x1cb610,'commandArgs':_0x242f93,'cwd':process[_0x455014(0xbb)](),'env':_0x79b7a,'timeoutMs':_0x5525b5[_0x455014(0xae)](_0x350b3b,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x282777[_0x455014(0x113)](_0x159a7,{..._0x27a80d,'subcommand':_0x574887[_0x455014(0xaa)][_0x455014(0x106)],'stdoutPreview':_0x5525b5[_0x455014(0x133)](truncatePreview,_0x574887['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x574887[_0x455014(0x104)],0x7d0)});}catch(_0x32134c){await _0x282777[_0x455014(0xeb)](_0x159a7,_0x32134c,_0x27a80d);throw _0x32134c;}}export async function finalizeVerifyFeatureCliSession(_0x3d40f5){const _0x574673=_0x1906,_0x2e2eb6={'RDSys':'playwright_cli_video_stop','YRJoO':_0x574673(0x11b),'jGFUo':function(_0xa168af,_0x22be95){return _0xa168af(_0x22be95);}},{telemetry:_0x3098e5,sessionId:_0x2a3ef1,configPath:_0x1f9628,cliArtifactDir:_0x28632b,env:_0x21e1b2,transportMetadata:_0x4c006e}=_0x3d40f5,_0xbab236=[{'phase':'playwright_cli_tracing_stop','commandArgs':['tracing-stop']},{'phase':_0x2e2eb6['RDSys'],'commandArgs':['video-stop',_0x574673(0xe3)+buildCliArtifactPath(_0x28632b,'session-recording.webm')]},{'phase':'playwright_cli_close','commandArgs':[_0x2e2eb6['YRJoO']]}];for(const _0x3d73cf of _0xbab236){try{await _0x2e2eb6['jGFUo'](runPlaywrightCliLifecycleCommand,{'sessionId':_0x2a3ef1,'configPath':_0x1f9628,'commandArgs':[..._0x3d73cf[_0x574673(0xdb)]],'env':_0x21e1b2,'telemetry':_0x3098e5,'phase':_0x3d73cf['phase'],'metadata':_0x4c006e});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x2c39fc){const _0x45682c=_0x1906,_0x2f8a1d={'tZDQi':_0x45682c(0xcf),'YwWpn':function(_0x164885,_0x208c69,_0x17b58f){return _0x164885(_0x208c69,_0x17b58f);},'XNYyU':function(_0x138229,_0x534186){return _0x138229(_0x534186);}},_0x3bb9e9=[_0x45682c(0xb6),_0x2f8a1d[_0x45682c(0xe7)]];for(const _0x5152c4 of _0x3bb9e9){const _0x2e0015=_0x2f8a1d[_0x45682c(0xe9)](join,_0x2c39fc,_0x5152c4);try{return{'buffer':await _0x2f8a1d[_0x45682c(0x130)](readFile,_0x2e0015),'source':_0x2e0015};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x1eb370){const _0x47b175=_0x1906,_0xdd8929={'janFE':function(_0x326471,_0x4ff840,_0x1493c1){return _0x326471(_0x4ff840,_0x1493c1);},'DhBPt':function(_0x55f9f5,_0xb6764){return _0x55f9f5(_0xb6764);},'jbeng':function(_0x448827,_0x518712){return _0x448827<_0x518712;},'QMTEM':function(_0x6a91be,_0x15a995){return _0x6a91be+_0x15a995;},'stTPr':function(_0x18f614,_0x3bcd35){return _0x18f614===_0x3bcd35;},'xlARc':function(_0x8c448a,_0x12bfa2,_0x30883c){return _0x8c448a(_0x12bfa2,_0x30883c);}},{cwd:_0x3ca8ef,cliArtifactDir:_0xe808ad,startTime:_0x511164}=_0x1eb370,_0xeeca37=[];await _0xdd8929[_0x47b175(0xdc)](mkdir,_0xe808ad,{'recursive':!![]});const _0x2e3988=await _0xdd8929[_0x47b175(0xdc)](readdir,_0x3ca8ef,{'withFileTypes':!![]});for(const _0x5e6938 of _0x2e3988){if(!_0x5e6938[_0x47b175(0x12a)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x5e6938['name']))continue;const _0x5c1045=join(_0x3ca8ef,_0x5e6938['name']),_0xedbee5=await _0xdd8929['DhBPt'](stat,_0x5c1045);if(_0xdd8929[_0x47b175(0x107)](_0xdd8929['QMTEM'](_0xedbee5[_0x47b175(0xe6)],0x7d0),_0x511164))continue;const _0x42f27b=buildCliArtifactPath(_0xe808ad,_0x5e6938[_0x47b175(0x12d)]);if(_0xdd8929['stTPr'](_0x5c1045,_0x42f27b))continue;await _0xdd8929['xlARc'](rename,_0x5c1045,_0x42f27b),_0xeeca37[_0x47b175(0xf8)](_0x5e6938['name']);}return _0xeeca37['sort']();}
|