@ranger-testing/ranger-cli 2.5.2 → 2.5.4-alpha.071b7bd-1

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.
Files changed (69) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/mcpBootstrap.js +1 -1
  25. package/build/commands/setup/claude.js +1 -1
  26. package/build/commands/setup/opencode.js +1 -1
  27. package/build/commands/setupCi.js +1 -1
  28. package/build/commands/skillup.js +1 -1
  29. package/build/commands/start.js +1 -1
  30. package/build/commands/status.js +1 -1
  31. package/build/commands/update.js +1 -1
  32. package/build/commands/updateEnv.js +1 -1
  33. package/build/commands/useEnv.js +1 -1
  34. package/build/commands/utils/activeProfile.js +1 -1
  35. package/build/commands/utils/agentEnv.js +1 -1
  36. package/build/commands/utils/browserSessionsApi.js +1 -1
  37. package/build/commands/utils/claudeConfig.js +1 -1
  38. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  39. package/build/commands/utils/claudePlugin.js +1 -1
  40. package/build/commands/utils/crypto.js +1 -1
  41. package/build/commands/utils/desirePathLog.js +1 -1
  42. package/build/commands/utils/deviceAuth.js +1 -1
  43. package/build/commands/utils/environment.js +1 -1
  44. package/build/commands/utils/featureApi.js +1 -1
  45. package/build/commands/utils/fixWebmDuration.js +1 -1
  46. package/build/commands/utils/keychain.js +1 -1
  47. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  48. package/build/commands/utils/mcpImageBase64.js +1 -1
  49. package/build/commands/utils/model.js +1 -1
  50. package/build/commands/utils/opencodeConfig.js +1 -1
  51. package/build/commands/utils/playwrightCli.js +1 -1
  52. package/build/commands/utils/profileMessages.js +1 -1
  53. package/build/commands/utils/profileSetupBanner.js +1 -1
  54. package/build/commands/utils/rangerConfig.js +1 -1
  55. package/build/commands/utils/rangerRoot.js +1 -1
  56. package/build/commands/utils/retry.js +1 -1
  57. package/build/commands/utils/sessionCache.js +1 -1
  58. package/build/commands/utils/settings.js +1 -1
  59. package/build/commands/utils/skillContent.js +1 -1
  60. package/build/commands/utils/skills.js +1 -1
  61. package/build/commands/utils/stitchWebmFiles.js +1 -1
  62. package/build/commands/utils/telemetry.js +1 -1
  63. package/build/commands/utils/tokenRefresh.js +1 -1
  64. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  65. package/build/commands/utils/userApi.js +1 -1
  66. package/build/commands/utils/version.js +1 -1
  67. package/build/commands/verifyFeature.js +1 -1
  68. package/build/commands/verifyFeatureCli.js +1 -1
  69. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x5fee67,_0x51ae66){const _0x39c187=_0xa7ad,_0x22d472=_0x5fee67();while(!![]){try{const _0x5c38bd=parseInt(_0x39c187(0x1d0))/0x1*(-parseInt(_0x39c187(0x195))/0x2)+-parseInt(_0x39c187(0x1c3))/0x3*(-parseInt(_0x39c187(0x1dd))/0x4)+parseInt(_0x39c187(0x1e6))/0x5+-parseInt(_0x39c187(0x1cf))/0x6+parseInt(_0x39c187(0x19e))/0x7*(parseInt(_0x39c187(0x18e))/0x8)+-parseInt(_0x39c187(0x1c6))/0x9+-parseInt(_0x39c187(0x16a))/0xa*(-parseInt(_0x39c187(0x177))/0xb);if(_0x5c38bd===_0x51ae66)break;else _0x22d472['push'](_0x22d472['shift']());}catch(_0x473405){_0x22d472['push'](_0x22d472['shift']());}}}(_0x5c69,0x21b6d));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function _0xa7ad(_0x1ab5f8,_0x96f80f){_0x1ab5f8=_0x1ab5f8-0x160;const _0x5c69a7=_0x5c69();let _0xa7ad0f=_0x5c69a7[_0x1ab5f8];return _0xa7ad0f;}function truncatePreview(_0xdf706b,_0x226825=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x52ede4=_0xa7ad,_0x18bc63={'mMXyA':function(_0x856584,_0x48ad38){return _0x856584+_0x48ad38;},'xDeJV':'...'};return _0xdf706b['length']>_0x226825?_0x18bc63['mMXyA'](_0xdf706b['slice'](0x0,_0x226825),_0x18bc63[_0x52ede4(0x17e)]):_0xdf706b;}function buildCliArtifactPath(_0x4473d9,_0x2e8519){const _0xd618e9={'TSAkr':function(_0xdcd691,_0x2fe9ba,_0x4a72f3){return _0xdcd691(_0x2fe9ba,_0x4a72f3);}};return _0xd618e9['TSAkr'](join,_0x4473d9,_0x2e8519);}function toStepDisplayName(_0x3c1ad1){const _0x179a4b=_0xa7ad,_0x148307={'NlBms':function(_0x2a0273,_0x5711cb){return _0x2a0273(_0x5711cb);}},_0x37eaeb=basename(_0x3c1ad1)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x179a4b(0x19c)](/^\d+_/,'')[_0x179a4b(0x19c)](/-/g,'\x20');return{'name':_0x37eaeb,'isKeyStep':/^key_/i[_0x179a4b(0x1d6)](_0x148307[_0x179a4b(0x1e0)](basename,_0x3c1ad1))};}function extractShellValue(_0x2dafb3){if(!_0x2dafb3)return null;return _0x2dafb3[0x1]??_0x2dafb3[0x2]??_0x2dafb3[0x3]??null;}function extractFilenameOption(_0x3b17ad){const _0x45d47f=_0xa7ad,_0x179423={'Wguzy':function(_0xccc00,_0x8babf4){return _0xccc00(_0x8babf4);}};return _0x179423[_0x45d47f(0x199)](extractShellValue,_0x3b17ad['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x1bcc24,_0x56b8d7){const _0x78a6d3=_0xa7ad,_0x42ca07={'jDaXc':function(_0x1dd365,_0x4b9e07){return _0x1dd365(_0x4b9e07);}},_0x157668=_0x56b8d7[_0x78a6d3(0x19c)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return _0x42ca07[_0x78a6d3(0x193)](extractShellValue,_0x1bcc24['match'](new RegExp('(?:^|\x5cs)'+_0x157668+_0x78a6d3(0x1e4))));}function formatCommandTarget(_0x5a7ecb){const _0x2bfca4=_0xa7ad;if(!_0x5a7ecb)return _0x2bfca4(0x1e1);if(/^e\d+$/i[_0x2bfca4(0x1d6)](_0x5a7ecb))return'ref\x20'+_0x5a7ecb;return JSON[_0x2bfca4(0x162)](truncatePreview(_0x5a7ecb,0x78));}function formatPlaywrightCliLog(_0x29ca5e,_0x41b782){const _0x49b6c8=_0xa7ad,_0x552665={'anmmC':_0x49b6c8(0x1c1),'PJnPA':'open\x20browser','xFtkD':'tracing-start','icAfa':'start\x20tracing','hDvVk':_0x49b6c8(0x1ac),'gONWj':'start\x20video\x20recording','abPCu':'snapshot','JFoxF':function(_0x8e3db5,_0x2cfb1e){return _0x8e3db5(_0x2cfb1e);},'rsLOR':'capture\x20snapshot','xgokr':function(_0x2abec7,_0xad73ce){return _0x2abec7(_0xad73ce);},'iFbZd':_0x49b6c8(0x192),'ZRLHz':function(_0x49dcbb,_0x120c6e,_0x1df56e){return _0x49dcbb(_0x120c6e,_0x1df56e);},'JelpT':function(_0x16212a,_0x5898c7,_0x3fefe1){return _0x16212a(_0x5898c7,_0x3fefe1);},'Hzlqr':_0x49b6c8(0x1de),'unlAQ':_0x49b6c8(0x165),'rRqJa':_0x49b6c8(0x188),'rTIKz':'tab-select'};switch(_0x41b782){case _0x552665['anmmC']:{const _0x3ced6e=extractFirstCommandArgument(_0x29ca5e,_0x41b782);return _0x3ced6e?'open\x20'+_0x3ced6e:_0x552665[_0x49b6c8(0x183)];}case _0x552665['xFtkD']:return _0x552665['icAfa'];case _0x552665[_0x49b6c8(0x189)]:return _0x49b6c8(0x190);case _0x49b6c8(0x167):return _0x552665['gONWj'];case'video-stop':return _0x49b6c8(0x171);case _0x552665['abPCu']:{const _0x536218=_0x552665[_0x49b6c8(0x187)](extractFilenameOption,_0x29ca5e);if(!_0x536218)return _0x552665['rsLOR'];const {name:_0x7fb1ee}=toStepDisplayName(_0x536218);return _0x49b6c8(0x1ab)+_0x7fb1ee+'`';}case'screenshot':{const _0x4bbbd2=_0x552665[_0x49b6c8(0x187)](extractFilenameOption,_0x29ca5e);if(!_0x4bbbd2)return _0x49b6c8(0x1c7);const {name:_0x21a3d5,isKeyStep:_0x3208d4}=_0x552665['xgokr'](toStepDisplayName,_0x4bbbd2);return _0x3208d4?'capture\x20key\x20step\x20`'+_0x21a3d5+'`':_0x49b6c8(0x19a)+_0x21a3d5+'`';}case _0x49b6c8(0x176):return _0x49b6c8(0x17c)+formatCommandTarget(extractFirstCommandArgument(_0x29ca5e,_0x41b782));case _0x552665['iFbZd']:return'check\x20'+formatCommandTarget(_0x552665['ZRLHz'](extractFirstCommandArgument,_0x29ca5e,_0x41b782));case _0x49b6c8(0x18c):return'fill\x20'+_0x552665['JFoxF'](formatCommandTarget,_0x552665['JelpT'](extractFirstCommandArgument,_0x29ca5e,_0x41b782));case _0x552665['Hzlqr']:return'press\x20'+formatCommandTarget(_0x552665['JelpT'](extractFirstCommandArgument,_0x29ca5e,_0x41b782));case _0x49b6c8(0x1cc):return _0x552665[_0x49b6c8(0x175)];case'tab-new':{const _0x2aa2a8=extractFirstCommandArgument(_0x29ca5e,_0x41b782);return _0x2aa2a8?_0x49b6c8(0x1d4)+_0x2aa2a8:_0x552665['rRqJa'];}case _0x552665['rTIKz']:{const _0x3ff622=_0x552665[_0x49b6c8(0x1a3)](extractFirstCommandArgument,_0x29ca5e,_0x41b782);return _0x3ff622?_0x49b6c8(0x1b5)+_0x3ff622:'select\x20tab';}default:return _0x41b782;}}function extractPlaywrightCliToolDescription(_0x2db1d5){const _0xf9a1d0=_0xa7ad,_0x159f9b={'TuWrv':'string'},_0x31fee9=_0x2db1d5[_0xf9a1d0(0x1bb)];if(typeof _0x31fee9!==_0x159f9b[_0xf9a1d0(0x197)])return null;const _0x10b242=_0x31fee9['trim']()[_0xf9a1d0(0x19c)](/\s+/g,'\x20');return _0x10b242[_0xf9a1d0(0x178)]>0x0?_0x10b242:null;}export function formatPlaywrightCliConsoleLogMessage(_0x4ee31c,_0x2742f2,_0x1847e7){const _0x285c6e=_0xa7ad,_0x314960={'JVvtI':function(_0xd5e264,_0x2598ed){return _0xd5e264(_0x2598ed);}},_0x4e8c9d=formatPlaywrightCliLog(_0x2742f2,_0x1847e7),_0x3b07c0=_0x314960[_0x285c6e(0x16f)](extractPlaywrightCliToolDescription,_0x4ee31c);if(!_0x3b07c0)return _0x285c6e(0x1b2)+_0x4e8c9d;if(process[_0x285c6e(0x1d9)]['DEBUG'])return _0x285c6e(0x1a2)+_0x3b07c0+'\x20('+_0x4e8c9d+')';return'[ranger-verification-agent]\x20'+_0x3b07c0;}export function buildVerifyFeatureCliDebugPrompt(_0x49dd72,_0x4b4e99){const _0x2bee39=_0xa7ad,_0x576fec={'PQLOD':function(_0x15a264,_0x5dd720,_0x3eac2b){return _0x15a264(_0x5dd720,_0x3eac2b);},'SNIxV':'02_learn-more.yml','vTcPd':'03_learn-more.png','svgJw':function(_0x28931e,_0x1256aa){return _0x28931e(_0x1256aa);}},_0x46ba7d=_0x576fec['PQLOD'](buildCliArtifactPath,_0x4b4e99,_0x2bee39(0x173)),_0x1e0bdc=buildCliArtifactPath(_0x4b4e99,_0x2bee39(0x1b7)),_0x3e80d1=buildCliArtifactPath(_0x4b4e99,_0x576fec['SNIxV']),_0x3b235b=_0x576fec['PQLOD'](buildCliArtifactPath,_0x4b4e99,_0x576fec['vTcPd']),_0x47dfb2=_0x576fec['svgJw'](quoteShellArg,_0x46ba7d),_0x5790c8=quoteShellArg(_0x1e0bdc),_0x30d83a=_0x576fec['svgJw'](quoteShellArg,_0x3e80d1),_0x552ac7=quoteShellArg(_0x3b235b);return _0x2bee39(0x1b6)+_0x49dd72+_0x2bee39(0x194)+_0x49dd72+_0x2bee39(0x1bd)+_0x49dd72+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x49dd72+_0x2bee39(0x1d2)+_0x4b4e99+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x49dd72+_0x2bee39(0x163)+_0x47dfb2+_0x2bee39(0x1a0)+_0x49dd72+'\x20screenshot\x20--filename\x20'+_0x5790c8+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x49dd72+_0x2bee39(0x163)+_0x30d83a+_0x2bee39(0x170)+_0x49dd72+'\x20screenshot\x20--filename\x20'+_0x552ac7+_0x2bee39(0x1b9);}export function buildVerifyFeatureCliPrompt(_0x2d43f1){const _0x201733=_0xa7ad,_0x707f95={'POqiv':_0x201733(0x174),'eNyTT':function(_0x47822a,_0x256840,_0x42ee22){return _0x47822a(_0x256840,_0x42ee22);},'Czgur':_0x201733(0x1cd),'VJAmX':_0x201733(0x1c8),'psdfS':function(_0x182ba4,_0x58896e){return _0x182ba4(_0x58896e);},'FZEhn':function(_0x4263ad,_0x145525){return _0x4263ad(_0x145525);},'EdqfD':function(_0x48a084,_0x35b581){return _0x48a084(_0x35b581);},'bhPnk':function(_0x24b290,_0x35160e,_0x2abfec){return _0x24b290(_0x35160e,_0x2abfec);},'nniZP':function(_0x26c3a2,_0x4089a8,_0xcfa128){return _0x26c3a2(_0x4089a8,_0xcfa128);},'leHLf':_0x201733(0x1db)},{checklistItem:_0x5406d5,itemFeedback:_0x37fb99,taskDescription:_0x1be95a,cliCommandPrefix:_0x7e80c5,cliArtifactDir:_0x53ff62,isCdpMode:_0x3bc784,url:_0x58a998,cdpEndpoint:_0x348791,loginInstructions:_0x5075ec}=_0x2d43f1,_0x569c0d=_0x707f95['eNyTT'](buildCliArtifactPath,_0x53ff62,_0x707f95[_0x201733(0x1e2)]),_0x12dc21=_0x707f95['eNyTT'](buildCliArtifactPath,_0x53ff62,_0x201733(0x181)),_0x23a3f6=buildCliArtifactPath(_0x53ff62,'key_03_success-state.png'),_0x52fa9a=buildCliArtifactPath(_0x53ff62,_0x707f95['VJAmX']),_0xa205eb=quoteShellArg(_0x569c0d),_0x39a90a=_0x707f95[_0x201733(0x16d)](quoteShellArg,_0x12dc21),_0x4ba869=quoteShellArg(_0x23a3f6),_0x14a9f4=_0x707f95[_0x201733(0x1a7)](quoteShellArg,_0x52fa9a),_0x1dbb80=_0x5406d5['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x5406d5['notes']:'';let _0x46cc99='';if(_0x37fb99&&_0x37fb99['unaddressedComments'][_0x201733(0x178)]>0x0){const _0x4b3553=_0x37fb99['unaddressedComments']['map'](_0x3fea6a=>{const _0x49ce88=_0x201733,_0x5b6347=new Date(_0x3fea6a[_0x49ce88(0x17f)])['toLocaleDateString'](_0x49ce88(0x18d),{'month':'short','day':_0x49ce88(0x1c0)}),_0x4def1c=_0x3fea6a[_0x49ce88(0x1a8)]||_0x3fea6a[_0x49ce88(0x169)]||_0x707f95['POqiv'],_0x1f0064=_0x3fea6a[_0x49ce88(0x1d1)]?'\x20(on\x20element:\x20<'+(_0x3fea6a['domRef']['selector'][_0x49ce88(0x196)](_0x49ce88(0x179))[_0x49ce88(0x17b)]()?.[_0x49ce88(0x196)](':')[0x0]||_0x49ce88(0x1e3))+_0x49ce88(0x18b)+(_0x3fea6a['domRef'][_0x49ce88(0x1b8)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x3fea6a['id']+']\x20**'+_0x4def1c+'**\x20('+_0x5b6347+'):\x20\x22'+_0x3fea6a['content']+'\x22'+_0x1f0064;})[_0x201733(0x164)]('\x0a');_0x46cc99=_0x201733(0x16c)+_0x4b3553;}const _0x39ffbb=_0x37fb99?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x37fb99[_0x201733(0x1e7)]:'',_0x51418f=_0x3bc784?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x348791+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x58a998+_0x201733(0x1ad),_0x4f6c2e=_0x58a998?_0x707f95['EdqfD'](quoteShellArg,_0x58a998):'',_0x1d2c89=_0x3bc784?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x7e80c5+'\x20open`,\x20then\x20`'+_0x7e80c5+'\x20tracing-start`,\x20then\x20`'+_0x7e80c5+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x53ff62+_0x201733(0x1ba)+_0x7e80c5+'\x20snapshot\x20--filename\x20'+_0xa205eb+_0x201733(0x166)+_0x7e80c5+_0x201733(0x168)+_0x14a9f4+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x7e80c5+'\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario':_0x201733(0x1da)+_0x7e80c5+'\x20open\x20'+_0x4f6c2e+_0x201733(0x19d)+_0x7e80c5+'\x20tracing-start`,\x20then\x20`'+_0x7e80c5+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x53ff62+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x7e80c5+_0x201733(0x163)+_0xa205eb+_0x201733(0x1d7)+_0x7e80c5+_0x201733(0x168)+_0x14a9f4+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x7e80c5+_0x201733(0x160),_0x972138=_0x3bc784?_0x201733(0x185):'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x5a3f9e=_0x5075ec?_0x201733(0x1c4)+_0x5075ec+_0x201733(0x1d5):'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x5406d5['description']+_0x1dbb80+_0x46cc99+_0x39ffbb+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x1be95a+'\x0a\x0a'+_0x51418f+_0x5a3f9e+'\x0a\x0a'+_0x1d2c89+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x7e80c5+_0x201733(0x1aa)+_0x53ff62+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x39a90a+_0x201733(0x1c2)+_0x4ba869+'`\x0a-\x20`run-code\x20\x22await\x20page.waitForTimeout(1000)\x22`\x20for\x20waits\x20or\x20small\x20custom\x20checks\x0a\x0a##\x20Screenshot\x20Guidelines\x20-\x20IMPORTANT\x0aTake\x20screenshots\x20throughout\x20the\x20verification\x20flow\x20so\x20a\x20human\x20can\x20review\x20it\x20for\x20completeness.\x20Screenshots\x20are\x20your\x20evidence\x20trail.\x0a\x0a**When\x20to\x20take\x20screenshots\x20(use\x20Playwright\x20CLI\x20screenshot):**\x0a-\x20After\x20the\x20initial\x20snapshot\x20(capture\x20starting\x20state)\x0a-\x20Before\x20and\x20after\x20clicking\x20buttons\x20or\x20submitting\x20forms\x0a-\x20When\x20important\x20UI\x20elements\x20appear\x20(modals,\x20notifications,\x20loading\x20states)\x0a-\x20After\x20navigating\x20to\x20different\x20views\x20or\x20pages\x0a-\x20When\x20verifying\x20specific\x20elements\x20exist\x0a-\x20At\x20the\x20final\x20state\x20showing\x20the\x20completed\x20action\x0a\x0a**Screenshot\x20naming:**\x0a-\x20Use\x20descriptive\x20filenames\x20under\x20`'+_0x53ff62+_0x201733(0x18a)+_0x52fa9a+_0x201733(0x1ca)+_0x707f95['bhPnk'](buildCliArtifactPath,_0x53ff62,'02_button-clicked.png')+_0x201733(0x1ca)+_0x707f95['nniZP'](buildCliArtifactPath,_0x53ff62,_0x707f95['leHLf'])+_0x201733(0x1b0)+_0x707f95[_0x201733(0x1c9)](buildCliArtifactPath,_0x53ff62,_0x201733(0x1df))+'\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a'+_0x972138+_0x201733(0x1c5);}export function summarizeVerifyFeatureCliCommandAvailability(_0x1914fa){const _0x25737d=_0xa7ad,_0x2c9337={'XPBYZ':function(_0x1cb61a,_0x7db460){return _0x1cb61a===_0x7db460;}},_0x51dc0b=[..._0x1914fa['keys']()]['sort']();let _0x3fe9fc=0x0;for(const _0x40ffa5 of _0x1914fa[_0x25737d(0x1a9)]()){_0x3fe9fc+=_0x40ffa5;}return{'cliCommandCount':_0x3fe9fc,'cliCommandsSeen':_0x51dc0b,'noCliCommandsCalled':_0x2c9337[_0x25737d(0x1be)](_0x3fe9fc,0x0)};}export function createVerifyFeatureCliHooks(_0x271b71){const _0x29e546=_0xa7ad,_0x1517e1={'onSob':'Bash','Prnqp':function(_0x31ee28,_0x2288b6){return _0x31ee28(_0x2288b6);},'RivWm':_0x29e546(0x1b1),'SOAmd':function(_0x277a9b,_0x20f55a){return _0x277a9b!==_0x20f55a;},'iylyc':'PostToolUseFailure','jLABW':'tool_failure'},_0x190706=new Map(),_0x48075f=async _0x8e8b21=>{const _0x4e58a9=_0x29e546;if(_0x8e8b21[_0x4e58a9(0x1a4)]!==_0x4e58a9(0x1a5))return{};const _0x476e97=_0x8e8b21;if(_0x476e97[_0x4e58a9(0x1a6)]!==_0x1517e1['onSob'])return{};const _0x397b4a=_0x476e97['tool_input'],_0x1417b4=_0x1517e1[_0x4e58a9(0x1cb)](extractBashCommand,_0x397b4a);if(!_0x1417b4)return{};const _0x2248dc=_0x1517e1[_0x4e58a9(0x1cb)](parsePlaywrightCliCommand,_0x1417b4);if(!_0x2248dc)return{};return _0x190706[_0x4e58a9(0x198)](_0x2248dc,(_0x190706['get'](_0x2248dc)||0x0)+0x1),_0x271b71['trackPhaseStart'](_0x1517e1[_0x4e58a9(0x17a)],{'transport':'playwright-cli','toolName':_0x2248dc}),_0x271b71['trackPhaseEnd'](_0x4e58a9(0x1b1),{'transport':'playwright-cli','toolName':_0x2248dc,'bashCommandPreview':truncatePreview(_0x1417b4)}),_0x1517e1['SOAmd'](_0x2248dc,'snapshot')&&console['log'](formatPlaywrightCliConsoleLogMessage(_0x397b4a,_0x1417b4,_0x2248dc)),{};},_0x592b22=async _0x4f2e9d=>{const _0x378b29=_0x29e546;if(_0x1517e1['SOAmd'](_0x4f2e9d['hook_event_name'],_0x1517e1['iylyc']))return{};const _0x7e1321=_0x4f2e9d;if(_0x1517e1[_0x378b29(0x172)](_0x7e1321['tool_name'],'Bash'))return{};return await _0x271b71[_0x378b29(0x191)](_0x1517e1[_0x378b29(0x1e8)],_0x7e1321[_0x378b29(0x182)],{'transport':_0x378b29(0x1bf),'toolName':_0x1517e1[_0x378b29(0x1a1)]}),{};};return{'postToolUseHook':_0x48075f,'postToolUseFailureHook':_0x592b22,'commandCounts':_0x190706};}async function runPlaywrightCliLifecycleCommand(_0x42d0ef){const _0x18f94f=_0xa7ad,_0x58adad={'gmczd':function(_0x1155f9,_0x1e22d8){return _0x1155f9(_0x1e22d8);},'BIgth':function(_0x5874d4,_0x5c2ca5){return _0x5874d4??_0x5c2ca5;}},{sessionId:_0x46072b,configPath:_0x269380,commandArgs:_0x35d586,env:_0x3fa02a,telemetry:_0x3fad84,phase:_0x469955,metadata:_0x377856,timeoutMs:_0x2c68b8}=_0x42d0ef;_0x3fad84[_0x18f94f(0x1b3)](_0x469955,_0x377856);try{const _0x4e125f=await _0x58adad[_0x18f94f(0x19f)](runPlaywrightCliCommand,{'sessionId':_0x46072b,'configPath':_0x269380,'commandArgs':_0x35d586,'cwd':process['cwd'](),'env':_0x3fa02a,'timeoutMs':_0x58adad['BIgth'](_0x2c68b8,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x3fad84[_0x18f94f(0x19b)](_0x469955,{..._0x377856,'subcommand':_0x4e125f[_0x18f94f(0x161)]['subcommand'],'stdoutPreview':truncatePreview(_0x4e125f[_0x18f94f(0x16b)],0x7d0),'stderrPreview':truncatePreview(_0x4e125f[_0x18f94f(0x180)],0x7d0)});}catch(_0x141c6b){await _0x3fad84['trackPhaseError'](_0x469955,_0x141c6b,_0x377856);throw _0x141c6b;}}export async function finalizeVerifyFeatureCliSession(_0x18f256){const _0x23997e=_0xa7ad,_0x322d8b={'nKYEq':'playwright_cli_tracing_stop','vClub':_0x23997e(0x1d8),'tMrXD':_0x23997e(0x18f),'QgbAe':function(_0x156998,_0x291a7a,_0x4f8ad8){return _0x156998(_0x291a7a,_0x4f8ad8);},'ipcCc':_0x23997e(0x17d)},{telemetry:_0x2eb589,sessionId:_0x318fcc,configPath:_0x15ef00,cliArtifactDir:_0x3e8d1c,env:_0x2d6106,transportMetadata:_0x441b4f}=_0x18f256,_0x1a084c=[{'phase':_0x322d8b[_0x23997e(0x1ae)],'commandArgs':['tracing-stop']},{'phase':_0x322d8b[_0x23997e(0x184)],'commandArgs':[_0x322d8b[_0x23997e(0x1af)],_0x23997e(0x186)+_0x322d8b[_0x23997e(0x1e5)](buildCliArtifactPath,_0x3e8d1c,'session-recording.webm')]},{'phase':_0x322d8b['ipcCc'],'commandArgs':[_0x23997e(0x16e)]}];for(const _0x1c8b14 of _0x1a084c){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x318fcc,'configPath':_0x15ef00,'commandArgs':[..._0x1c8b14['commandArgs']],'env':_0x2d6106,'telemetry':_0x2eb589,'phase':_0x1c8b14['phase'],'metadata':_0x441b4f});}catch{}}}function _0x5c69(){const _0x37b53d=['target','Czgur','element','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','QgbAe','301110giZpAn','canonicalFlow','jLABW','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','invocation','stringify','\x20snapshot\x20--filename\x20','join','run\x20custom\x20Playwright\x20code','`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`','video-start','\x20screenshot\x20--filename\x20','authorEmail','10RaETaz','stdout','\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20(the\x20bracketed\x20value)\x20in\x20the\x20addressedCommentIds\x20array\x20in\x20your\x20output.\x0a\x0a','psdfS','close','JVvtI','`\x0a9.\x20Run\x20`','stop\x20video\x20recording','SOAmd','00_mozilla-homepage.yml','Reviewer','unlAQ','click','1382051EtrMhz','length','\x20>\x20','RivWm','pop','click\x20','playwright_cli_close','xDeJV','createdAt','stderr','02_state.yml','error','PJnPA','vClub','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','--filename=','JFoxF','open\x20new\x20tab','hDvVk','`:\x20\x22','>\x20\x22','fill','en-US','8dsTdma','video-stop','stop\x20tracing','trackPhaseError','check','jDaXc','\x0a\x0a1.\x20Run\x20`','64478stfkKs','split','TuWrv','set','Wguzy','capture\x20step\x20`','trackPhaseEnd','replace','`,\x20then\x20`','1821911QvIDjw','gmczd','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','onSob','[ranger-verification-agent]\x20','ZRLHz','hook_event_name','PostToolUse','tool_name','FZEhn','authorName','values','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','capture\x20snapshot\x20`','tracing-stop','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification','nKYEq','tMrXD','\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22','tool_call','[playwright-cli]\x20','trackPhaseStart','mtimeMs','select\x20tab\x20','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','01_mozilla-homepage.png','textContent','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','description','trace.zip','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','XPBYZ','playwright-cli','numeric','open','`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20','3IjXdTA','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.','1325664zDlfLi','capture\x20screenshot','01_initial-state.png','bhPnk','\x22,\x20\x22','Prnqp','run-code','01_initial.yml','name','545202NCLjpM','3bUMoKw','domRef','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','push','open\x20new\x20tab\x20','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','test','`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`','playwright_cli_video_stop','env','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','03_result-visible.png','isFile','107348cvSvkf','press','key_04_success-state.png','NlBms'];_0x5c69=function(){return _0x37b53d;};return _0x5c69();}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x5cf28f){const _0x3e4437=_0xa7ad,_0x44bcaa=[_0x3e4437(0x1bc),'trace.trace.zip'];for(const _0x4649e7 of _0x44bcaa){const _0x1bb5b8=join(_0x5cf28f,_0x4649e7);try{return{'buffer':await readFile(_0x1bb5b8),'source':_0x1bb5b8};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x3dbb9a){const _0x5d769e=_0xa7ad,_0x25ceb8={'mXvWK':function(_0x412a1b,_0x47e399,_0xb2eeec){return _0x412a1b(_0x47e399,_0xb2eeec);},'OBwLM':function(_0x58bbeb,_0x15d7ef,_0x498706){return _0x58bbeb(_0x15d7ef,_0x498706);},'EXrZp':function(_0x49ff0d,_0x471a14){return _0x49ff0d+_0x471a14;}},{cwd:_0x5ce9b0,cliArtifactDir:_0x5e22ab,startTime:_0x30378a}=_0x3dbb9a,_0x5974cf=[];await mkdir(_0x5e22ab,{'recursive':!![]});const _0x14d279=await _0x25ceb8['mXvWK'](readdir,_0x5ce9b0,{'withFileTypes':!![]});for(const _0x5cc58f of _0x14d279){if(!_0x5cc58f[_0x5d769e(0x1dc)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x5cc58f['name']))continue;const _0x5d3755=_0x25ceb8['OBwLM'](join,_0x5ce9b0,_0x5cc58f['name']),_0x5eccf9=await stat(_0x5d3755);if(_0x25ceb8['EXrZp'](_0x5eccf9[_0x5d769e(0x1b4)],0x7d0)<_0x30378a)continue;const _0x4c9a78=buildCliArtifactPath(_0x5e22ab,_0x5cc58f[_0x5d769e(0x1ce)]);if(_0x5d3755===_0x4c9a78)continue;await rename(_0x5d3755,_0x4c9a78),_0x5974cf[_0x5d769e(0x1d3)](_0x5cc58f['name']);}return _0x5974cf['sort']();}
1
+ (function(_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();}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ranger-testing/ranger-cli",
3
- "version": "2.5.2",
3
+ "version": "2.5.4-alpha.071b7bd-1",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "ranger": "./build/cli.js",