@ranger-testing/ranger-cli 2.5.4-alpha.8c24bb2-15 → 2.5.4-alpha.9360c2a-16
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/migrateProfile.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/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.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/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.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/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.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 +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x51701e,_0x49ecb2){const _0x5766eb=_0x5da7,_0x4038ec=_0x51701e();while(!![]){try{const _0x1e59a6=-parseInt(_0x5766eb(0x103))/0x1+parseInt(_0x5766eb(0xb5))/0x2+parseInt(_0x5766eb(0xfa))/0x3*(-parseInt(_0x5766eb(0xe5))/0x4)+-parseInt(_0x5766eb(0xb6))/0x5*(-parseInt(_0x5766eb(0xf7))/0x6)+-parseInt(_0x5766eb(0xe8))/0x7+parseInt(_0x5766eb(0x91))/0x8+parseInt(_0x5766eb(0xc9))/0x9;if(_0x1e59a6===_0x49ecb2)break;else _0x4038ec['push'](_0x4038ec['shift']());}catch(_0x5754a9){_0x4038ec['push'](_0x4038ec['shift']());}}}(_0x22f2,0x3c6e2));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(_0x19da39,_0x822e9e=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x1793b4=_0x5da7,_0x2b436b={'AiDfQ':_0x1793b4(0xa0)};return _0x19da39[_0x1793b4(0xde)]>_0x822e9e?_0x19da39['slice'](0x0,_0x822e9e)+_0x2b436b[_0x1793b4(0xcc)]:_0x19da39;}function buildCliArtifactPath(_0x19230c,_0x189ecf){const _0x31fc1c={'qCRIg':function(_0x4d29ac,_0x23c1de,_0x59a426){return _0x4d29ac(_0x23c1de,_0x59a426);}};return _0x31fc1c['qCRIg'](join,_0x19230c,_0x189ecf);}function toStepDisplayName(_0x360c2f){const _0x22e832=_0x5da7,_0xfce857={'xMoLc':function(_0x43e41f,_0x2b11c1){return _0x43e41f(_0x2b11c1);}},_0x279f7a=_0xfce857[_0x22e832(0x90)](basename,_0x360c2f)[_0x22e832(0x96)](/\.(?:png|ya?ml)$/i,'')[_0x22e832(0x96)](/^key_/i,'')[_0x22e832(0x96)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x279f7a,'isKeyStep':/^key_/i['test'](_0xfce857['xMoLc'](basename,_0x360c2f))};}function _0x5da7(_0x15da5b,_0x2d8fb0){_0x15da5b=_0x15da5b-0x85;const _0x22f286=_0x22f2();let _0x5da7cf=_0x22f286[_0x15da5b];return _0x5da7cf;}function extractShellValue(_0x13deea){if(!_0x13deea)return null;return _0x13deea[0x1]??_0x13deea[0x2]??_0x13deea[0x3]??null;}function extractFilenameOption(_0x3ad360){const _0x4238d8=_0x5da7,_0xf2d384={'YlyiQ':function(_0x1cf36b,_0x3a19a2){return _0x1cf36b(_0x3a19a2);}};return _0xf2d384[_0x4238d8(0xbd)](extractShellValue,_0x3ad360[_0x4238d8(0x93)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x440f10,_0x4000b6){const _0x30ab70=_0x5da7,_0x3775b4={'jTHPc':_0x30ab70(0x123)},_0x382963=_0x4000b6[_0x30ab70(0x96)](/[.*+?^${}()|[\]\\]/g,_0x3775b4[_0x30ab70(0x88)]);return extractShellValue(_0x440f10[_0x30ab70(0x93)](new RegExp('(?:^|\x5cs)'+_0x382963+_0x30ab70(0xc2))));}function formatCommandTarget(_0x55ac1f){const _0xc099e6=_0x5da7,_0x48b5ac={'dUNao':_0xc099e6(0x121)};if(!_0x55ac1f)return _0x48b5ac[_0xc099e6(0xd2)];if(/^e\d+$/i['test'](_0x55ac1f))return _0xc099e6(0x112)+_0x55ac1f;return JSON['stringify'](truncatePreview(_0x55ac1f,0x78));}function formatPlaywrightCliLog(_0x568454,_0x8a41e7){const _0x32dad3=_0x5da7,_0x4307da={'zucFp':function(_0x544c26,_0x16bf81,_0x21cee8){return _0x544c26(_0x16bf81,_0x21cee8);},'bmfPw':_0x32dad3(0x106),'zmTEC':_0x32dad3(0xb8),'IfmSK':'stop\x20video\x20recording','yeEEO':function(_0x31c845,_0xe57a1e){return _0x31c845(_0xe57a1e);},'HhSOE':'capture\x20snapshot','jTRaV':'screenshot','TXulm':function(_0x4f3133,_0x305cc9){return _0x4f3133(_0x305cc9);},'BdKPr':'check','ztZkd':function(_0x3e32b0,_0x4ef681,_0x359a31){return _0x3e32b0(_0x4ef681,_0x359a31);},'YnjoR':function(_0x18bc99,_0x5bb9c4){return _0x18bc99(_0x5bb9c4);},'rgLOT':_0x32dad3(0xae),'xdDhG':function(_0x528b80,_0x54afed,_0x19c7c1){return _0x528b80(_0x54afed,_0x19c7c1);},'ZbQhZ':_0x32dad3(0x105),'efUde':'select\x20tab'};switch(_0x8a41e7){case _0x32dad3(0x11e):{const _0x3c55e6=_0x4307da[_0x32dad3(0xb7)](extractFirstCommandArgument,_0x568454,_0x8a41e7);return _0x3c55e6?_0x32dad3(0x115)+_0x3c55e6:_0x32dad3(0x117);}case _0x32dad3(0xce):return _0x32dad3(0xbf);case _0x32dad3(0xfb):return _0x32dad3(0x99);case _0x4307da[_0x32dad3(0xb9)]:return _0x32dad3(0xda);case _0x4307da[_0x32dad3(0xd3)]:return _0x4307da['IfmSK'];case _0x32dad3(0x124):{const _0x4fd058=_0x4307da[_0x32dad3(0xd9)](extractFilenameOption,_0x568454);if(!_0x4fd058)return _0x4307da[_0x32dad3(0xee)];const {name:_0x29243e}=toStepDisplayName(_0x4fd058);return _0x32dad3(0x109)+_0x29243e+'`';}case _0x4307da[_0x32dad3(0x11c)]:{const _0x50b36e=extractFilenameOption(_0x568454);if(!_0x50b36e)return _0x32dad3(0x98);const {name:_0x3e1c4a,isKeyStep:_0x3c230d}=_0x4307da['TXulm'](toStepDisplayName,_0x50b36e);return _0x3c230d?'capture\x20key\x20step\x20`'+_0x3e1c4a+'`':_0x32dad3(0xc6)+_0x3e1c4a+'`';}case'click':return'click\x20'+formatCommandTarget(_0x4307da['zucFp'](extractFirstCommandArgument,_0x568454,_0x8a41e7));case _0x4307da[_0x32dad3(0xca)]:return'check\x20'+_0x4307da[_0x32dad3(0xd9)](formatCommandTarget,_0x4307da['zucFp'](extractFirstCommandArgument,_0x568454,_0x8a41e7));case'fill':return _0x32dad3(0xa1)+formatCommandTarget(_0x4307da['ztZkd'](extractFirstCommandArgument,_0x568454,_0x8a41e7));case'press':return _0x32dad3(0x125)+_0x4307da['YnjoR'](formatCommandTarget,extractFirstCommandArgument(_0x568454,_0x8a41e7));case'run-code':return _0x4307da[_0x32dad3(0xd1)];case'tab-new':{const _0x16c5c2=_0x4307da[_0x32dad3(0xf4)](extractFirstCommandArgument,_0x568454,_0x8a41e7);return _0x16c5c2?_0x32dad3(0xb4)+_0x16c5c2:_0x32dad3(0xac);}case _0x4307da['ZbQhZ']:{const _0x51a7e9=extractFirstCommandArgument(_0x568454,_0x8a41e7);return _0x51a7e9?_0x32dad3(0xfc)+_0x51a7e9:_0x4307da[_0x32dad3(0x9d)];}default:return _0x8a41e7;}}function extractPlaywrightCliToolDescription(_0x471a14){const _0x2d096e=_0x5da7,_0x589c46=_0x471a14[_0x2d096e(0x11b)];if(typeof _0x589c46!==_0x2d096e(0xe9))return null;const _0xad4cc2=_0x589c46['trim']()['replace'](/\s+/g,'\x20');return _0xad4cc2['length']>0x0?_0xad4cc2:null;}export function formatPlaywrightCliConsoleLogMessage(_0x35f93a,_0x4c18d8,_0x3af78d){const _0x504aff=_0x5da7,_0x18e67c={'wcMTk':function(_0x25c21d,_0x1f3947,_0x38f6ff){return _0x25c21d(_0x1f3947,_0x38f6ff);}},_0x160265=_0x18e67c[_0x504aff(0x89)](formatPlaywrightCliLog,_0x4c18d8,_0x3af78d),_0x2ff879=extractPlaywrightCliToolDescription(_0x35f93a);if(!_0x2ff879)return'[playwright-cli]\x20'+_0x160265;if(process[_0x504aff(0xaa)][_0x504aff(0x10f)])return _0x504aff(0xe0)+_0x2ff879+'\x20('+_0x160265+')';return'[ranger-verification-agent]\x20'+_0x2ff879;}export function buildVerifyFeatureCliDebugPrompt(_0x44e025,_0x21260b){const _0x294812=_0x5da7,_0x29031e={'cSZbJ':function(_0x59608b,_0x3d6adc,_0x304586){return _0x59608b(_0x3d6adc,_0x304586);},'wzPUS':function(_0x306333,_0x1e17a5,_0x422c21){return _0x306333(_0x1e17a5,_0x422c21);},'rhrpe':_0x294812(0x97),'JdpCN':_0x294812(0xa9),'RJHPR':function(_0x31434b,_0x374ca3){return _0x31434b(_0x374ca3);}},_0x4f96ca=_0x29031e[_0x294812(0x10e)](buildCliArtifactPath,_0x21260b,'00_mozilla-homepage.yml'),_0x334524=buildCliArtifactPath(_0x21260b,'01_mozilla-homepage.png'),_0x58d0e6=_0x29031e['wzPUS'](buildCliArtifactPath,_0x21260b,_0x29031e[_0x294812(0x107)]),_0x4c9d9b=buildCliArtifactPath(_0x21260b,_0x29031e['JdpCN']),_0x6f29e=quoteShellArg(_0x4f96ca),_0x38eb66=quoteShellArg(_0x334524),_0x3c6a41=_0x29031e[_0x294812(0xe4)](quoteShellArg,_0x58d0e6),_0x415fba=quoteShellArg(_0x4c9d9b);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x44e025+_0x294812(0xbe)+_0x44e025+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x44e025+_0x294812(0x122)+_0x44e025+_0x294812(0x102)+_0x21260b+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x44e025+_0x294812(0xe6)+_0x6f29e+_0x294812(0xf1)+_0x44e025+_0x294812(0x110)+_0x38eb66+_0x294812(0xdd)+_0x44e025+'\x20snapshot\x20--filename\x20'+_0x3c6a41+_0x294812(0xa6)+_0x44e025+'\x20screenshot\x20--filename\x20'+_0x415fba+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x26c4ac){const _0x187335=_0x5da7,_0x3e3214={'xOhHI':_0x187335(0x9e),'XxdzJ':_0x187335(0x11f),'KfDoa':_0x187335(0x108),'xTIrf':'01_initial.yml','mdSEP':function(_0x526a64,_0x99a207,_0x3e99bb){return _0x526a64(_0x99a207,_0x3e99bb);},'wEYte':'02_state.yml','OVNij':function(_0x4560cb,_0x543747,_0x5af384){return _0x4560cb(_0x543747,_0x5af384);},'Vlitl':_0x187335(0xe7),'sHWaI':function(_0x5c9bcf,_0x583b58){return _0x5c9bcf(_0x583b58);},'IhCSv':function(_0xe5ce7e,_0x271435,_0xb5f5c2){return _0xe5ce7e(_0x271435,_0xb5f5c2);},'KcwIB':'02_button-clicked.png','xiaUj':_0x187335(0x120),'ILDIi':function(_0xcf523,_0x1809a9,_0x375920){return _0xcf523(_0x1809a9,_0x375920);}},{checklistItem:_0x4d1cbb,itemFeedback:_0x2c9b9a,taskDescription:_0x1ff55b,cliCommandPrefix:_0x2a3085,cliArtifactDir:_0x3caac5,isCdpMode:_0x5c7592,url:_0x118294,cdpEndpoint:_0x5452c0,loginInstructions:_0x45fd89}=_0x26c4ac,_0x36b966=buildCliArtifactPath(_0x3caac5,_0x3e3214[_0x187335(0xf2)]),_0x4c984a=_0x3e3214[_0x187335(0xdf)](buildCliArtifactPath,_0x3caac5,_0x3e3214['wEYte']),_0x2795e0=_0x3e3214[_0x187335(0xef)](buildCliArtifactPath,_0x3caac5,_0x187335(0x92)),_0x41395f=buildCliArtifactPath(_0x3caac5,_0x3e3214['Vlitl']),_0x4960d3=_0x3e3214[_0x187335(0xf8)](quoteShellArg,_0x36b966),_0x3dfe98=quoteShellArg(_0x4c984a),_0x3390d7=quoteShellArg(_0x2795e0),_0x40d330=_0x3e3214['sHWaI'](quoteShellArg,_0x41395f),_0x5e38fe=_0x4d1cbb['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x4d1cbb['notes']:'';let _0xe3a534='';if(_0x2c9b9a&&_0x2c9b9a['unaddressedComments'][_0x187335(0xde)]>0x0){const _0x8a71c9=_0x2c9b9a['unaddressedComments']['map'](_0x3303f7=>{const _0x3af0b0=_0x187335,_0x17b91c=new Date(_0x3303f7['createdAt'])['toLocaleDateString'](_0x3e3214[_0x3af0b0(0xa2)],{'month':_0x3e3214['XxdzJ'],'day':_0x3af0b0(0xba)}),_0x56828b=_0x3303f7[_0x3af0b0(0xa4)]||_0x3303f7[_0x3af0b0(0x95)]||_0x3af0b0(0xdb),_0x16b2bb=_0x3303f7[_0x3af0b0(0xc7)]?_0x3af0b0(0x100)+(_0x3303f7[_0x3af0b0(0xc7)]['selector'][_0x3af0b0(0x11d)]('\x20>\x20')['pop']()?.['split'](':')[0x0]||_0x3e3214[_0x3af0b0(0xd0)])+_0x3af0b0(0xab)+(_0x3303f7[_0x3af0b0(0xc7)][_0x3af0b0(0x101)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x3303f7['id']+_0x3af0b0(0xe3)+_0x56828b+'**\x20('+_0x17b91c+'):\x20\x22'+_0x3303f7[_0x3af0b0(0x8f)]+'\x22'+_0x16b2bb;})[_0x187335(0x87)]('\x0a');_0xe3a534=_0x187335(0x8c)+_0x8a71c9;}const _0x5a4efc=_0x2c9b9a?.['canonicalFlow']?_0x187335(0xcf)+_0x2c9b9a['canonicalFlow']:'',_0x4cbce4=_0x5c7592?_0x187335(0xe1)+_0x5452c0+_0x187335(0x94):_0x187335(0xb2)+_0x118294+'\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',_0x1eea05=_0x118294?quoteShellArg(_0x118294):'',_0x2bf3a0=_0x5c7592?_0x187335(0xa5)+_0x2a3085+'\x20open`,\x20then\x20`'+_0x2a3085+_0x187335(0xf5)+_0x2a3085+_0x187335(0xbb)+_0x3caac5+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x2a3085+'\x20snapshot\x20--filename\x20'+_0x4960d3+_0x187335(0xc4)+_0x2a3085+'\x20screenshot\x20--filename\x20'+_0x40d330+_0x187335(0x9b)+_0x2a3085+_0x187335(0xdc):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x2a3085+_0x187335(0xc8)+_0x1eea05+_0x187335(0xeb)+_0x2a3085+_0x187335(0xf5)+_0x2a3085+_0x187335(0xbb)+_0x3caac5+_0x187335(0x8b)+_0x2a3085+_0x187335(0xe6)+_0x4960d3+_0x187335(0xc0)+_0x2a3085+'\x20screenshot\x20--filename\x20'+_0x40d330+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x2a3085+'\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',_0x72eec2=_0x5c7592?'\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.':_0x187335(0xd7),_0x531df2=_0x45fd89?_0x187335(0xd4)+_0x45fd89+_0x187335(0x114):'';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'+_0x4d1cbb[_0x187335(0x11b)]+_0x5e38fe+_0xe3a534+_0x5a4efc+_0x187335(0xd8)+_0x1ff55b+'\x0a\x0a'+_0x4cbce4+_0x531df2+'\x0a\x0a'+_0x2bf3a0+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x2a3085+_0x187335(0x119)+_0x3caac5+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x3dfe98+_0x187335(0xfd)+_0x3390d7+'`\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`'+_0x3caac5+_0x187335(0xad)+_0x41395f+'\x22,\x20\x22'+_0x3e3214[_0x187335(0x8d)](buildCliArtifactPath,_0x3caac5,_0x3e3214['KcwIB'])+'\x22,\x20\x22'+_0x3e3214[_0x187335(0xef)](buildCliArtifactPath,_0x3caac5,_0x3e3214[_0x187335(0xb1)])+_0x187335(0x9f)+_0x3e3214['ILDIi'](buildCliArtifactPath,_0x3caac5,_0x187335(0xd5))+_0x187335(0x8e)+_0x72eec2+_0x187335(0xf0);}export function summarizeVerifyFeatureCliCommandAvailability(_0x316d22){const _0x145c91=_0x5da7,_0x21687c={'HmCoP':function(_0xf33fc9,_0x17c766){return _0xf33fc9===_0x17c766;}},_0x1c2590=[..._0x316d22['keys']()][_0x145c91(0x85)]();let _0x4a46cd=0x0;for(const _0x5baade of _0x316d22[_0x145c91(0xec)]()){_0x4a46cd+=_0x5baade;}return{'cliCommandCount':_0x4a46cd,'cliCommandsSeen':_0x1c2590,'noCliCommandsCalled':_0x21687c['HmCoP'](_0x4a46cd,0x0)};}export function createVerifyFeatureCliHooks(_0x1984f2){const _0x17c264=_0x5da7,_0x3a3796={'dwzqC':function(_0x5533ff,_0x46cf2e){return _0x5533ff!==_0x46cf2e;},'cBUuj':function(_0x7b918e,_0x59e010){return _0x7b918e!==_0x59e010;},'bKcoI':function(_0x25849b,_0x953f1){return _0x25849b(_0x953f1);},'WQuOd':function(_0x3fd177,_0x488f7f){return _0x3fd177+_0x488f7f;},'oUhyC':_0x17c264(0xa3),'nUnDs':'playwright-cli','jqjKz':'PostToolUseFailure','BskIg':'Bash','yGfQg':'tool_failure'},_0xb03309=new Map(),_0x320986=async _0x509ae0=>{const _0x3ea229=_0x17c264;if(_0x3a3796['dwzqC'](_0x509ae0['hook_event_name'],_0x3ea229(0xcb)))return{};const _0x5f2572=_0x509ae0;if(_0x3a3796[_0x3ea229(0xcd)](_0x5f2572['tool_name'],'Bash'))return{};const _0x2d7cf1=_0x5f2572[_0x3ea229(0xc3)],_0x5331c4=_0x3a3796['bKcoI'](extractBashCommand,_0x2d7cf1);if(!_0x5331c4)return{};const _0x1c1bbd=_0x3a3796['bKcoI'](parsePlaywrightCliCommand,_0x5331c4);if(!_0x1c1bbd)return{};return _0xb03309['set'](_0x1c1bbd,_0x3a3796[_0x3ea229(0xbc)](_0xb03309['get'](_0x1c1bbd)||0x0,0x1)),_0x1984f2[_0x3ea229(0x104)](_0x3a3796['oUhyC'],{'transport':_0x3a3796['nUnDs'],'toolName':_0x1c1bbd}),_0x1984f2['trackPhaseEnd'](_0x3ea229(0xa3),{'transport':'playwright-cli','toolName':_0x1c1bbd,'bashCommandPreview':truncatePreview(_0x5331c4)}),_0x1c1bbd!=='snapshot'&&console[_0x3ea229(0x9a)](formatPlaywrightCliConsoleLogMessage(_0x2d7cf1,_0x5331c4,_0x1c1bbd)),{};},_0x90a1ef=async _0x2fdc11=>{const _0x1d23c4=_0x17c264;if(_0x2fdc11[_0x1d23c4(0xd6)]!==_0x3a3796[_0x1d23c4(0x10b)])return{};const _0x45c431=_0x2fdc11;if(_0x45c431['tool_name']!==_0x3a3796[_0x1d23c4(0x11a)])return{};return await _0x1984f2[_0x1d23c4(0x111)](_0x3a3796['yGfQg'],_0x45c431[_0x1d23c4(0xf9)],{'transport':_0x1d23c4(0xed),'toolName':_0x3a3796[_0x1d23c4(0x11a)]}),{};};return{'postToolUseHook':_0x320986,'postToolUseFailureHook':_0x90a1ef,'commandCounts':_0xb03309};}async function runPlaywrightCliLifecycleCommand(_0x517051){const _0x2a3d91=_0x5da7,_0x2197d1={'HBzkh':function(_0x28e1b6,_0x2845a1){return _0x28e1b6(_0x2845a1);},'AzRJp':function(_0x1c2025,_0x18fc0b,_0xfb2c7a){return _0x1c2025(_0x18fc0b,_0xfb2c7a);}},{sessionId:_0x3923fb,configPath:_0x2e44e1,commandArgs:_0x155fc8,env:_0x3f8178,telemetry:_0x44b250,phase:_0x2e5548,metadata:_0x4ebc6c,timeoutMs:_0x4eafa9}=_0x517051;_0x44b250['trackPhaseStart'](_0x2e5548,_0x4ebc6c);try{const _0x16ed12=await _0x2197d1[_0x2a3d91(0xfe)](runPlaywrightCliCommand,{'sessionId':_0x3923fb,'configPath':_0x2e44e1,'commandArgs':_0x155fc8,'cwd':process['cwd'](),'env':_0x3f8178,'timeoutMs':_0x4eafa9??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x44b250['trackPhaseEnd'](_0x2e5548,{..._0x4ebc6c,'subcommand':_0x16ed12[_0x2a3d91(0xa8)][_0x2a3d91(0x8a)],'stdoutPreview':_0x2197d1[_0x2a3d91(0xa7)](truncatePreview,_0x16ed12['stdout'],0x7d0),'stderrPreview':_0x2197d1['AzRJp'](truncatePreview,_0x16ed12[_0x2a3d91(0xc5)],0x7d0)});}catch(_0xc980a4){await _0x44b250[_0x2a3d91(0x111)](_0x2e5548,_0xc980a4,_0x4ebc6c);throw _0xc980a4;}}export async function finalizeVerifyFeatureCliSession(_0x21c3ac){const _0x2f51ea=_0x5da7,_0xe8e72d={'ECwpp':_0x2f51ea(0x9c),'PAyDy':'tracing-stop','oZCTs':'video-stop','GSXAz':'session-recording.webm','oUtwH':_0x2f51ea(0xf3),'yQcPc':function(_0x9113dc,_0x270b10){return _0x9113dc(_0x270b10);}},{telemetry:_0x5c9724,sessionId:_0x536761,configPath:_0x353f7e,cliArtifactDir:_0x442816,env:_0xa044d3,transportMetadata:_0x50677e}=_0x21c3ac,_0x8a36b6=[{'phase':_0xe8e72d[_0x2f51ea(0xe2)],'commandArgs':[_0xe8e72d['PAyDy']]},{'phase':'playwright_cli_video_stop','commandArgs':[_0xe8e72d[_0x2f51ea(0xf6)],_0x2f51ea(0xc1)+buildCliArtifactPath(_0x442816,_0xe8e72d[_0x2f51ea(0x116)])]},{'phase':'playwright_cli_close','commandArgs':[_0xe8e72d['oUtwH']]}];for(const _0xae41ca of _0x8a36b6){try{await _0xe8e72d[_0x2f51ea(0x86)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x536761,'configPath':_0x353f7e,'commandArgs':[..._0xae41ca[_0x2f51ea(0xff)]],'env':_0xa044d3,'telemetry':_0x5c9724,'phase':_0xae41ca[_0x2f51ea(0x10c)],'metadata':_0x50677e});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x3b9a82){const _0x4547ba=_0x5da7,_0x4013d8={'flWaM':'trace.zip'},_0x453d58=[_0x4013d8[_0x4547ba(0xb0)],_0x4547ba(0xaf)];for(const _0x4bbd11 of _0x453d58){const _0x3f7de1=join(_0x3b9a82,_0x4bbd11);try{return{'buffer':await readFile(_0x3f7de1),'source':_0x3f7de1};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x12b7f1){const _0x5ea960=_0x5da7,_0xe90c8f={'pDMBd':function(_0x1536bd,_0x5e8e23,_0x4889a8){return _0x1536bd(_0x5e8e23,_0x4889a8);},'NpuYd':function(_0xff7e28,_0x11a63a,_0x14a2e0){return _0xff7e28(_0x11a63a,_0x14a2e0);},'dAGQQ':function(_0x349a98,_0x404ec8){return _0x349a98(_0x404ec8);},'XOMgB':function(_0x77b13b,_0x49a79c){return _0x77b13b<_0x49a79c;},'WsSnx':function(_0x33b90e,_0x10eb33){return _0x33b90e+_0x10eb33;},'VYhMP':function(_0x13ac94,_0x333d6e,_0x2c39c1){return _0x13ac94(_0x333d6e,_0x2c39c1);},'cwlCu':function(_0x273475,_0x3859b7){return _0x273475===_0x3859b7;}},{cwd:_0x1f9a49,cliArtifactDir:_0x540863,startTime:_0x2f01cb}=_0x12b7f1,_0x5e146b=[];await _0xe90c8f['pDMBd'](mkdir,_0x540863,{'recursive':!![]});const _0x22ee4d=await _0xe90c8f[_0x5ea960(0xb3)](readdir,_0x1f9a49,{'withFileTypes':!![]});for(const _0x50bcd5 of _0x22ee4d){if(!_0x50bcd5[_0x5ea960(0xea)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x50bcd5[_0x5ea960(0x10d)]))continue;const _0x6343e4=_0xe90c8f['NpuYd'](join,_0x1f9a49,_0x50bcd5[_0x5ea960(0x10d)]),_0x3148cd=await _0xe90c8f['dAGQQ'](stat,_0x6343e4);if(_0xe90c8f['XOMgB'](_0xe90c8f[_0x5ea960(0x113)](_0x3148cd[_0x5ea960(0x118)],0x7d0),_0x2f01cb))continue;const _0x41d751=_0xe90c8f['VYhMP'](buildCliArtifactPath,_0x540863,_0x50bcd5[_0x5ea960(0x10d)]);if(_0xe90c8f[_0x5ea960(0x10a)](_0x6343e4,_0x41d751))continue;await rename(_0x6343e4,_0x41d751),_0x5e146b['push'](_0x50bcd5[_0x5ea960(0x10d)]);}return _0x5e146b[_0x5ea960(0x85)]();}function _0x22f2(){const _0x27558e=['`\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','HBzkh','commandArgs','\x20(on\x20element:\x20<','textContent','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','370111YgIhJA','trackPhaseStart','tab-select','video-start','rhrpe','element','capture\x20snapshot\x20`','cwlCu','jqjKz','phase','name','cSZbJ','DEBUG','\x20screenshot\x20--filename\x20','trackPhaseError','ref\x20','WsSnx','\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.','open\x20','GSXAz','open\x20browser','mtimeMs','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','BskIg','description','jTRaV','split','open','short','03_result-visible.png','target','\x20tracing-start`\x0a3.\x20Run\x20`','\x5c$&','snapshot','press\x20','sort','yQcPc','join','jTHPc','wcMTk','subcommand','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','\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','IhCSv','\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','content','xMoLc','415000kQuLyu','key_03_success-state.png','match','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','authorEmail','replace','02_learn-more.yml','capture\x20screenshot','stop\x20tracing','log','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','playwright_cli_tracing_stop','efUde','en-US','\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','...','fill\x20','xOhHI','tool_call','authorName','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','`\x0a9.\x20Run\x20`','AzRJp','invocation','03_learn-more.png','env','>\x20\x22','open\x20new\x20tab','`:\x20\x22','run\x20custom\x20Playwright\x20code','trace.trace.zip','flWaM','xiaUj','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','pDMBd','open\x20new\x20tab\x20','25504ZsIRcr','5gdFvGN','zucFp','video-stop','bmfPw','numeric','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','WQuOd','YlyiQ','\x0a\x0a1.\x20Run\x20`','start\x20tracing','`\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`','--filename=','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','tool_input','`\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`','stderr','capture\x20step\x20`','domRef','\x20open\x20','5766417XRZgLA','BdKPr','PostToolUse','AiDfQ','cBUuj','tracing-start','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','KfDoa','rgLOT','dUNao','zmTEC','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','key_04_success-state.png','hook_event_name','\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.','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','yeEEO','start\x20video\x20recording','Reviewer','\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','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','length','mdSEP','[ranger-verification-agent]\x20','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','ECwpp',']\x20**','RJHPR','1648beZPiJ','\x20snapshot\x20--filename\x20','01_initial-state.png','1094884kOYTnm','string','isFile','`,\x20then\x20`','values','playwright-cli','HhSOE','OVNij','\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.','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','xTIrf','close','xdDhG','\x20tracing-start`,\x20then\x20`','oZCTs','666846vXMEGa','sHWaI','error','309FqyUpR','tracing-stop','select\x20tab\x20'];_0x22f2=function(){return _0x27558e;};return _0x22f2();}
|
|
1
|
+
(function(_0x50550b,_0x25137e){const _0x20d6a0=_0x5ecb,_0x371056=_0x50550b();while(!![]){try{const _0x55d15b=-parseInt(_0x20d6a0(0x1b1))/0x1*(-parseInt(_0x20d6a0(0x1bf))/0x2)+-parseInt(_0x20d6a0(0x179))/0x3+parseInt(_0x20d6a0(0x181))/0x4*(-parseInt(_0x20d6a0(0x16c))/0x5)+-parseInt(_0x20d6a0(0x1ac))/0x6+-parseInt(_0x20d6a0(0x14f))/0x7+parseInt(_0x20d6a0(0x194))/0x8+parseInt(_0x20d6a0(0x1bd))/0x9;if(_0x55d15b===_0x25137e)break;else _0x371056['push'](_0x371056['shift']());}catch(_0x483fb3){_0x371056['push'](_0x371056['shift']());}}}(_0x35e2,0x35cc2));function _0x5ecb(_0x29daa5,_0x457199){_0x29daa5=_0x29daa5-0x13f;const _0x35e261=_0x35e2();let _0x5ecb12=_0x35e261[_0x29daa5];return _0x5ecb12;}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(_0xbbf323,_0x481b6a=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x17c605=_0x5ecb,_0x399fab={'IYiqj':function(_0x7e5c25,_0x54214e){return _0x7e5c25>_0x54214e;},'LrTPo':'...'};return _0x399fab[_0x17c605(0x155)](_0xbbf323['length'],_0x481b6a)?_0xbbf323[_0x17c605(0x173)](0x0,_0x481b6a)+_0x399fab['LrTPo']:_0xbbf323;}function buildCliArtifactPath(_0x531878,_0x7dbf10){const _0x3ba12b=_0x5ecb,_0x51f90e={'soGKe':function(_0x1c0c0d,_0xf4e238,_0x5c50bf){return _0x1c0c0d(_0xf4e238,_0x5c50bf);}};return _0x51f90e[_0x3ba12b(0x150)](join,_0x531878,_0x7dbf10);}function toStepDisplayName(_0xfb69fa){const _0x1ba377=_0x5ecb,_0x3ed29b=basename(_0xfb69fa)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x1ba377(0x1a3)](/^\d+_/,'')[_0x1ba377(0x1a3)](/-/g,'\x20');return{'name':_0x3ed29b,'isKeyStep':/^key_/i['test'](basename(_0xfb69fa))};}function extractShellValue(_0x779f1d){if(!_0x779f1d)return null;return _0x779f1d[0x1]??_0x779f1d[0x2]??_0x779f1d[0x3]??null;}function extractFilenameOption(_0x229823){const _0x4f60d6=_0x5ecb,_0x3781fb={'fqQLz':function(_0x2898c4,_0x3d22cd){return _0x2898c4(_0x3d22cd);}};return _0x3781fb[_0x4f60d6(0x18d)](extractShellValue,_0x229823[_0x4f60d6(0x185)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x4c67d1,_0x2eda2e){const _0x3c6358=_0x5ecb,_0x2a2e5f={'onuWp':'\x5c$&','HlsvJ':function(_0x4dc208,_0x43065e){return _0x4dc208(_0x43065e);}},_0xe3c87a=_0x2eda2e[_0x3c6358(0x1a3)](/[.*+?^${}()|[\]\\]/g,_0x2a2e5f[_0x3c6358(0x142)]);return _0x2a2e5f[_0x3c6358(0x1af)](extractShellValue,_0x4c67d1['match'](new RegExp('(?:^|\x5cs)'+_0xe3c87a+_0x3c6358(0x162))));}function formatCommandTarget(_0x40c0c5){const _0x59a973=_0x5ecb,_0xd98426={'vnzAs':_0x59a973(0x159),'poyuW':function(_0xe7ee7b,_0x251528,_0x2af954){return _0xe7ee7b(_0x251528,_0x2af954);}};if(!_0x40c0c5)return _0xd98426[_0x59a973(0x1c1)];if(/^e\d+$/i[_0x59a973(0x189)](_0x40c0c5))return _0x59a973(0x193)+_0x40c0c5;return JSON['stringify'](_0xd98426[_0x59a973(0x1b4)](truncatePreview,_0x40c0c5,0x78));}function formatPlaywrightCliLog(_0x53bbe5,_0x3fb8e9){const _0x1d5f8e=_0x5ecb,_0x17795a={'uwSUT':_0x1d5f8e(0x15f),'MlIzC':_0x1d5f8e(0x1b6),'YGsHM':_0x1d5f8e(0x1ad),'OOdEi':_0x1d5f8e(0x176),'wYkEp':_0x1d5f8e(0x183),'eVArN':_0x1d5f8e(0x14e),'bEVrq':function(_0x27309a,_0x5e8df9){return _0x27309a(_0x5e8df9);},'fWQox':'capture\x20screenshot','avmyl':function(_0x28725f,_0x5d22df){return _0x28725f(_0x5d22df);},'nVaVa':function(_0x88b64d,_0x4e662d,_0x21c1ac){return _0x88b64d(_0x4e662d,_0x21c1ac);},'ERsIC':function(_0x3ac4aa,_0x387a11,_0xb2521c){return _0x3ac4aa(_0x387a11,_0xb2521c);},'iNKnl':'fill','OQGlQ':_0x1d5f8e(0x1bb),'dmrFu':'run-code','odLyh':'select\x20tab'};switch(_0x3fb8e9){case'open':{const _0x55a770=extractFirstCommandArgument(_0x53bbe5,_0x3fb8e9);return _0x55a770?'open\x20'+_0x55a770:_0x17795a['uwSUT'];}case _0x17795a['MlIzC']:return'start\x20tracing';case'tracing-stop':return _0x17795a['YGsHM'];case _0x17795a['OOdEi']:return _0x17795a[_0x1d5f8e(0x145)];case _0x17795a[_0x1d5f8e(0x198)]:return _0x1d5f8e(0x1c4);case _0x1d5f8e(0x15b):{const _0x3e7cd8=_0x17795a[_0x1d5f8e(0x14d)](extractFilenameOption,_0x53bbe5);if(!_0x3e7cd8)return'capture\x20snapshot';const {name:_0x23a069}=toStepDisplayName(_0x3e7cd8);return'capture\x20snapshot\x20`'+_0x23a069+'`';}case'screenshot':{const _0x5ef841=extractFilenameOption(_0x53bbe5);if(!_0x5ef841)return _0x17795a['fWQox'];const {name:_0x374008,isKeyStep:_0x595feb}=_0x17795a[_0x1d5f8e(0x14d)](toStepDisplayName,_0x5ef841);return _0x595feb?'capture\x20key\x20step\x20`'+_0x374008+'`':'capture\x20step\x20`'+_0x374008+'`';}case'click':return _0x1d5f8e(0x195)+_0x17795a[_0x1d5f8e(0x16e)](formatCommandTarget,_0x17795a['nVaVa'](extractFirstCommandArgument,_0x53bbe5,_0x3fb8e9));case _0x1d5f8e(0x180):return'check\x20'+formatCommandTarget(_0x17795a['ERsIC'](extractFirstCommandArgument,_0x53bbe5,_0x3fb8e9));case _0x17795a[_0x1d5f8e(0x1a1)]:return _0x1d5f8e(0x191)+formatCommandTarget(extractFirstCommandArgument(_0x53bbe5,_0x3fb8e9));case _0x17795a[_0x1d5f8e(0x17b)]:return _0x1d5f8e(0x197)+_0x17795a['bEVrq'](formatCommandTarget,_0x17795a['nVaVa'](extractFirstCommandArgument,_0x53bbe5,_0x3fb8e9));case _0x17795a[_0x1d5f8e(0x1be)]:return'run\x20custom\x20Playwright\x20code';case'tab-new':{const _0x4dfdd3=extractFirstCommandArgument(_0x53bbe5,_0x3fb8e9);return _0x4dfdd3?_0x1d5f8e(0x1ae)+_0x4dfdd3:_0x1d5f8e(0x1c8);}case _0x1d5f8e(0x19f):{const _0x44b0dd=extractFirstCommandArgument(_0x53bbe5,_0x3fb8e9);return _0x44b0dd?_0x1d5f8e(0x15d)+_0x44b0dd:_0x17795a['odLyh'];}default:return _0x3fb8e9;}}function extractPlaywrightCliToolDescription(_0x14c197){const _0x578729=_0x5ecb,_0x5774fe={'MYNwL':function(_0xcee932,_0x36e11a){return _0xcee932!==_0x36e11a;}},_0x2e06b3=_0x14c197[_0x578729(0x199)];if(_0x5774fe['MYNwL'](typeof _0x2e06b3,_0x578729(0x169)))return null;const _0x3973b4=_0x2e06b3[_0x578729(0x18e)]()[_0x578729(0x1a3)](/\s+/g,'\x20');return _0x3973b4['length']>0x0?_0x3973b4:null;}export function formatPlaywrightCliConsoleLogMessage(_0x4f6627,_0x5394a6,_0x40272b){const _0x48c764=_0x5ecb,_0x23c48d=formatPlaywrightCliLog(_0x5394a6,_0x40272b),_0x68a15=extractPlaywrightCliToolDescription(_0x4f6627);if(!_0x68a15)return _0x48c764(0x1b3)+_0x23c48d;if(process['env'][_0x48c764(0x196)])return _0x48c764(0x13f)+_0x68a15+'\x20('+_0x23c48d+')';return'[ranger-verification-agent]\x20'+_0x68a15;}export function buildVerifyFeatureCliDebugPrompt(_0x5afebc,_0x4f5f79){const _0x10ab09=_0x5ecb,_0x50b5f4={'mexjq':function(_0x5bddab,_0x22fabb,_0x6490e9){return _0x5bddab(_0x22fabb,_0x6490e9);},'uRkyX':_0x10ab09(0x1a7),'rliYX':function(_0x11df99,_0x4ce6c7){return _0x11df99(_0x4ce6c7);}},_0x5a1ca6=buildCliArtifactPath(_0x4f5f79,'00_mozilla-homepage.yml'),_0x146222=_0x50b5f4['mexjq'](buildCliArtifactPath,_0x4f5f79,'01_mozilla-homepage.png'),_0xa2f9ca=_0x50b5f4[_0x10ab09(0x17d)](buildCliArtifactPath,_0x4f5f79,'02_learn-more.yml'),_0x2a37c3=buildCliArtifactPath(_0x4f5f79,_0x50b5f4['uRkyX']),_0x41c7c9=_0x50b5f4['rliYX'](quoteShellArg,_0x5a1ca6),_0x2120f3=_0x50b5f4['rliYX'](quoteShellArg,_0x146222),_0x1fb005=_0x50b5f4[_0x10ab09(0x187)](quoteShellArg,_0xa2f9ca),_0x715971=quoteShellArg(_0x2a37c3);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x5afebc+_0x10ab09(0x16a)+_0x5afebc+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x5afebc+_0x10ab09(0x165)+_0x5afebc+_0x10ab09(0x152)+_0x4f5f79+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x5afebc+'\x20snapshot\x20--filename\x20'+_0x41c7c9+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x5afebc+_0x10ab09(0x18a)+_0x2120f3+_0x10ab09(0x19e)+_0x5afebc+'\x20snapshot\x20--filename\x20'+_0x1fb005+_0x10ab09(0x1ab)+_0x5afebc+_0x10ab09(0x18a)+_0x715971+_0x10ab09(0x177);}export function buildVerifyFeatureCliPrompt(_0x3ba76e){const _0x59e4ca=_0x5ecb,_0x135e9d={'HfyLX':function(_0x16fe4d,_0x884217,_0xed9441){return _0x16fe4d(_0x884217,_0xed9441);},'oTggG':function(_0x45f6a6,_0x4d79eb,_0x36aff6){return _0x45f6a6(_0x4d79eb,_0x36aff6);},'ojogm':function(_0x2e98e7,_0x35cf77,_0x1f3dfb){return _0x2e98e7(_0x35cf77,_0x1f3dfb);},'wnjAk':'01_initial-state.png','MmIwC':function(_0x106a80,_0x3e8a0b){return _0x106a80(_0x3e8a0b);},'EvFiW':function(_0x40a03b,_0x1ecf41){return _0x40a03b(_0x1ecf41);},'pOQOF':function(_0x1633a1,_0x424988){return _0x1633a1>_0x424988;},'FBHsE':'03_result-visible.png'},{checklistItem:_0x3d8a8b,itemFeedback:_0x3e2f7b,taskDescription:_0x455616,cliCommandPrefix:_0xb2721d,cliArtifactDir:_0x163ceb,isCdpMode:_0x23a7c4,url:_0x299032,cdpEndpoint:_0x1ee0be,loginInstructions:_0x200438}=_0x3ba76e,_0x5a2eee=_0x135e9d['HfyLX'](buildCliArtifactPath,_0x163ceb,'01_initial.yml'),_0x57f087=_0x135e9d[_0x59e4ca(0x15c)](buildCliArtifactPath,_0x163ceb,'02_state.yml'),_0x134d8f=_0x135e9d['oTggG'](buildCliArtifactPath,_0x163ceb,_0x59e4ca(0x16d)),_0x464da3=_0x135e9d[_0x59e4ca(0x14c)](buildCliArtifactPath,_0x163ceb,_0x135e9d['wnjAk']),_0x254bc7=_0x135e9d['MmIwC'](quoteShellArg,_0x5a2eee),_0x2eaf99=quoteShellArg(_0x57f087),_0x43a7a4=_0x135e9d[_0x59e4ca(0x1aa)](quoteShellArg,_0x134d8f),_0x7bc698=quoteShellArg(_0x464da3),_0x50304f=_0x3d8a8b[_0x59e4ca(0x186)]?_0x59e4ca(0x14b)+_0x3d8a8b['notes']:'';let _0x45ebf8='';if(_0x3e2f7b&&_0x135e9d['pOQOF'](_0x3e2f7b['unaddressedComments'][_0x59e4ca(0x140)],0x0)){const _0x487922=_0x3e2f7b[_0x59e4ca(0x171)][_0x59e4ca(0x1a2)](_0x2628b9=>{const _0x15651b=_0x59e4ca,_0x283e57=new Date(_0x2628b9['createdAt'])[_0x15651b(0x192)]('en-US',{'month':'short','day':'numeric'}),_0x14d7dc=_0x2628b9['authorName']||_0x2628b9['authorEmail']||'Reviewer',_0x6069e3=_0x2628b9['domRef']?'\x20(on\x20element:\x20<'+(_0x2628b9['domRef'][_0x15651b(0x166)]['split'](_0x15651b(0x147))[_0x15651b(0x1c7)]()?.[_0x15651b(0x163)](':')[0x0]||'element')+'>\x20\x22'+(_0x2628b9[_0x15651b(0x18c)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x2628b9['id']+_0x15651b(0x184)+_0x14d7dc+_0x15651b(0x175)+_0x283e57+_0x15651b(0x1c3)+_0x2628b9['content']+'\x22'+_0x6069e3;})['join']('\x0a');_0x45ebf8=_0x59e4ca(0x18f)+_0x487922;}const _0x192a36=_0x3e2f7b?.['canonicalFlow']?_0x59e4ca(0x1ba)+_0x3e2f7b['canonicalFlow']:'',_0x521964=_0x23a7c4?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x1ee0be+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':_0x59e4ca(0x17c)+_0x299032+_0x59e4ca(0x143),_0x2703b2=_0x299032?quoteShellArg(_0x299032):'',_0x170edb=_0x23a7c4?_0x59e4ca(0x190)+_0xb2721d+'\x20open`,\x20then\x20`'+_0xb2721d+_0x59e4ca(0x1c9)+_0xb2721d+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x163ceb+_0x59e4ca(0x188)+_0xb2721d+_0x59e4ca(0x1a9)+_0x254bc7+_0x59e4ca(0x16f)+_0xb2721d+_0x59e4ca(0x18a)+_0x7bc698+_0x59e4ca(0x1b8)+_0xb2721d+_0x59e4ca(0x1c0):_0x59e4ca(0x190)+_0xb2721d+_0x59e4ca(0x1b2)+_0x2703b2+_0x59e4ca(0x146)+_0xb2721d+'\x20tracing-start`,\x20then\x20`'+_0xb2721d+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x163ceb+_0x59e4ca(0x188)+_0xb2721d+'\x20snapshot\x20--filename\x20'+_0x254bc7+'`\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`'+_0xb2721d+_0x59e4ca(0x18a)+_0x7bc698+_0x59e4ca(0x157)+_0xb2721d+'\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',_0x98c25=_0x23a7c4?_0x59e4ca(0x164):'\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.',_0x5d2245=_0x200438?_0x59e4ca(0x19c)+_0x200438+_0x59e4ca(0x19d):'';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'+_0x3d8a8b[_0x59e4ca(0x199)]+_0x50304f+_0x45ebf8+_0x192a36+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x455616+'\x0a\x0a'+_0x521964+_0x5d2245+'\x0a\x0a'+_0x170edb+_0x59e4ca(0x17e)+_0xb2721d+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x163ceb+_0x59e4ca(0x19a)+_0x2eaf99+_0x59e4ca(0x15e)+_0x43a7a4+'`\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`'+_0x163ceb+'`:\x20\x22'+_0x464da3+'\x22,\x20\x22'+buildCliArtifactPath(_0x163ceb,_0x59e4ca(0x144))+'\x22,\x20\x22'+buildCliArtifactPath(_0x163ceb,_0x135e9d['FBHsE'])+'\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'+_0x135e9d[_0x59e4ca(0x15c)](buildCliArtifactPath,_0x163ceb,'key_04_success-state.png')+'\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'+_0x98c25+'\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(_0x45b949){const _0x548d27=_0x5ecb,_0x5884f3={'AiRrf':function(_0x4867ea,_0x309fa2){return _0x4867ea===_0x309fa2;}},_0x50b684=[..._0x45b949[_0x548d27(0x1c6)]()][_0x548d27(0x174)]();let _0xd4788f=0x0;for(const _0x2a49c7 of _0x45b949[_0x548d27(0x18b)]()){_0xd4788f+=_0x2a49c7;}return{'cliCommandCount':_0xd4788f,'cliCommandsSeen':_0x50b684,'noCliCommandsCalled':_0x5884f3[_0x548d27(0x160)](_0xd4788f,0x0)};}export function createVerifyFeatureCliHooks(_0x5ed140){const _0x2d03fa=_0x5ecb,_0x54a323={'mnATt':function(_0x2ee92b,_0x303c83){return _0x2ee92b!==_0x303c83;},'KhVDT':_0x2d03fa(0x1a4),'GyfVG':function(_0x143bdd,_0x249800){return _0x143bdd+_0x249800;},'ONHJJ':_0x2d03fa(0x158),'gUpoC':_0x2d03fa(0x1a5),'SABVr':function(_0x1fe427,_0x8e2167){return _0x1fe427(_0x8e2167);},'skqgs':function(_0x4087c2,_0x290040){return _0x4087c2!==_0x290040;},'UPXHH':_0x2d03fa(0x15b),'EClma':function(_0x15ac52,_0x232ab8,_0x1e62dd,_0x26917c){return _0x15ac52(_0x232ab8,_0x1e62dd,_0x26917c);},'ysVfG':'tool_failure'},_0x4b35cb=new Map(),_0x264efa=async _0x31a2ca=>{const _0x309d02=_0x2d03fa;if(_0x31a2ca['hook_event_name']!=='PostToolUse')return{};const _0x302eec=_0x31a2ca;if(_0x54a323[_0x309d02(0x182)](_0x302eec[_0x309d02(0x1bc)],_0x54a323[_0x309d02(0x1c2)]))return{};const _0x369e68=_0x302eec[_0x309d02(0x172)],_0x351533=extractBashCommand(_0x369e68);if(!_0x351533)return{};const _0x3cd54d=parsePlaywrightCliCommand(_0x351533);if(!_0x3cd54d)return{};return _0x4b35cb['set'](_0x3cd54d,_0x54a323[_0x309d02(0x153)](_0x4b35cb[_0x309d02(0x154)](_0x3cd54d)||0x0,0x1)),_0x5ed140[_0x309d02(0x1a0)](_0x54a323[_0x309d02(0x168)],{'transport':_0x54a323[_0x309d02(0x15a)],'toolName':_0x3cd54d}),_0x5ed140[_0x309d02(0x1b0)](_0x54a323[_0x309d02(0x168)],{'transport':_0x54a323['gUpoC'],'toolName':_0x3cd54d,'bashCommandPreview':_0x54a323[_0x309d02(0x19b)](truncatePreview,_0x351533)}),_0x54a323[_0x309d02(0x1b5)](_0x3cd54d,_0x54a323['UPXHH'])&&console['log'](_0x54a323[_0x309d02(0x1c5)](formatPlaywrightCliConsoleLogMessage,_0x369e68,_0x351533,_0x3cd54d)),{};},_0x514d50=async _0x278878=>{const _0x40f4ee=_0x2d03fa;if(_0x278878[_0x40f4ee(0x16b)]!=='PostToolUseFailure')return{};const _0x248bab=_0x278878;if(_0x248bab['tool_name']!=='Bash')return{};return await _0x5ed140['trackPhaseError'](_0x54a323[_0x40f4ee(0x151)],_0x248bab['error'],{'transport':_0x54a323[_0x40f4ee(0x15a)],'toolName':_0x54a323[_0x40f4ee(0x1c2)]}),{};};return{'postToolUseHook':_0x264efa,'postToolUseFailureHook':_0x514d50,'commandCounts':_0x4b35cb};}async function runPlaywrightCliLifecycleCommand(_0xc22edf){const _0x3cc5ad=_0x5ecb,_0x3d0725={'VUzAm':function(_0xee2545,_0x476ca0){return _0xee2545(_0x476ca0);},'hcywb':function(_0xbe5510,_0x35795f){return _0xbe5510??_0x35795f;},'DWAAr':function(_0x385c27,_0x1ba806,_0x1a396a){return _0x385c27(_0x1ba806,_0x1a396a);},'LVeuc':function(_0x259b3c,_0x543fa3,_0x26a04a){return _0x259b3c(_0x543fa3,_0x26a04a);}},{sessionId:_0x3742b5,configPath:_0x10219f,commandArgs:_0x3f37fd,env:_0x24fcf4,telemetry:_0x82635b,phase:_0x3422cc,metadata:_0x4da59e,timeoutMs:_0x198821}=_0xc22edf;_0x82635b['trackPhaseStart'](_0x3422cc,_0x4da59e);try{const _0x3e8f6d=await _0x3d0725['VUzAm'](runPlaywrightCliCommand,{'sessionId':_0x3742b5,'configPath':_0x10219f,'commandArgs':_0x3f37fd,'cwd':process['cwd'](),'env':_0x24fcf4,'timeoutMs':_0x3d0725[_0x3cc5ad(0x149)](_0x198821,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x82635b['trackPhaseEnd'](_0x3422cc,{..._0x4da59e,'subcommand':_0x3e8f6d['invocation'][_0x3cc5ad(0x148)],'stdoutPreview':_0x3d0725[_0x3cc5ad(0x1a8)](truncatePreview,_0x3e8f6d['stdout'],0x7d0),'stderrPreview':_0x3d0725['LVeuc'](truncatePreview,_0x3e8f6d[_0x3cc5ad(0x167)],0x7d0)});}catch(_0x45412d){await _0x82635b['trackPhaseError'](_0x3422cc,_0x45412d,_0x4da59e);throw _0x45412d;}}export async function finalizeVerifyFeatureCliSession(_0x2284bf){const _0x6a6b8a=_0x5ecb,_0x4a7a57={'guESn':_0x6a6b8a(0x156),'bbSGO':function(_0x59825c,_0x4d23a0,_0x28b87e){return _0x59825c(_0x4d23a0,_0x28b87e);},'qaZxn':_0x6a6b8a(0x14a),'JFcPV':function(_0x5ed647,_0x2ca0dc){return _0x5ed647(_0x2ca0dc);}},{telemetry:_0x1e3b82,sessionId:_0x40557b,configPath:_0x18915e,cliArtifactDir:_0x3634c7,env:_0x4cef7b,transportMetadata:_0x131423}=_0x2284bf,_0x2a36d6=[{'phase':_0x6a6b8a(0x17f),'commandArgs':[_0x6a6b8a(0x170)]},{'phase':_0x4a7a57[_0x6a6b8a(0x161)],'commandArgs':['video-stop','--filename='+_0x4a7a57['bbSGO'](buildCliArtifactPath,_0x3634c7,_0x6a6b8a(0x1b9))]},{'phase':'playwright_cli_close','commandArgs':[_0x4a7a57['qaZxn']]}];for(const _0x4270d3 of _0x2a36d6){try{await _0x4a7a57['JFcPV'](runPlaywrightCliLifecycleCommand,{'sessionId':_0x40557b,'configPath':_0x18915e,'commandArgs':[..._0x4270d3['commandArgs']],'env':_0x4cef7b,'telemetry':_0x1e3b82,'phase':_0x4270d3[_0x6a6b8a(0x178)],'metadata':_0x131423});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x1a1fdd){const _0xdf12b8=_0x5ecb,_0x31f4f2={'hayaK':'trace.zip','ovKtJ':'trace.trace.zip'},_0x1a5bd8=[_0x31f4f2['hayaK'],_0x31f4f2[_0xdf12b8(0x1ca)]];for(const _0x1afeb0 of _0x1a5bd8){const _0x5654a1=join(_0x1a1fdd,_0x1afeb0);try{return{'buffer':await readFile(_0x5654a1),'source':_0x5654a1};}catch{}}return null;}function _0x35e2(){const _0x282f47=['open\x20new\x20tab','\x20tracing-start`,\x20then\x20`','ovKtJ','[ranger-verification-agent]\x20','length','isFile','onuWp','\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','02_button-clicked.png','wYkEp','`,\x20then\x20`','\x20>\x20','subcommand','hcywb','close','\x0a\x0a##\x20Additional\x20Notes\x0a','ojogm','bEVrq','video-stop','2080610HjVqQQ','soGKe','ysVfG','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','GyfVG','get','IYiqj','playwright_cli_video_stop','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','tool_call','target','gUpoC','snapshot','HfyLX','select\x20tab\x20','`\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\x20browser','AiRrf','guESn','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','split','\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.','\x20tracing-start`\x0a3.\x20Run\x20`','selector','stderr','ONHJJ','string','\x0a\x0a1.\x20Run\x20`','hook_event_name','955eBYqbY','key_03_success-state.png','avmyl','`\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`','tracing-stop','unaddressedComments','tool_input','slice','sort','**\x20(','video-start','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','phase','19140mxbjlS','mtimeMs','OQGlQ','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','mexjq','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','playwright_cli_tracing_stop','check','8812ZSTUJW','mnATt','start\x20video\x20recording',']\x20**','match','notes','rliYX','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','test','\x20screenshot\x20--filename\x20','values','domRef','fqQLz','trim','\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','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','fill\x20','toLocaleDateString','ref\x20','372904bEPikj','click\x20','DEBUG','press\x20','eVArN','description','`\x0a-\x20`snapshot\x20--filename\x20','SABVr','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\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.','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','tab-select','trackPhaseStart','iNKnl','map','replace','Bash','playwright-cli','name','03_learn-more.png','DWAAr','\x20snapshot\x20--filename\x20','EvFiW','`\x0a9.\x20Run\x20`','760782PvFByY','stop\x20tracing','open\x20new\x20tab\x20','HlsvJ','trackPhaseEnd','3124DLqVTR','\x20open\x20','[playwright-cli]\x20','poyuW','skqgs','tracing-start','push','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','session-recording.webm','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','press','tool_name','5794137eNswZg','dmrFu','244kfGwbe','\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','vnzAs','KhVDT','):\x20\x22','stop\x20video\x20recording','EClma','keys','pop'];_0x35e2=function(){return _0x282f47;};return _0x35e2();}export async function rehomeVerifyFeatureCliArtifacts(_0x4fe039){const _0x4492dd=_0x5ecb,_0x42d940={'mrrEp':function(_0x1a5364,_0x278af3,_0x5059cc){return _0x1a5364(_0x278af3,_0x5059cc);},'YLCkF':function(_0x17876e,_0x2815b3){return _0x17876e<_0x2815b3;}},{cwd:_0x10d119,cliArtifactDir:_0x2ad662,startTime:_0x2467e2}=_0x4fe039,_0x423956=[];await mkdir(_0x2ad662,{'recursive':!![]});const _0x1c7c8a=await _0x42d940['mrrEp'](readdir,_0x10d119,{'withFileTypes':!![]});for(const _0x4084ae of _0x1c7c8a){if(!_0x4084ae[_0x4492dd(0x141)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x4492dd(0x189)](_0x4084ae['name']))continue;const _0x421888=join(_0x10d119,_0x4084ae[_0x4492dd(0x1a6)]),_0x2cca0c=await stat(_0x421888);if(_0x42d940['YLCkF'](_0x2cca0c[_0x4492dd(0x17a)]+0x7d0,_0x2467e2))continue;const _0x6430af=buildCliArtifactPath(_0x2ad662,_0x4084ae[_0x4492dd(0x1a6)]);if(_0x421888===_0x6430af)continue;await rename(_0x421888,_0x6430af),_0x423956[_0x4492dd(0x1b7)](_0x4084ae['name']);}return _0x423956[_0x4492dd(0x174)]();}
|
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.9360c2a-16",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ranger": "./build/cli.js",
|
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
},
|
|
42
42
|
"overrides": {
|
|
43
43
|
"minimatch": "^10.2.3",
|
|
44
|
-
"brace-expansion": "^5.0.5"
|
|
44
|
+
"brace-expansion": "^5.0.5",
|
|
45
|
+
"fast-uri": "3.1.2"
|
|
45
46
|
}
|
|
46
47
|
}
|