@ranger-testing/ranger-cli 2.5.4-alpha.071b7bd-1 → 2.5.4-alpha.ed286f1-2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +6 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0xd11e83,_0x15ae2d){const _0xefe01c=_0x421c,_0xf2479b=_0xd11e83();while(!![]){try{const _0x223f50=parseInt(_0xefe01c(0x236))/0x1+-parseInt(_0xefe01c(0x1db))/0x2*(-parseInt(_0xefe01c(0x201))/0x3)+parseInt(_0xefe01c(0x234))/0x4+parseInt(_0xefe01c(0x252))/0x5*(parseInt(_0xefe01c(0x214))/0x6)+-parseInt(_0xefe01c(0x1f3))/0x7+-parseInt(_0xefe01c(0x20a))/0x8*(parseInt(_0xefe01c(0x262))/0x9)+-parseInt(_0xefe01c(0x22a))/0xa;if(_0x223f50===_0x15ae2d)break;else _0xf2479b['push'](_0xf2479b['shift']());}catch(_0x17199f){_0xf2479b['push'](_0xf2479b['shift']());}}}(_0x4b14,0x6c444));function _0x421c(_0x53d2b8,_0x3da4a8){_0x53d2b8=_0x53d2b8-0x1db;const _0x4b1465=_0x4b14();let _0x421c9f=_0x4b1465[_0x53d2b8];return _0x421c9f;}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 truncatePreview(_0x4ae1fa,_0x5c51ae=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x43bfbd=_0x421c,_0x32c443={'AardL':_0x43bfbd(0x1f7)};return _0x4ae1fa[_0x43bfbd(0x250)]>_0x5c51ae?_0x4ae1fa[_0x43bfbd(0x256)](0x0,_0x5c51ae)+_0x32c443[_0x43bfbd(0x1e7)]:_0x4ae1fa;}function buildCliArtifactPath(_0x2ece33,_0x1c06c9){return join(_0x2ece33,_0x1c06c9);}function toStepDisplayName(_0x220f6c){const _0x403843=_0x421c,_0x390d91={'QGakz':function(_0xbaea00,_0x52bf5d){return _0xbaea00(_0x52bf5d);}},_0x3494df=basename(_0x220f6c)[_0x403843(0x217)](/\.(?:png|ya?ml)$/i,'')[_0x403843(0x217)](/^key_/i,'')[_0x403843(0x217)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x3494df,'isKeyStep':/^key_/i[_0x403843(0x25c)](_0x390d91['QGakz'](basename,_0x220f6c))};}function extractShellValue(_0x2017f2){if(!_0x2017f2)return null;return _0x2017f2[0x1]??_0x2017f2[0x2]??_0x2017f2[0x3]??null;}function extractFilenameOption(_0x5af635){const _0x272bfd={'AjHkb':function(_0x2388bb,_0x1a46b7){return _0x2388bb(_0x1a46b7);}};return _0x272bfd['AjHkb'](extractShellValue,_0x5af635['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x419532,_0x11dbc6){const _0x12f785=_0x421c,_0x2aebc4={'hYxNc':function(_0x245246,_0x95f96e){return _0x245246(_0x95f96e);}},_0x24101a=_0x11dbc6[_0x12f785(0x217)](/[.*+?^${}()|[\]\\]/g,_0x12f785(0x206));return _0x2aebc4['hYxNc'](extractShellValue,_0x419532[_0x12f785(0x21b)](new RegExp('(?:^|\x5cs)'+_0x24101a+_0x12f785(0x25a))));}function formatCommandTarget(_0x42f9bf){const _0x1d1470=_0x421c,_0x5f3da8={'RInvV':function(_0x3b85c1,_0x5621a7,_0x1805a2){return _0x3b85c1(_0x5621a7,_0x1805a2);}};if(!_0x42f9bf)return'target';if(/^e\d+$/i['test'](_0x42f9bf))return _0x1d1470(0x24a)+_0x42f9bf;return JSON[_0x1d1470(0x253)](_0x5f3da8[_0x1d1470(0x212)](truncatePreview,_0x42f9bf,0x78));}function formatPlaywrightCliLog(_0x5f1f3b,_0x4b4b55){const _0x429863=_0x421c,_0xbd108c={'eViEb':function(_0x1b84f4,_0x596512,_0x56f1c4){return _0x1b84f4(_0x596512,_0x56f1c4);},'CyCdd':_0x429863(0x241),'wcPxN':_0x429863(0x202),'BoGjY':_0x429863(0x224),'abuMp':'stop\x20tracing','hFvBM':_0x429863(0x242),'wrrGE':'stop\x20video\x20recording','mJHlu':function(_0x270432,_0x1942fd){return _0x270432(_0x1942fd);},'difUh':_0x429863(0x259),'sugri':function(_0x290d03,_0x3f1d6f){return _0x290d03(_0x3f1d6f);},'HKCCX':'click','GTqtp':function(_0x4e6cb9,_0x2d8b22){return _0x4e6cb9(_0x2d8b22);},'JWnlE':_0x429863(0x1dc),'NkkLF':function(_0x36062a,_0x162779,_0x245b0f){return _0x36062a(_0x162779,_0x245b0f);},'YZoPE':function(_0x1418e7,_0x4d75bd){return _0x1418e7(_0x4d75bd);},'HIlpu':'tab-new','GOBFX':'select\x20tab'};switch(_0x4b4b55){case'open':{const _0x391a52=_0xbd108c[_0x429863(0x226)](extractFirstCommandArgument,_0x5f1f3b,_0x4b4b55);return _0x391a52?_0x429863(0x1ef)+_0x391a52:_0x429863(0x229);}case _0xbd108c['CyCdd']:return _0xbd108c['wcPxN'];case _0xbd108c['BoGjY']:return _0xbd108c[_0x429863(0x1f2)];case'video-start':return'start\x20video\x20recording';case _0xbd108c['hFvBM']:return _0xbd108c[_0x429863(0x209)];case _0x429863(0x25e):{const _0x15e8db=extractFilenameOption(_0x5f1f3b);if(!_0x15e8db)return'capture\x20snapshot';const {name:_0x328184}=_0xbd108c['mJHlu'](toStepDisplayName,_0x15e8db);return'capture\x20snapshot\x20`'+_0x328184+'`';}case _0xbd108c[_0x429863(0x203)]:{const _0x146c6f=_0xbd108c['mJHlu'](extractFilenameOption,_0x5f1f3b);if(!_0x146c6f)return'capture\x20screenshot';const {name:_0x28f17d,isKeyStep:_0x1f44d0}=_0xbd108c[_0x429863(0x20b)](toStepDisplayName,_0x146c6f);return _0x1f44d0?_0x429863(0x219)+_0x28f17d+'`':_0x429863(0x247)+_0x28f17d+'`';}case _0xbd108c['HKCCX']:return _0x429863(0x22e)+_0xbd108c['GTqtp'](formatCommandTarget,extractFirstCommandArgument(_0x5f1f3b,_0x4b4b55));case'check':return _0x429863(0x1ec)+formatCommandTarget(_0xbd108c[_0x429863(0x226)](extractFirstCommandArgument,_0x5f1f3b,_0x4b4b55));case _0xbd108c['JWnlE']:return'fill\x20'+formatCommandTarget(_0xbd108c[_0x429863(0x216)](extractFirstCommandArgument,_0x5f1f3b,_0x4b4b55));case'press':return _0x429863(0x22d)+_0xbd108c[_0x429863(0x255)](formatCommandTarget,_0xbd108c['eViEb'](extractFirstCommandArgument,_0x5f1f3b,_0x4b4b55));case _0x429863(0x211):return _0x429863(0x23a);case _0xbd108c[_0x429863(0x218)]:{const _0x561f6c=extractFirstCommandArgument(_0x5f1f3b,_0x4b4b55);return _0x561f6c?'open\x20new\x20tab\x20'+_0x561f6c:_0x429863(0x249);}case'tab-select':{const _0x13b7fd=_0xbd108c[_0x429863(0x226)](extractFirstCommandArgument,_0x5f1f3b,_0x4b4b55);return _0x13b7fd?'select\x20tab\x20'+_0x13b7fd:_0xbd108c['GOBFX'];}default:return _0x4b4b55;}}function extractPlaywrightCliToolDescription(_0x11adf7){const _0x2b8b64=_0x421c,_0x185804=_0x11adf7['description'];if(typeof _0x185804!=='string')return null;const _0x55760a=_0x185804[_0x2b8b64(0x1fb)]()['replace'](/\s+/g,'\x20');return _0x55760a[_0x2b8b64(0x250)]>0x0?_0x55760a:null;}export function formatPlaywrightCliConsoleLogMessage(_0x330311,_0x421f1c,_0xc49bad){const _0xa6b3e9=_0x421c,_0x9496d4={'PHjYA':function(_0x1925bf,_0x4d33c4,_0x180b41){return _0x1925bf(_0x4d33c4,_0x180b41);}},_0x1a40eb=_0x9496d4['PHjYA'](formatPlaywrightCliLog,_0x421f1c,_0xc49bad),_0xbc5552=extractPlaywrightCliToolDescription(_0x330311);if(!_0xbc5552)return _0xa6b3e9(0x20f)+_0x1a40eb;if(process['env'][_0xa6b3e9(0x263)])return'[ranger-verification-agent]\x20'+_0xbc5552+'\x20('+_0x1a40eb+')';return'[ranger-verification-agent]\x20'+_0xbc5552;}export function buildVerifyFeatureCliDebugPrompt(_0x2cd93c,_0x5e4d99){const _0x4012f8=_0x421c,_0x3a88f4={'NJzvX':'00_mozilla-homepage.yml','dSXSO':function(_0x4ba7cf,_0x3428ba,_0x1c2026){return _0x4ba7cf(_0x3428ba,_0x1c2026);},'kliHt':'02_learn-more.yml','qldKC':function(_0x1082a8,_0x2225f4,_0xdc59b3){return _0x1082a8(_0x2225f4,_0xdc59b3);},'KKNuy':function(_0x1506da,_0x4b2f65){return _0x1506da(_0x4b2f65);}},_0x2bf79e=buildCliArtifactPath(_0x5e4d99,_0x3a88f4['NJzvX']),_0x3f4ee7=_0x3a88f4['dSXSO'](buildCliArtifactPath,_0x5e4d99,_0x4012f8(0x23d)),_0x597d25=_0x3a88f4[_0x4012f8(0x221)](buildCliArtifactPath,_0x5e4d99,_0x3a88f4[_0x4012f8(0x1f0)]),_0x31c989=_0x3a88f4['qldKC'](buildCliArtifactPath,_0x5e4d99,_0x4012f8(0x215)),_0x7e0e03=quoteShellArg(_0x2bf79e),_0x51db0d=quoteShellArg(_0x3f4ee7),_0x3578c7=quoteShellArg(_0x597d25),_0x55fa23=_0x3a88f4['KKNuy'](quoteShellArg,_0x31c989);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x2cd93c+'\x0a\x0a1.\x20Run\x20`'+_0x2cd93c+_0x4012f8(0x248)+_0x2cd93c+_0x4012f8(0x1e6)+_0x2cd93c+_0x4012f8(0x1e9)+_0x5e4d99+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x2cd93c+'\x20snapshot\x20--filename\x20'+_0x7e0e03+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x2cd93c+'\x20screenshot\x20--filename\x20'+_0x51db0d+_0x4012f8(0x205)+_0x2cd93c+'\x20snapshot\x20--filename\x20'+_0x3578c7+'`\x0a9.\x20Run\x20`'+_0x2cd93c+_0x4012f8(0x1e3)+_0x55fa23+_0x4012f8(0x235);}export function buildVerifyFeatureCliPrompt(_0x2eeba0){const _0x855f08=_0x421c,_0x328faf={'mJjWl':'en-US','MIRJy':'numeric','aZGhJ':_0x855f08(0x222),'xUGaS':_0x855f08(0x246),'HiRXK':'02_state.yml','rzYcE':'key_03_success-state.png','NobEc':function(_0x3e7174,_0x58889f){return _0x3e7174(_0x58889f);},'hjSCk':function(_0x381e2e,_0x15016c,_0x5a07dd){return _0x381e2e(_0x15016c,_0x5a07dd);},'WMgyu':_0x855f08(0x213)},{checklistItem:_0x138d56,itemFeedback:_0x499db7,taskDescription:_0x446a51,cliCommandPrefix:_0x4a3043,cliArtifactDir:_0x280fff,isCdpMode:_0x2fca04,url:_0x44305f,cdpEndpoint:_0x57b378,loginInstructions:_0x4de534}=_0x2eeba0,_0x3b1d52=buildCliArtifactPath(_0x280fff,_0x328faf['xUGaS']),_0x2bd3cc=buildCliArtifactPath(_0x280fff,_0x328faf[_0x855f08(0x1e0)]),_0x546799=buildCliArtifactPath(_0x280fff,_0x328faf[_0x855f08(0x21e)]),_0xaf980c=buildCliArtifactPath(_0x280fff,_0x855f08(0x233)),_0x4dbc7d=_0x328faf[_0x855f08(0x227)](quoteShellArg,_0x3b1d52),_0x475d71=quoteShellArg(_0x2bd3cc),_0x4f16e0=_0x328faf[_0x855f08(0x227)](quoteShellArg,_0x546799),_0x337c8a=quoteShellArg(_0xaf980c),_0x4dd92c=_0x138d56[_0x855f08(0x22c)]?_0x855f08(0x264)+_0x138d56['notes']:'';let _0x1f7c11='';if(_0x499db7&&_0x499db7[_0x855f08(0x1f8)]['length']>0x0){const _0x1ce249=_0x499db7[_0x855f08(0x1f8)]['map'](_0x4eb8e2=>{const _0x5f0eed=_0x855f08,_0x57d76d=new Date(_0x4eb8e2[_0x5f0eed(0x230)])[_0x5f0eed(0x21f)](_0x328faf['mJjWl'],{'month':'short','day':_0x328faf['MIRJy']}),_0x5079e5=_0x4eb8e2[_0x5f0eed(0x20e)]||_0x4eb8e2[_0x5f0eed(0x207)]||_0x5f0eed(0x260),_0x3e0c16=_0x4eb8e2[_0x5f0eed(0x210)]?'\x20(on\x20element:\x20<'+(_0x4eb8e2['domRef'][_0x5f0eed(0x1fd)]['split'](_0x328faf['aZGhJ'])['pop']()?.[_0x5f0eed(0x1ea)](':')[0x0]||'element')+_0x5f0eed(0x237)+(_0x4eb8e2[_0x5f0eed(0x210)]['textContent']||'')[_0x5f0eed(0x256)](0x0,0x32)+'\x22)':'';return _0x5f0eed(0x23f)+_0x4eb8e2['id']+_0x5f0eed(0x21c)+_0x5079e5+'**\x20('+_0x57d76d+_0x5f0eed(0x22b)+_0x4eb8e2[_0x5f0eed(0x200)]+'\x22'+_0x3e0c16;})['join']('\x0a');_0x1f7c11='\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'+_0x1ce249;}const _0x27fd2a=_0x499db7?.['canonicalFlow']?_0x855f08(0x225)+_0x499db7[_0x855f08(0x267)]:'',_0x1faa28=_0x2fca04?_0x855f08(0x208)+_0x57b378+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':_0x855f08(0x23c)+_0x44305f+_0x855f08(0x1dd),_0x352c44=_0x44305f?quoteShellArg(_0x44305f):'',_0x205686=_0x2fca04?_0x855f08(0x22f)+_0x4a3043+_0x855f08(0x220)+_0x4a3043+_0x855f08(0x1ed)+_0x4a3043+_0x855f08(0x1f6)+_0x280fff+_0x855f08(0x25d)+_0x4a3043+_0x855f08(0x24d)+_0x4dbc7d+'`\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`'+_0x4a3043+'\x20screenshot\x20--filename\x20'+_0x337c8a+_0x855f08(0x1f5)+_0x4a3043+_0x855f08(0x20d):_0x855f08(0x22f)+_0x4a3043+_0x855f08(0x24f)+_0x352c44+_0x855f08(0x24b)+_0x4a3043+_0x855f08(0x1ed)+_0x4a3043+_0x855f08(0x1f6)+_0x280fff+_0x855f08(0x25d)+_0x4a3043+_0x855f08(0x24d)+_0x4dbc7d+_0x855f08(0x1fe)+_0x4a3043+_0x855f08(0x1e3)+_0x337c8a+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x4a3043+_0x855f08(0x1e5),_0x4f3138=_0x2fca04?'\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.':_0x855f08(0x251),_0x353496=_0x4de534?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x4de534+_0x855f08(0x1f1):'';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'+_0x138d56['description']+_0x4dd92c+_0x1f7c11+_0x27fd2a+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x446a51+'\x0a\x0a'+_0x1faa28+_0x353496+'\x0a\x0a'+_0x205686+_0x855f08(0x261)+_0x4a3043+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x280fff+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x475d71+'`\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'+_0x4f16e0+'`\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`'+_0x280fff+_0x855f08(0x20c)+_0xaf980c+_0x855f08(0x23e)+_0x328faf[_0x855f08(0x1df)](buildCliArtifactPath,_0x280fff,_0x855f08(0x231))+'\x22,\x20\x22'+_0x328faf[_0x855f08(0x1df)](buildCliArtifactPath,_0x280fff,_0x328faf['WMgyu'])+'\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'+buildCliArtifactPath(_0x280fff,_0x855f08(0x1ee))+'\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'+_0x4f3138+_0x855f08(0x269);}export function summarizeVerifyFeatureCliCommandAvailability(_0x3a6501){const _0x4b7f5e=_0x421c,_0x173a87={'ryQUk':function(_0x5b4b05,_0x1af4c){return _0x5b4b05===_0x1af4c;}},_0x39480b=[..._0x3a6501[_0x4b7f5e(0x1e1)]()]['sort']();let _0x2f1759=0x0;for(const _0x199503 of _0x3a6501['values']()){_0x2f1759+=_0x199503;}return{'cliCommandCount':_0x2f1759,'cliCommandsSeen':_0x39480b,'noCliCommandsCalled':_0x173a87[_0x4b7f5e(0x243)](_0x2f1759,0x0)};}export function createVerifyFeatureCliHooks(_0x2ff677){const _0x409505=_0x421c,_0x2fdd3b={'fXPOS':'PostToolUse','GRqUW':function(_0x8a3b57,_0x1c944c){return _0x8a3b57+_0x1c944c;},'oMvkC':_0x409505(0x1e8),'OztzJ':'tool_call','zanNQ':function(_0x210dcd,_0x367815){return _0x210dcd(_0x367815);},'zMWqz':function(_0x470e6d,_0x3c1130){return _0x470e6d!==_0x3c1130;},'tuNWa':_0x409505(0x254),'prktP':function(_0x4a4411,_0x2ab1cd){return _0x4a4411!==_0x2ab1cd;},'yivVb':'Bash'},_0x4c23a2=new Map(),_0xd2e6e5=async _0x39f49f=>{const _0x48ff8c=_0x409505;if(_0x39f49f['hook_event_name']!==_0x2fdd3b['fXPOS'])return{};const _0x43d23d=_0x39f49f;if(_0x43d23d[_0x48ff8c(0x232)]!=='Bash')return{};const _0x4a6224=_0x43d23d[_0x48ff8c(0x1eb)],_0x586c39=extractBashCommand(_0x4a6224);if(!_0x586c39)return{};const _0x8748d3=parsePlaywrightCliCommand(_0x586c39);if(!_0x8748d3)return{};return _0x4c23a2['set'](_0x8748d3,_0x2fdd3b['GRqUW'](_0x4c23a2[_0x48ff8c(0x24c)](_0x8748d3)||0x0,0x1)),_0x2ff677[_0x48ff8c(0x258)]('tool_call',{'transport':_0x2fdd3b[_0x48ff8c(0x1fa)],'toolName':_0x8748d3}),_0x2ff677['trackPhaseEnd'](_0x2fdd3b[_0x48ff8c(0x1e4)],{'transport':_0x2fdd3b[_0x48ff8c(0x1fa)],'toolName':_0x8748d3,'bashCommandPreview':_0x2fdd3b['zanNQ'](truncatePreview,_0x586c39)}),_0x2fdd3b[_0x48ff8c(0x240)](_0x8748d3,_0x48ff8c(0x25e))&&console[_0x48ff8c(0x24e)](formatPlaywrightCliConsoleLogMessage(_0x4a6224,_0x586c39,_0x8748d3)),{};},_0xc212b1=async _0x5695f4=>{const _0x454796=_0x409505;if(_0x5695f4['hook_event_name']!==_0x2fdd3b['tuNWa'])return{};const _0x11d029=_0x5695f4;if(_0x2fdd3b[_0x454796(0x21a)](_0x11d029[_0x454796(0x232)],_0x2fdd3b[_0x454796(0x239)]))return{};return await _0x2ff677['trackPhaseError']('tool_failure',_0x11d029['error'],{'transport':_0x2fdd3b['oMvkC'],'toolName':_0x454796(0x245)}),{};};return{'postToolUseHook':_0xd2e6e5,'postToolUseFailureHook':_0xc212b1,'commandCounts':_0x4c23a2};}async function runPlaywrightCliLifecycleCommand(_0x3a13a7){const _0x189831=_0x421c,_0x4dbc5d={'vasrE':function(_0x5e0935,_0x3892bc){return _0x5e0935(_0x3892bc);},'nshha':function(_0x2e5498,_0x14508c){return _0x2e5498??_0x14508c;}},{sessionId:_0x20e57c,configPath:_0x17a60e,commandArgs:_0x1aafac,env:_0x12e0e9,telemetry:_0xb3829b,phase:_0x3635a3,metadata:_0x18d2b3,timeoutMs:_0x1ad3c4}=_0x3a13a7;_0xb3829b['trackPhaseStart'](_0x3635a3,_0x18d2b3);try{const _0x5edfb5=await _0x4dbc5d[_0x189831(0x1f9)](runPlaywrightCliCommand,{'sessionId':_0x20e57c,'configPath':_0x17a60e,'commandArgs':_0x1aafac,'cwd':process[_0x189831(0x21d)](),'env':_0x12e0e9,'timeoutMs':_0x4dbc5d[_0x189831(0x268)](_0x1ad3c4,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0xb3829b[_0x189831(0x244)](_0x3635a3,{..._0x18d2b3,'subcommand':_0x5edfb5[_0x189831(0x25b)]['subcommand'],'stdoutPreview':truncatePreview(_0x5edfb5[_0x189831(0x25f)],0x7d0),'stderrPreview':truncatePreview(_0x5edfb5['stderr'],0x7d0)});}catch(_0x41c1ac){await _0xb3829b[_0x189831(0x228)](_0x3635a3,_0x41c1ac,_0x18d2b3);throw _0x41c1ac;}}export async function finalizeVerifyFeatureCliSession(_0x518d7a){const _0x485f9a=_0x421c,_0xe0ce07={'VAhSX':'playwright_cli_tracing_stop','cFIdj':'tracing-stop','FJEzu':function(_0x32661c,_0x4108ce,_0x45f8e7){return _0x32661c(_0x4108ce,_0x45f8e7);},'vNGoq':'session-recording.webm','BYpqX':_0x485f9a(0x223)},{telemetry:_0x100986,sessionId:_0x1cde0e,configPath:_0x5aa928,cliArtifactDir:_0x38d66e,env:_0x290dea,transportMetadata:_0x3c3807}=_0x518d7a,_0x7370d2=[{'phase':_0xe0ce07['VAhSX'],'commandArgs':[_0xe0ce07['cFIdj']]},{'phase':_0x485f9a(0x1fc),'commandArgs':[_0x485f9a(0x242),_0x485f9a(0x1de)+_0xe0ce07['FJEzu'](buildCliArtifactPath,_0x38d66e,_0xe0ce07['vNGoq'])]},{'phase':_0xe0ce07[_0x485f9a(0x238)],'commandArgs':[_0x485f9a(0x23b)]}];for(const _0x3079cf of _0x7370d2){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x1cde0e,'configPath':_0x5aa928,'commandArgs':[..._0x3079cf[_0x485f9a(0x1f4)]],'env':_0x290dea,'telemetry':_0x100986,'phase':_0x3079cf[_0x485f9a(0x1e2)],'metadata':_0x3c3807});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x466571){const _0x392640={'rhGXr':'trace.zip','fHOXv':'trace.trace.zip','bHoVn':function(_0x261e63,_0x5a7c24,_0x4c5508){return _0x261e63(_0x5a7c24,_0x4c5508);}},_0x257ea5=[_0x392640['rhGXr'],_0x392640['fHOXv']];for(const _0x26b145 of _0x257ea5){const _0x42b4d5=_0x392640['bHoVn'](join,_0x466571,_0x26b145);try{return{'buffer':await readFile(_0x42b4d5),'source':_0x42b4d5};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0xfefd80){const _0x2b75f1=_0x421c,_0x57e1aa={'ufnsj':function(_0x315e63,_0x1334f7,_0x3d0743){return _0x315e63(_0x1334f7,_0x3d0743);},'RNRnS':function(_0x410649,_0x79912a){return _0x410649(_0x79912a);},'Ylykl':function(_0x266dda,_0x5a8930){return _0x266dda<_0x5a8930;}},{cwd:_0xdddfc1,cliArtifactDir:_0x17f1a6,startTime:_0x5107e2}=_0xfefd80,_0x25eec7=[];await _0x57e1aa['ufnsj'](mkdir,_0x17f1a6,{'recursive':!![]});const _0x2e1ce9=await readdir(_0xdddfc1,{'withFileTypes':!![]});for(const _0x5b0f28 of _0x2e1ce9){if(!_0x5b0f28['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x2b75f1(0x25c)](_0x5b0f28[_0x2b75f1(0x1ff)]))continue;const _0x1b0707=_0x57e1aa[_0x2b75f1(0x257)](join,_0xdddfc1,_0x5b0f28[_0x2b75f1(0x1ff)]),_0x36bd4b=await _0x57e1aa['RNRnS'](stat,_0x1b0707);if(_0x57e1aa['Ylykl'](_0x36bd4b[_0x2b75f1(0x266)]+0x7d0,_0x5107e2))continue;const _0x2abc9b=buildCliArtifactPath(_0x17f1a6,_0x5b0f28['name']);if(_0x1b0707===_0x2abc9b)continue;await rename(_0x1b0707,_0x2abc9b),_0x25eec7[_0x2b75f1(0x265)](_0x5b0f28['name']);}return _0x25eec7[_0x2b75f1(0x204)]();}function _0x4b14(){const _0x3b85f3=['open\x20new\x20tab','ref\x20','`,\x20then\x20`','get','\x20snapshot\x20--filename\x20','log','\x20open\x20','length','\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.','178015UqEsWi','stringify','PostToolUseFailure','YZoPE','slice','ufnsj','trackPhaseStart','screenshot','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','invocation','test','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','snapshot','stdout','Reviewer','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','36uwnvfE','DEBUG','\x0a\x0a##\x20Additional\x20Notes\x0a','push','mtimeMs','canonicalFlow','nshha','\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.','4YSKrBN','fill','\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','--filename=','hjSCk','HiRXK','keys','phase','\x20screenshot\x20--filename\x20','OztzJ','\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','\x20tracing-start`\x0a3.\x20Run\x20`','AardL','playwright-cli','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','split','tool_input','check\x20','\x20tracing-start`,\x20then\x20`','key_04_success-state.png','open\x20','kliHt','\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.','abuMp','757001KVDDyg','commandArgs','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','...','unaddressedComments','vasrE','oMvkC','trim','playwright_cli_video_stop','selector','`\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`','name','content','215814bgACYq','start\x20tracing','difUh','sort','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','\x5c$&','authorEmail','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','wrrGE','1331392XGxIjT','sugri','`:\x20\x22','\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','authorName','[playwright-cli]\x20','domRef','run-code','RInvV','03_result-visible.png','18iSCRNY','03_learn-more.png','NkkLF','replace','HIlpu','capture\x20key\x20step\x20`','prktP','match',']\x20**','cwd','rzYcE','toLocaleDateString','\x20open`,\x20then\x20`','dSXSO','\x20>\x20','playwright_cli_close','tracing-stop','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','eViEb','NobEc','trackPhaseError','open\x20browser','1895590gVHZHK','):\x20\x22','notes','press\x20','click\x20','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','createdAt','02_button-clicked.png','tool_name','01_initial-state.png','3427856ldVuRJ','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','299209HnGfnn','>\x20\x22','BYpqX','yivVb','run\x20custom\x20Playwright\x20code','close','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','01_mozilla-homepage.png','\x22,\x20\x22','-\x20[','zMWqz','tracing-start','video-stop','ryQUk','trackPhaseEnd','Bash','01_initial.yml','capture\x20step\x20`','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'];_0x4b14=function(){return _0x3b85f3;};return _0x4b14();}
|
|
1
|
+
(function(_0x49e888,_0x447eaf){const _0x3fa4c0=_0x49a5,_0x46b51a=_0x49e888();while(!![]){try{const _0x2acfcb=parseInt(_0x3fa4c0(0x14b))/0x1+parseInt(_0x3fa4c0(0x157))/0x2*(parseInt(_0x3fa4c0(0x161))/0x3)+parseInt(_0x3fa4c0(0x10a))/0x4*(parseInt(_0x3fa4c0(0x10b))/0x5)+-parseInt(_0x3fa4c0(0x174))/0x6+parseInt(_0x3fa4c0(0xf2))/0x7*(parseInt(_0x3fa4c0(0x127))/0x8)+-parseInt(_0x3fa4c0(0x14d))/0x9+-parseInt(_0x3fa4c0(0x130))/0xa*(parseInt(_0x3fa4c0(0x145))/0xb);if(_0x2acfcb===_0x447eaf)break;else _0x46b51a['push'](_0x46b51a['shift']());}catch(_0x44e2cd){_0x46b51a['push'](_0x46b51a['shift']());}}}(_0x245b,0x8e7e6));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 truncatePreview(_0x5aafc0,_0xd2cca5=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x1e0fa4=_0x49a5,_0x79a7b={'Tldcr':function(_0x21779b,_0x321b66){return _0x21779b>_0x321b66;},'kOOGD':'...'};return _0x79a7b[_0x1e0fa4(0xf5)](_0x5aafc0['length'],_0xd2cca5)?_0x5aafc0[_0x1e0fa4(0x153)](0x0,_0xd2cca5)+_0x79a7b[_0x1e0fa4(0xf6)]:_0x5aafc0;}function buildCliArtifactPath(_0x42449a,_0x2a051c){return join(_0x42449a,_0x2a051c);}function _0x245b(){const _0xaf1bd1=['sort','qWcww','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','Reviewer','bnfyK','trackPhaseStart','tool_name','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','347677kOBopD','test','values','join','element','\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.','941136jSPXDf','uaVNT','7936632dHWTgr','playwright_cli_video_stop','stringify','WPEXi','run\x20custom\x20Playwright\x20code','\x20screenshot\x20--filename\x20','slice','TpIkR','name','PostToolUseFailure','86XjScMC','QbTnJ','split','OkrFn','twwKJ','03_result-visible.png','target','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','zGwmc','BmRqj','5178wajtJo','-\x20[','unaddressedComments','dGqvD','env','trackPhaseEnd','stdout','start\x20video\x20recording','):\x20\x22','selector','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','\x20snapshot\x20--filename\x20','WHUSY','BhoIb','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','authorName','00_mozilla-homepage.yml','`\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`','2133114EzCIsx','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','short','\x22,\x20\x22','authorEmail','stop\x20video\x20recording','description','`\x0a-\x20`snapshot\x20--filename\x20','vIFIa','ccVTV','isFile','02_button-clicked.png','inZwe','video-stop','DZncx','NXXcf','hLlGi','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','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','Rjnyz','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','numeric','4578lbSGkr','run-code','pRaQt','Tldcr','kOOGD','DEBUG','jTPIN','\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','\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.','ref\x20','press','stderr','01_initial-state.png','ubwsv','commandArgs','yTEcH','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','playwright-cli','PostToolUse','KBYKo','\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.','02_learn-more.yml','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','(?:^|\x5cs)','148936WShlYf','10VQuipS','`,\x20then\x20`','key_03_success-state.png','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','[ranger-verification-agent]\x20','OkSzk','trackPhaseError','OjgnD','select\x20tab','\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.','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','replace','tool_call','nfFKZ','mlDDK','length','snapshot','content','textContent','phase','key_04_success-state.png','\x20(on\x20element:\x20<','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','domRef','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','Bash','\x20open\x20','tab-select','12424HRvzJm','map','\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','tracing-stop','`\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','open','`\x0a9.\x20Run\x20`','FbLMl','en-US','90fTeuLE','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','`\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`','capture\x20snapshot\x20`','notes','canonicalFlow','stop\x20tracing','BuDLq','oeDQv','keys','ZADGt','close','open\x20browser'];_0x245b=function(){return _0xaf1bd1;};return _0x245b();}function toStepDisplayName(_0x33dadd){const _0x481464=_0x49a5,_0x12413d={'mlDDK':function(_0xbffbc8,_0x3d82a7){return _0xbffbc8(_0x3d82a7);}},_0x51c950=basename(_0x33dadd)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x481464(0x116)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x51c950,'isKeyStep':/^key_/i[_0x481464(0x146)](_0x12413d[_0x481464(0x119)](basename,_0x33dadd))};}function extractShellValue(_0x5b7233){if(!_0x5b7233)return null;return _0x5b7233[0x1]??_0x5b7233[0x2]??_0x5b7233[0x3]??null;}function extractFilenameOption(_0x2fce7a){return extractShellValue(_0x2fce7a['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x19d5e,_0x169b72){const _0x124f5d=_0x49a5,_0xb6e98e={'QbTnJ':'\x5c$&','hxVPO':function(_0x435f5f,_0x45e792){return _0x435f5f(_0x45e792);}},_0x442691=_0x169b72['replace'](/[.*+?^${}()|[\]\\]/g,_0xb6e98e[_0x124f5d(0x158)]);return _0xb6e98e['hxVPO'](extractShellValue,_0x19d5e['match'](new RegExp(_0x124f5d(0x109)+_0x442691+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x26f495){const _0x52db9a=_0x49a5,_0x43b721={'ZTdHT':function(_0x27747b,_0xa770ec,_0x499f08){return _0x27747b(_0xa770ec,_0x499f08);}};if(!_0x26f495)return _0x52db9a(0x15d);if(/^e\d+$/i['test'](_0x26f495))return _0x52db9a(0xfb)+_0x26f495;return JSON[_0x52db9a(0x14f)](_0x43b721['ZTdHT'](truncatePreview,_0x26f495,0x78));}function formatPlaywrightCliLog(_0x102c75,_0x41ec36){const _0x4ab8ad=_0x49a5,_0x34de1f={'BhoIb':_0x4ab8ad(0x12c),'OjgnD':function(_0x543889,_0x1e4ce8,_0x592e42){return _0x543889(_0x1e4ce8,_0x592e42);},'pRaQt':_0x4ab8ad(0x13c),'HCIQD':'start\x20tracing','cAgqV':_0x4ab8ad(0x12a),'ccVTV':_0x4ab8ad(0x136),'hmCqm':'video-start','FbLMl':'video-stop','nUxII':_0x4ab8ad(0x179),'GMdfJ':function(_0x25adde,_0x484169){return _0x25adde(_0x484169);},'zQAYr':'capture\x20screenshot','ubwsv':function(_0x521666,_0x47e2f0){return _0x521666(_0x47e2f0);},'inZwe':function(_0x4b5968,_0x488856,_0x4c84ee){return _0x4b5968(_0x488856,_0x4c84ee);},'sQotj':function(_0x1f6269,_0x20b085){return _0x1f6269(_0x20b085);},'nfFKZ':'tab-new'};switch(_0x41ec36){case _0x34de1f[_0x4ab8ad(0x16f)]:{const _0x25b99f=_0x34de1f[_0x4ab8ad(0x112)](extractFirstCommandArgument,_0x102c75,_0x41ec36);return _0x25b99f?'open\x20'+_0x25b99f:_0x34de1f[_0x4ab8ad(0xf4)];}case'tracing-start':return _0x34de1f['HCIQD'];case _0x34de1f['cAgqV']:return _0x34de1f[_0x4ab8ad(0x17d)];case _0x34de1f['hmCqm']:return _0x4ab8ad(0x168);case _0x34de1f[_0x4ab8ad(0x12e)]:return _0x34de1f['nUxII'];case _0x4ab8ad(0x11b):{const _0x3a9a50=extractFilenameOption(_0x102c75);if(!_0x3a9a50)return'capture\x20snapshot';const {name:_0x5cd39c}=_0x34de1f['GMdfJ'](toStepDisplayName,_0x3a9a50);return _0x4ab8ad(0x133)+_0x5cd39c+'`';}case'screenshot':{const _0xd25dd2=extractFilenameOption(_0x102c75);if(!_0xd25dd2)return _0x34de1f['zQAYr'];const {name:_0x2e8489,isKeyStep:_0x8135be}=toStepDisplayName(_0xd25dd2);return _0x8135be?'capture\x20key\x20step\x20`'+_0x2e8489+'`':'capture\x20step\x20`'+_0x2e8489+'`';}case'click':return'click\x20'+_0x34de1f[_0x4ab8ad(0xff)](formatCommandTarget,_0x34de1f['OjgnD'](extractFirstCommandArgument,_0x102c75,_0x41ec36));case'check':return'check\x20'+formatCommandTarget(extractFirstCommandArgument(_0x102c75,_0x41ec36));case'fill':return'fill\x20'+formatCommandTarget(_0x34de1f[_0x4ab8ad(0xe8)](extractFirstCommandArgument,_0x102c75,_0x41ec36));case _0x4ab8ad(0xfc):return'press\x20'+_0x34de1f['sQotj'](formatCommandTarget,extractFirstCommandArgument(_0x102c75,_0x41ec36));case _0x4ab8ad(0xf3):return _0x4ab8ad(0x151);case _0x34de1f[_0x4ab8ad(0x118)]:{const _0x2d251b=extractFirstCommandArgument(_0x102c75,_0x41ec36);return _0x2d251b?'open\x20new\x20tab\x20'+_0x2d251b:'open\x20new\x20tab';}case _0x4ab8ad(0x126):{const _0x2edb82=_0x34de1f[_0x4ab8ad(0xe8)](extractFirstCommandArgument,_0x102c75,_0x41ec36);return _0x2edb82?'select\x20tab\x20'+_0x2edb82:_0x4ab8ad(0x113);}default:return _0x41ec36;}}function extractPlaywrightCliToolDescription(_0x19674a){const _0x2700f5=_0x49a5,_0x1bb2a1=_0x19674a['description'];if(typeof _0x1bb2a1!=='string')return null;const _0x1bd28a=_0x1bb2a1['trim']()['replace'](/\s+/g,'\x20');return _0x1bd28a[_0x2700f5(0x11a)]>0x0?_0x1bd28a:null;}export function formatPlaywrightCliConsoleLogMessage(_0xe07aca,_0x21eb4d,_0xcb594b){const _0x2be2ea=_0x49a5,_0x1c0e37={'oeDQv':function(_0x130dd2,_0x3eead3){return _0x130dd2(_0x3eead3);}},_0x54062c=formatPlaywrightCliLog(_0x21eb4d,_0xcb594b),_0x571bd=_0x1c0e37[_0x2be2ea(0x138)](extractPlaywrightCliToolDescription,_0xe07aca);if(!_0x571bd)return'[playwright-cli]\x20'+_0x54062c;if(process[_0x2be2ea(0x165)][_0x2be2ea(0xf7)])return _0x2be2ea(0x10f)+_0x571bd+'\x20('+_0x54062c+')';return _0x2be2ea(0x10f)+_0x571bd;}export function buildVerifyFeatureCliDebugPrompt(_0x5a8621,_0x28758e){const _0x8cdc2b=_0x49a5,_0x3b8d20={'dGqvD':function(_0x5d52ed,_0x2e457a,_0x19bbb8){return _0x5d52ed(_0x2e457a,_0x19bbb8);},'jTPIN':function(_0x123628,_0x577604,_0x414930){return _0x123628(_0x577604,_0x414930);},'OkrFn':'03_learn-more.png','vIFIa':function(_0x2b80a8,_0x5be207){return _0x2b80a8(_0x5be207);}},_0x42f2fc=buildCliArtifactPath(_0x28758e,_0x8cdc2b(0x172)),_0x36fda5=buildCliArtifactPath(_0x28758e,'01_mozilla-homepage.png'),_0x538297=_0x3b8d20[_0x8cdc2b(0x164)](buildCliArtifactPath,_0x28758e,_0x8cdc2b(0x107)),_0x57f591=_0x3b8d20[_0x8cdc2b(0xf8)](buildCliArtifactPath,_0x28758e,_0x3b8d20[_0x8cdc2b(0x15a)]),_0xd1517b=_0x3b8d20[_0x8cdc2b(0x17c)](quoteShellArg,_0x42f2fc),_0x1dccbd=quoteShellArg(_0x36fda5),_0x16ca52=quoteShellArg(_0x538297),_0x43855f=_0x3b8d20['vIFIa'](quoteShellArg,_0x57f591);return _0x8cdc2b(0x15e)+_0x5a8621+'\x0a\x0a1.\x20Run\x20`'+_0x5a8621+_0x8cdc2b(0x121)+_0x5a8621+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x5a8621+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x28758e+_0x8cdc2b(0x144)+_0x5a8621+'\x20snapshot\x20--filename\x20'+_0xd1517b+_0x8cdc2b(0x102)+_0x5a8621+'\x20screenshot\x20--filename\x20'+_0x1dccbd+_0x8cdc2b(0x16c)+_0x5a8621+_0x8cdc2b(0x16d)+_0x16ca52+_0x8cdc2b(0x12d)+_0x5a8621+_0x8cdc2b(0x152)+_0x43855f+_0x8cdc2b(0x123);}export function buildVerifyFeatureCliPrompt(_0xd09e01){const _0x17d872=_0x49a5,_0x2653c9={'BmRqj':_0x17d872(0x176),'FapwP':_0x17d872(0xf1),'ocehI':_0x17d872(0x140),'HjFCl':_0x17d872(0x149),'XLGuW':'02_state.yml','aTMhb':function(_0x528e40,_0x15c4ca,_0x1b8255){return _0x528e40(_0x15c4ca,_0x1b8255);},'BSIgp':_0x17d872(0x10d),'Rjnyz':function(_0x21e130,_0xe748c1,_0x490814){return _0x21e130(_0xe748c1,_0x490814);},'OkSzk':_0x17d872(0xfe),'IQkps':function(_0x439331,_0xefc282){return _0x439331(_0xefc282);},'qqGLb':function(_0x48b465,_0x24ef61){return _0x48b465>_0x24ef61;},'NXXcf':function(_0x424add,_0xd830ef){return _0x424add(_0xd830ef);},'qfJlS':function(_0x16fd08,_0x8f99bc,_0x39e8d1){return _0x16fd08(_0x8f99bc,_0x39e8d1);},'bnfyK':_0x17d872(0xe7),'WPEXi':_0x17d872(0x15c)},{checklistItem:_0x54ab6e,itemFeedback:_0x1e0323,taskDescription:_0xff06e8,cliCommandPrefix:_0x11d8a5,cliArtifactDir:_0x5eca7f,isCdpMode:_0x57aafa,url:_0x3a59d9,cdpEndpoint:_0x1ad1d2,loginInstructions:_0x36da80}=_0xd09e01,_0x4d1535=buildCliArtifactPath(_0x5eca7f,'01_initial.yml'),_0x2655c8=buildCliArtifactPath(_0x5eca7f,_0x2653c9['XLGuW']),_0x45ff20=_0x2653c9['aTMhb'](buildCliArtifactPath,_0x5eca7f,_0x2653c9['BSIgp']),_0x301220=_0x2653c9['Rjnyz'](buildCliArtifactPath,_0x5eca7f,_0x2653c9[_0x17d872(0x110)]),_0x17080b=_0x2653c9['IQkps'](quoteShellArg,_0x4d1535),_0x52dfa8=quoteShellArg(_0x2655c8),_0x13eb91=_0x2653c9['IQkps'](quoteShellArg,_0x45ff20),_0x16388c=quoteShellArg(_0x301220),_0x561fce=_0x54ab6e[_0x17d872(0x134)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x54ab6e['notes']:'';let _0x1bc343='';if(_0x1e0323&&_0x2653c9['qqGLb'](_0x1e0323[_0x17d872(0x163)]['length'],0x0)){const _0x58a923=_0x1e0323['unaddressedComments'][_0x17d872(0x128)](_0x3ac271=>{const _0x20046b=_0x17d872,_0x587a3b=new Date(_0x3ac271['createdAt'])['toLocaleDateString'](_0x20046b(0x12f),{'month':_0x2653c9[_0x20046b(0x160)],'day':_0x2653c9['FapwP']}),_0x1c16c7=_0x3ac271[_0x20046b(0x171)]||_0x3ac271[_0x20046b(0x178)]||_0x2653c9['ocehI'],_0x156b66=_0x3ac271[_0x20046b(0x122)]?_0x20046b(0x120)+(_0x3ac271['domRef'][_0x20046b(0x16a)]['split']('\x20>\x20')['pop']()?.[_0x20046b(0x159)](':')[0x0]||_0x2653c9['HjFCl'])+'>\x20\x22'+(_0x3ac271[_0x20046b(0x122)][_0x20046b(0x11d)]||'')[_0x20046b(0x153)](0x0,0x32)+'\x22)':'';return _0x20046b(0x162)+_0x3ac271['id']+']\x20**'+_0x1c16c7+'**\x20('+_0x587a3b+_0x20046b(0x169)+_0x3ac271[_0x20046b(0x11c)]+'\x22'+_0x156b66;})[_0x17d872(0x148)]('\x0a');_0x1bc343='\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'+_0x58a923;}const _0x224f38=_0x1e0323?.['canonicalFlow']?_0x17d872(0x108)+_0x1e0323[_0x17d872(0x135)]:'',_0x199307=_0x57aafa?_0x17d872(0x13f)+_0x1ad1d2+_0x17d872(0x10e):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x3a59d9+'\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',_0x34ca05=_0x3a59d9?_0x2653c9[_0x17d872(0xeb)](quoteShellArg,_0x3a59d9):'',_0x55bf0f=_0x57aafa?_0x17d872(0x16b)+_0x11d8a5+'\x20open`,\x20then\x20`'+_0x11d8a5+'\x20tracing-start`,\x20then\x20`'+_0x11d8a5+_0x17d872(0xf0)+_0x5eca7f+_0x17d872(0x170)+_0x11d8a5+_0x17d872(0x16d)+_0x17080b+_0x17d872(0x132)+_0x11d8a5+'\x20screenshot\x20--filename\x20'+_0x16388c+_0x17d872(0x131)+_0x11d8a5+'\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':_0x17d872(0x16b)+_0x11d8a5+_0x17d872(0x125)+_0x34ca05+_0x17d872(0x10c)+_0x11d8a5+'\x20tracing-start`,\x20then\x20`'+_0x11d8a5+_0x17d872(0xf0)+_0x5eca7f+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x11d8a5+_0x17d872(0x16d)+_0x17080b+_0x17d872(0x173)+_0x11d8a5+'\x20screenshot\x20--filename\x20'+_0x16388c+_0x17d872(0x115)+_0x11d8a5+'\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',_0x5e96cd=_0x57aafa?_0x17d872(0x14a):_0x17d872(0x106),_0x4d4710=_0x36da80?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x36da80+_0x17d872(0xfa):'';return _0x17d872(0xee)+_0x54ab6e[_0x17d872(0x17a)]+_0x561fce+_0x1bc343+_0x224f38+_0x17d872(0x175)+_0xff06e8+'\x0a\x0a'+_0x199307+_0x4d4710+'\x0a\x0a'+_0x55bf0f+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x11d8a5+_0x17d872(0xed)+_0x5eca7f+_0x17d872(0x17b)+_0x52dfa8+_0x17d872(0x12b)+_0x13eb91+'`\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`'+_0x5eca7f+'`:\x20\x22'+_0x301220+_0x17d872(0x177)+_0x2653c9['qfJlS'](buildCliArtifactPath,_0x5eca7f,_0x2653c9[_0x17d872(0x141)])+_0x17d872(0x177)+_0x2653c9[_0x17d872(0xef)](buildCliArtifactPath,_0x5eca7f,_0x2653c9[_0x17d872(0x150)])+_0x17d872(0x129)+buildCliArtifactPath(_0x5eca7f,_0x17d872(0x11f))+_0x17d872(0xf9)+_0x5e96cd+_0x17d872(0x114);}function _0x49a5(_0x84263c,_0x254d63){_0x84263c=_0x84263c-0xe6;const _0x245bfb=_0x245b();let _0x49a51b=_0x245bfb[_0x84263c];return _0x49a51b;}export function summarizeVerifyFeatureCliCommandAvailability(_0xe044de){const _0xa25f3=_0x49a5,_0x2cd6ea={'qiFSb':function(_0x4a11fe,_0xd6618a){return _0x4a11fe===_0xd6618a;}},_0x2081fc=[..._0xe044de[_0xa25f3(0x139)]()][_0xa25f3(0x13d)]();let _0x2600c0=0x0;for(const _0x431cf6 of _0xe044de[_0xa25f3(0x147)]()){_0x2600c0+=_0x431cf6;}return{'cliCommandCount':_0x2600c0,'cliCommandsSeen':_0x2081fc,'noCliCommandsCalled':_0x2cd6ea['qiFSb'](_0x2600c0,0x0)};}export function createVerifyFeatureCliHooks(_0x1fd72e){const _0x565236=_0x49a5,_0x47d643={'twwKJ':function(_0x314144,_0x159552){return _0x314144!==_0x159552;},'BuDLq':_0x565236(0x104),'aWRzN':function(_0x4d8e05,_0x3ea081){return _0x4d8e05!==_0x3ea081;},'oBpKx':function(_0x2788f3,_0x39a303){return _0x2788f3(_0x39a303);},'UNaiz':function(_0x43fafb,_0x4e5c27){return _0x43fafb+_0x4e5c27;},'qWcww':_0x565236(0x103),'hLlGi':_0x565236(0x117),'GvkSp':function(_0x345acb,_0xe5b061){return _0x345acb!==_0xe5b061;},'DZncx':_0x565236(0x124)},_0x40fd24=new Map(),_0x17c23d=async _0x957ce=>{const _0x11e1be=_0x565236;if(_0x47d643[_0x11e1be(0x15b)](_0x957ce['hook_event_name'],_0x47d643[_0x11e1be(0x137)]))return{};const _0x4c92b8=_0x957ce;if(_0x47d643['aWRzN'](_0x4c92b8[_0x11e1be(0x143)],_0x11e1be(0x124)))return{};const _0x5bbef2=_0x4c92b8['tool_input'],_0x3dd277=_0x47d643['oBpKx'](extractBashCommand,_0x5bbef2);if(!_0x3dd277)return{};const _0x6f50d5=parsePlaywrightCliCommand(_0x3dd277);if(!_0x6f50d5)return{};return _0x40fd24['set'](_0x6f50d5,_0x47d643['UNaiz'](_0x40fd24['get'](_0x6f50d5)||0x0,0x1)),_0x1fd72e[_0x11e1be(0x142)]('tool_call',{'transport':_0x47d643[_0x11e1be(0x13e)],'toolName':_0x6f50d5}),_0x1fd72e[_0x11e1be(0x166)](_0x47d643[_0x11e1be(0xec)],{'transport':'playwright-cli','toolName':_0x6f50d5,'bashCommandPreview':truncatePreview(_0x3dd277)}),_0x47d643['GvkSp'](_0x6f50d5,_0x11e1be(0x11b))&&console['log'](formatPlaywrightCliConsoleLogMessage(_0x5bbef2,_0x3dd277,_0x6f50d5)),{};},_0x57173e=async _0x2f5523=>{const _0x1df2cc=_0x565236;if(_0x47d643['GvkSp'](_0x2f5523['hook_event_name'],_0x1df2cc(0x156)))return{};const _0x1cd4ad=_0x2f5523;if(_0x47d643['twwKJ'](_0x1cd4ad['tool_name'],_0x1df2cc(0x124)))return{};return await _0x1fd72e['trackPhaseError']('tool_failure',_0x1cd4ad['error'],{'transport':'playwright-cli','toolName':_0x47d643[_0x1df2cc(0xea)]}),{};};return{'postToolUseHook':_0x17c23d,'postToolUseFailureHook':_0x57173e,'commandCounts':_0x40fd24};}async function runPlaywrightCliLifecycleCommand(_0xf41f6f){const _0x18c226=_0x49a5,_0x3fd6f9={'NnyRk':function(_0x5e865c,_0x5dfc4f,_0x9aaef6){return _0x5e865c(_0x5dfc4f,_0x9aaef6);}},{sessionId:_0x3d609f,configPath:_0x26a63c,commandArgs:_0x43224a,env:_0x11d1f1,telemetry:_0x3fe71a,phase:_0x9d9eaa,metadata:_0x126195,timeoutMs:_0x5e2939}=_0xf41f6f;_0x3fe71a['trackPhaseStart'](_0x9d9eaa,_0x126195);try{const _0x273337=await runPlaywrightCliCommand({'sessionId':_0x3d609f,'configPath':_0x26a63c,'commandArgs':_0x43224a,'cwd':process['cwd'](),'env':_0x11d1f1,'timeoutMs':_0x5e2939??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x3fe71a[_0x18c226(0x166)](_0x9d9eaa,{..._0x126195,'subcommand':_0x273337['invocation']['subcommand'],'stdoutPreview':_0x3fd6f9['NnyRk'](truncatePreview,_0x273337[_0x18c226(0x167)],0x7d0),'stderrPreview':truncatePreview(_0x273337[_0x18c226(0xfd)],0x7d0)});}catch(_0x4796ee){await _0x3fe71a[_0x18c226(0x111)](_0x9d9eaa,_0x4796ee,_0x126195);throw _0x4796ee;}}export async function finalizeVerifyFeatureCliSession(_0x4ef0ba){const _0x3cbd31=_0x49a5,_0x5b8e51={'zGwmc':'tracing-stop','ZADGt':'session-recording.webm','TpIkR':_0x3cbd31(0x13b),'cBhvR':function(_0x460fbb,_0x592770){return _0x460fbb(_0x592770);}},{telemetry:_0x3fd091,sessionId:_0x904b8,configPath:_0x5656c2,cliArtifactDir:_0x52c028,env:_0x483660,transportMetadata:_0x7db437}=_0x4ef0ba,_0x5eaff3=[{'phase':'playwright_cli_tracing_stop','commandArgs':[_0x5b8e51[_0x3cbd31(0x15f)]]},{'phase':_0x3cbd31(0x14e),'commandArgs':[_0x3cbd31(0xe9),'--filename='+buildCliArtifactPath(_0x52c028,_0x5b8e51[_0x3cbd31(0x13a)])]},{'phase':'playwright_cli_close','commandArgs':[_0x5b8e51[_0x3cbd31(0x154)]]}];for(const _0x197c46 of _0x5eaff3){try{await _0x5b8e51['cBhvR'](runPlaywrightCliLifecycleCommand,{'sessionId':_0x904b8,'configPath':_0x5656c2,'commandArgs':[..._0x197c46[_0x3cbd31(0x100)]],'env':_0x483660,'telemetry':_0x3fd091,'phase':_0x197c46[_0x3cbd31(0x11e)],'metadata':_0x7db437});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x89b581){const _0x4cf83e=_0x49a5,_0x2a8037={'yTEcH':'trace.zip','KBYKo':function(_0x1549e3,_0x4d8911,_0x55118c){return _0x1549e3(_0x4d8911,_0x55118c);}},_0x4d05b9=[_0x2a8037[_0x4cf83e(0x101)],'trace.trace.zip'];for(const _0x53a3c4 of _0x4d05b9){const _0x14467c=_0x2a8037[_0x4cf83e(0x105)](join,_0x89b581,_0x53a3c4);try{return{'buffer':await readFile(_0x14467c),'source':_0x14467c};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x52d17c){const _0x480358=_0x49a5,_0x5aae2c={'URrMb':function(_0x4dcb53,_0x133cd7,_0x286f66){return _0x4dcb53(_0x133cd7,_0x286f66);},'WHUSY':function(_0x26433f,_0x3f5f7f){return _0x26433f(_0x3f5f7f);},'uaVNT':function(_0xeed622,_0x21084a){return _0xeed622+_0x21084a;}},{cwd:_0x5f0fa0,cliArtifactDir:_0x2e80e7,startTime:_0x535006}=_0x52d17c,_0x154775=[];await _0x5aae2c['URrMb'](mkdir,_0x2e80e7,{'recursive':!![]});const _0x44de32=await _0x5aae2c['URrMb'](readdir,_0x5f0fa0,{'withFileTypes':!![]});for(const _0x489b84 of _0x44de32){if(!_0x489b84[_0x480358(0xe6)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x480358(0x146)](_0x489b84['name']))continue;const _0x39cf31=join(_0x5f0fa0,_0x489b84[_0x480358(0x155)]),_0x3d83a9=await _0x5aae2c[_0x480358(0x16e)](stat,_0x39cf31);if(_0x5aae2c[_0x480358(0x14c)](_0x3d83a9['mtimeMs'],0x7d0)<_0x535006)continue;const _0x1456b9=_0x5aae2c['URrMb'](buildCliArtifactPath,_0x2e80e7,_0x489b84[_0x480358(0x155)]);if(_0x39cf31===_0x1456b9)continue;await rename(_0x39cf31,_0x1456b9),_0x154775['push'](_0x489b84['name']);}return _0x154775[_0x480358(0x13d)]();}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ranger-testing/ranger-cli",
|
|
3
|
-
"version": "2.5.4-alpha.
|
|
3
|
+
"version": "2.5.4-alpha.ed286f1-2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ranger": "./build/cli.js",
|
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
"obfuscate": "node scripts/obfuscate.cjs",
|
|
13
13
|
"dev": "tsx src/cli.ts",
|
|
14
14
|
"check-playwright-version": "node scripts/check-playwright-version.cjs",
|
|
15
|
-
"postinstall": "node scripts/postinstall.js"
|
|
15
|
+
"postinstall": "node scripts/postinstall.js",
|
|
16
|
+
"test": "jest --config jest.config.cjs"
|
|
16
17
|
},
|
|
17
18
|
"files": [
|
|
18
19
|
"build",
|
|
@@ -29,9 +30,12 @@
|
|
|
29
30
|
},
|
|
30
31
|
"devDependencies": {
|
|
31
32
|
"@types/inquirer": "^9.0.7",
|
|
33
|
+
"@types/jest": "^29.5.0",
|
|
32
34
|
"@types/node": "^22.0.0",
|
|
33
35
|
"@types/yargs": "^17.0.32",
|
|
36
|
+
"jest": "^29.7.0",
|
|
34
37
|
"javascript-obfuscator": "^4.1.1",
|
|
38
|
+
"ts-jest": "^29.1.0",
|
|
35
39
|
"tsx": "^4.20.6",
|
|
36
40
|
"typescript": "^5.0.0"
|
|
37
41
|
},
|