@ranger-testing/ranger-cli 2.5.4-alpha.1d983c3-19 → 2.5.4-alpha.2709b75-22

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 (79) 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/deleteProfile.js +1 -0
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/opencodeConfig.js +1 -1
  58. package/build/commands/utils/playwrightCli.js +1 -1
  59. package/build/commands/utils/profileMessages.js +1 -1
  60. package/build/commands/utils/profileSetupBanner.js +1 -1
  61. package/build/commands/utils/projectsConfig.js +1 -1
  62. package/build/commands/utils/rangerConfig.js +1 -1
  63. package/build/commands/utils/rangerRoot.js +1 -1
  64. package/build/commands/utils/resolveProfileContext.js +1 -1
  65. package/build/commands/utils/resolveProfileUrl.js +1 -1
  66. package/build/commands/utils/retry.js +1 -1
  67. package/build/commands/utils/sessionCache.js +1 -1
  68. package/build/commands/utils/settings.js +1 -1
  69. package/build/commands/utils/skillContent.js +1 -1
  70. package/build/commands/utils/skills.js +1 -1
  71. package/build/commands/utils/stitchWebmFiles.js +1 -1
  72. package/build/commands/utils/telemetry.js +1 -1
  73. package/build/commands/utils/tokenRefresh.js +1 -1
  74. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  75. package/build/commands/utils/userApi.js +1 -1
  76. package/build/commands/utils/version.js +1 -1
  77. package/build/commands/verifyFeature.js +1 -1
  78. package/build/commands/verifyFeatureCli.js +1 -1
  79. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x20dfc5,_0x5b8e81){const _0x517167=_0xe47b,_0x1749f8=_0x20dfc5();while(!![]){try{const _0x5b46f7=parseInt(_0x517167(0x84))/0x1*(parseInt(_0x517167(0xeb))/0x2)+parseInt(_0x517167(0xa1))/0x3+parseInt(_0x517167(0xdf))/0x4*(-parseInt(_0x517167(0xda))/0x5)+-parseInt(_0x517167(0xa6))/0x6+parseInt(_0x517167(0xd4))/0x7*(parseInt(_0x517167(0xf4))/0x8)+parseInt(_0x517167(0xb1))/0x9*(parseInt(_0x517167(0xe7))/0xa)+-parseInt(_0x517167(0xbe))/0xb*(parseInt(_0x517167(0xe1))/0xc);if(_0x5b46f7===_0x5b8e81)break;else _0x1749f8['push'](_0x1749f8['shift']());}catch(_0x57ba11){_0x1749f8['push'](_0x1749f8['shift']());}}}(_0x3385,0xcb042));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(_0x450110,_0x35c8c2=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x364249=_0xe47b,_0x10d80f={'GKCpq':function(_0x543626,_0x3dcb61){return _0x543626+_0x3dcb61;}};return _0x450110['length']>_0x35c8c2?_0x10d80f[_0x364249(0x9e)](_0x450110[_0x364249(0xc7)](0x0,_0x35c8c2),_0x364249(0xb4)):_0x450110;}function buildCliArtifactPath(_0x5ec7df,_0x106ec5){const _0x1fce4f=_0xe47b,_0x4c7268={'qbPrd':function(_0x1341bd,_0x50e180,_0x1b5c96){return _0x1341bd(_0x50e180,_0x1b5c96);}};return _0x4c7268[_0x1fce4f(0xbd)](join,_0x5ec7df,_0x106ec5);}function _0x3385(){const _0x493c6e=['02_learn-more.yml','`\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`','CeKpj','commandArgs','target','video-stop','574ZDmTaK','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','CEeOr','start\x20tracing','run\x20custom\x20Playwright\x20code','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','5XMqfMD','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','tool_call','AbNDf','pop','6538612HYVefc','--filename=','4451244IsGcAC','error','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','\x22,\x20\x22','run-code','canonicalFlow','410070QAljIV','name','CgKov','\x20tracing-start`,\x20then\x20`','353944SmaGjE','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','02_button-clicked.png','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','log','textContent','content','\x20screenshot\x20--filename\x20','57128DCXCZN','WtlOd','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','fill\x20','hYcqL','phzEn','>\x20\x22','key_03_success-state.png','set','Itlzg','OuKwT','\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.','wcHdx','join','[playwright-cli]\x20','trace.trace.zip','KcyTo','ETuQJ','match','8XTQYsr','capture\x20key\x20step\x20`','Wiqon','trackPhaseStart','trim','test','env','playwright_cli_tracing_stop','short','tool_failure','map','[ranger-verification-agent]\x20','02_state.yml','\x20snapshot\x20--filename\x20','trackPhaseError','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','tracing-stop','JYQSw','\x20open\x20','stop\x20tracing','\x20tracing-start`\x0a3.\x20Run\x20`','tab-select','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','select\x20tab\x20','SJzSo','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','GKCpq','stop\x20video\x20recording','mtimeMs','3915249bHYEnW','-\x20[','(?:^|\x5cs)','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','notes','5522124ZDpBID','NzAzQ','01_mozilla-homepage.png','hook_event_name','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','giJEG','wsyyu','domRef','press','\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.','stdout','99hbrfGR','click\x20','authorName','...','tracing-start','jxxKk','djWpl','open\x20browser','playwright-cli','tuHgu','capture\x20snapshot\x20`','Bash','qbPrd','11beIChp','check\x20','replace','tool_name','NcAsx','snapshot','string','capture\x20step\x20`','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','slice','isFile','zRfDC','qXcKa','quvnr','HIWao','\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'];_0x3385=function(){return _0x493c6e;};return _0x3385();}function toStepDisplayName(_0x557941){const _0x4fbaae=_0xe47b,_0x1513f9=basename(_0x557941)[_0x4fbaae(0xc0)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x4fbaae(0xc0)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x1513f9,'isKeyStep':/^key_/i[_0x4fbaae(0x89)](basename(_0x557941))};}function extractShellValue(_0x25690c){if(!_0x25690c)return null;return _0x25690c[0x1]??_0x25690c[0x2]??_0x25690c[0x3]??null;}function extractFilenameOption(_0x16417a){const _0x157f90=_0xe47b;return extractShellValue(_0x16417a[_0x157f90(0x83)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x1b37cf,_0x2dba96){const _0x19205e=_0xe47b,_0x2567e1={'djWpl':'\x5c$&'},_0x145b14=_0x2dba96[_0x19205e(0xc0)](/[.*+?^${}()|[\]\\]/g,_0x2567e1[_0x19205e(0xb7)]);return extractShellValue(_0x1b37cf[_0x19205e(0x83)](new RegExp(_0x19205e(0xa3)+_0x145b14+_0x19205e(0xed))));}function formatCommandTarget(_0x50b9ee){const _0x5cffbb=_0xe47b,_0x38ebef={'BAstv':_0x5cffbb(0xd2)};if(!_0x50b9ee)return _0x38ebef['BAstv'];if(/^e\d+$/i['test'](_0x50b9ee))return'ref\x20'+_0x50b9ee;return JSON['stringify'](truncatePreview(_0x50b9ee,0x78));}function formatPlaywrightCliLog(_0x2ec803,_0x412d65){const _0x2441e9=_0xe47b,_0x132184={'NzAzQ':function(_0x205060,_0x4288cb,_0x36535a){return _0x205060(_0x4288cb,_0x36535a);},'zRfDC':_0x2441e9(0xb5),'HIWao':_0x2441e9(0x94),'AbNDf':_0x2441e9(0x97),'IBnxE':'video-start','Wiqon':'start\x20video\x20recording','mbOcQ':_0x2441e9(0xd3),'vLfca':_0x2441e9(0x9f),'EPDNB':_0x2441e9(0xc3),'tuHgu':function(_0x5908e3,_0x2fb8c2){return _0x5908e3(_0x2fb8c2);},'WRqvK':'screenshot','KcyTo':function(_0x1e3b95,_0x452f04){return _0x1e3b95(_0x452f04);},'fgVYC':'capture\x20screenshot','NcAsx':'check','hYcqL':'fill','sxqNY':function(_0x57d8a2,_0xae51a7){return _0x57d8a2(_0xae51a7);},'phzEn':function(_0x1a9fa7,_0x56ac9d,_0x2f3d53){return _0x1a9fa7(_0x56ac9d,_0x2f3d53);},'ZtoHQ':'select\x20tab'};switch(_0x412d65){case'open':{const _0x328046=_0x132184['NzAzQ'](extractFirstCommandArgument,_0x2ec803,_0x412d65);return _0x328046?'open\x20'+_0x328046:_0x2441e9(0xb8);}case _0x132184[_0x2441e9(0xc9)]:return _0x2441e9(0xd7);case _0x132184[_0x2441e9(0xcc)]:return _0x132184[_0x2441e9(0xdd)];case _0x132184['IBnxE']:return _0x132184[_0x2441e9(0x86)];case _0x132184['mbOcQ']:return _0x132184['vLfca'];case _0x132184['EPDNB']:{const _0x1cace7=_0x132184[_0x2441e9(0xba)](extractFilenameOption,_0x2ec803);if(!_0x1cace7)return'capture\x20snapshot';const {name:_0x32cc1f}=_0x132184['tuHgu'](toStepDisplayName,_0x1cace7);return _0x2441e9(0xbb)+_0x32cc1f+'`';}case _0x132184['WRqvK']:{const _0x6bb38d=_0x132184[_0x2441e9(0x81)](extractFilenameOption,_0x2ec803);if(!_0x6bb38d)return _0x132184['fgVYC'];const {name:_0xe32858,isKeyStep:_0x5beb40}=toStepDisplayName(_0x6bb38d);return _0x5beb40?_0x2441e9(0x85)+_0xe32858+'`':_0x2441e9(0xc5)+_0xe32858+'`';}case'click':return _0x2441e9(0xb2)+formatCommandTarget(_0x132184[_0x2441e9(0xa7)](extractFirstCommandArgument,_0x2ec803,_0x412d65));case _0x132184[_0x2441e9(0xc2)]:return _0x2441e9(0xbf)+_0x132184[_0x2441e9(0x81)](formatCommandTarget,_0x132184[_0x2441e9(0xa7)](extractFirstCommandArgument,_0x2ec803,_0x412d65));case _0x132184[_0x2441e9(0xf8)]:return _0x2441e9(0xf7)+_0x132184['sxqNY'](formatCommandTarget,_0x132184['NzAzQ'](extractFirstCommandArgument,_0x2ec803,_0x412d65));case _0x2441e9(0xae):return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x2ec803,_0x412d65));case _0x2441e9(0xe5):return _0x2441e9(0xd8);case'tab-new':{const _0xfdc877=extractFirstCommandArgument(_0x2ec803,_0x412d65);return _0xfdc877?'open\x20new\x20tab\x20'+_0xfdc877:'open\x20new\x20tab';}case _0x2441e9(0x99):{const _0x5246f5=_0x132184[_0x2441e9(0xf9)](extractFirstCommandArgument,_0x2ec803,_0x412d65);return _0x5246f5?_0x2441e9(0x9b)+_0x5246f5:_0x132184['ZtoHQ'];}default:return _0x412d65;}}function extractPlaywrightCliToolDescription(_0x3e9e77){const _0x4892d7=_0xe47b,_0x44f2fb={'YbmZA':function(_0x324919,_0x397694){return _0x324919!==_0x397694;}},_0x537e0b=_0x3e9e77['description'];if(_0x44f2fb['YbmZA'](typeof _0x537e0b,_0x4892d7(0xc4)))return null;const _0x1ff520=_0x537e0b[_0x4892d7(0x88)]()[_0x4892d7(0xc0)](/\s+/g,'\x20');return _0x1ff520['length']>0x0?_0x1ff520:null;}export function formatPlaywrightCliConsoleLogMessage(_0x5d78d5,_0x5a76e4,_0x365f76){const _0xd06ad4=_0xe47b,_0x188356={'leMBX':function(_0xb16ec3,_0x60494b){return _0xb16ec3(_0x60494b);}},_0x1569c3=formatPlaywrightCliLog(_0x5a76e4,_0x365f76),_0x11b83c=_0x188356['leMBX'](extractPlaywrightCliToolDescription,_0x5d78d5);if(!_0x11b83c)return _0xd06ad4(0x7f)+_0x1569c3;if(process[_0xd06ad4(0x8a)]['DEBUG'])return _0xd06ad4(0x8f)+_0x11b83c+'\x20('+_0x1569c3+')';return'[ranger-verification-agent]\x20'+_0x11b83c;}export function buildVerifyFeatureCliDebugPrompt(_0x1a9b6b,_0x2b14c5){const _0x5b7744=_0xe47b,_0x4a9e93={'uvfWu':function(_0x2341ad,_0xeab543,_0x523034){return _0x2341ad(_0xeab543,_0x523034);},'mVYJj':'00_mozilla-homepage.yml','jxxKk':'03_learn-more.png','CgKov':function(_0x4dc7e1,_0x290bac){return _0x4dc7e1(_0x290bac);},'quvnr':function(_0x7068ca,_0x23da4c){return _0x7068ca(_0x23da4c);}},_0x5dbf5d=_0x4a9e93['uvfWu'](buildCliArtifactPath,_0x2b14c5,_0x4a9e93['mVYJj']),_0x1d5b5f=buildCliArtifactPath(_0x2b14c5,_0x5b7744(0xa8)),_0x236707=buildCliArtifactPath(_0x2b14c5,_0x5b7744(0xce)),_0x2bb230=buildCliArtifactPath(_0x2b14c5,_0x4a9e93[_0x5b7744(0xb6)]),_0x300823=quoteShellArg(_0x5dbf5d),_0x52ad8f=_0x4a9e93[_0x5b7744(0xe9)](quoteShellArg,_0x1d5b5f),_0x4ee908=quoteShellArg(_0x236707),_0x3a0e6e=_0x4a9e93[_0x5b7744(0xcb)](quoteShellArg,_0x2bb230);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x1a9b6b+'\x0a\x0a1.\x20Run\x20`'+_0x1a9b6b+_0x5b7744(0x9a)+_0x1a9b6b+_0x5b7744(0x98)+_0x1a9b6b+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x2b14c5+_0x5b7744(0xaa)+_0x1a9b6b+_0x5b7744(0x91)+_0x300823+_0x5b7744(0xa4)+_0x1a9b6b+'\x20screenshot\x20--filename\x20'+_0x52ad8f+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x1a9b6b+_0x5b7744(0x91)+_0x4ee908+'`\x0a9.\x20Run\x20`'+_0x1a9b6b+_0x5b7744(0xf3)+_0x3a0e6e+_0x5b7744(0x93);}export function buildVerifyFeatureCliPrompt(_0x26830e){const _0x4e04d6=_0xe47b,_0x5396f2={'qjrcT':'en-US','PesrV':_0x4e04d6(0x90),'WtlOd':function(_0x185cf8,_0x252170){return _0x185cf8(_0x252170);},'qktkb':function(_0x181544,_0x4f1975){return _0x181544(_0x4f1975);},'pkEHW':function(_0x384bef,_0x50f3db){return _0x384bef>_0x50f3db;},'qXcKa':_0x4e04d6(0xee),'CEeOr':function(_0x5520a3,_0x2adc7f,_0x384e2e){return _0x5520a3(_0x2adc7f,_0x384e2e);},'MFgcz':'03_result-visible.png'},{checklistItem:_0x3d6110,itemFeedback:_0x5344cc,taskDescription:_0x23ab96,cliCommandPrefix:_0x2b76ec,cliArtifactDir:_0x5012d6,isCdpMode:_0x8a57b2,url:_0x2c532f,cdpEndpoint:_0x55299c,loginInstructions:_0x53f9d0}=_0x26830e,_0x1f6bf2=buildCliArtifactPath(_0x5012d6,'01_initial.yml'),_0x5b9e69=buildCliArtifactPath(_0x5012d6,_0x5396f2['PesrV']),_0x4b9816=buildCliArtifactPath(_0x5012d6,_0x4e04d6(0xfb)),_0xafeb78=buildCliArtifactPath(_0x5012d6,'01_initial-state.png'),_0x646505=_0x5396f2[_0x4e04d6(0xf5)](quoteShellArg,_0x1f6bf2),_0x55201f=_0x5396f2['WtlOd'](quoteShellArg,_0x5b9e69),_0x19df85=_0x5396f2['WtlOd'](quoteShellArg,_0x4b9816),_0x300288=_0x5396f2['qktkb'](quoteShellArg,_0xafeb78),_0x2468c8=_0x3d6110[_0x4e04d6(0xa5)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x3d6110[_0x4e04d6(0xa5)]:'';let _0x4133e3='';if(_0x5344cc&&_0x5396f2['pkEHW'](_0x5344cc['unaddressedComments']['length'],0x0)){const _0x12326f=_0x5344cc['unaddressedComments'][_0x4e04d6(0x8e)](_0x5c14ad=>{const _0x43e4e3=_0x4e04d6,_0x37f18e=new Date(_0x5c14ad['createdAt'])['toLocaleDateString'](_0x5396f2['qjrcT'],{'month':_0x43e4e3(0x8c),'day':'numeric'}),_0x30b69e=_0x5c14ad[_0x43e4e3(0xb3)]||_0x5c14ad['authorEmail']||'Reviewer',_0x38c083=_0x5c14ad['domRef']?'\x20(on\x20element:\x20<'+(_0x5c14ad[_0x43e4e3(0xad)]['selector']['split']('\x20>\x20')[_0x43e4e3(0xde)]()?.['split'](':')[0x0]||'element')+_0x43e4e3(0xfa)+(_0x5c14ad['domRef'][_0x43e4e3(0xf1)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0x43e4e3(0xa2)+_0x5c14ad['id']+']\x20**'+_0x30b69e+'**\x20('+_0x37f18e+'):\x20\x22'+_0x5c14ad[_0x43e4e3(0xf2)]+'\x22'+_0x38c083;})[_0x4e04d6(0x7e)]('\x0a');_0x4133e3='\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'+_0x12326f;}const _0x1b1143=_0x5344cc?.[_0x4e04d6(0xe6)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x5344cc['canonicalFlow']:'',_0x5f1ec8=_0x8a57b2?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x55299c+_0x4e04d6(0xf6):_0x4e04d6(0x9d)+_0x2c532f+'\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',_0x64da11=_0x2c532f?quoteShellArg(_0x2c532f):'',_0x639844=_0x8a57b2?_0x4e04d6(0xef)+_0x2b76ec+'\x20open`,\x20then\x20`'+_0x2b76ec+_0x4e04d6(0xea)+_0x2b76ec+_0x4e04d6(0xec)+_0x5012d6+_0x4e04d6(0xd5)+_0x2b76ec+_0x4e04d6(0x91)+_0x646505+'`\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`'+_0x2b76ec+'\x20screenshot\x20--filename\x20'+_0x300288+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x2b76ec+'\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':'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x2b76ec+_0x4e04d6(0x96)+_0x64da11+'`,\x20then\x20`'+_0x2b76ec+'\x20tracing-start`,\x20then\x20`'+_0x2b76ec+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x5012d6+_0x4e04d6(0xd5)+_0x2b76ec+'\x20snapshot\x20--filename\x20'+_0x646505+'`\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`'+_0x2b76ec+'\x20screenshot\x20--filename\x20'+_0x300288+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x2b76ec+_0x4e04d6(0xc6),_0xbe1127=_0x8a57b2?'\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.':'\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.',_0x18e8aa=_0x53f9d0?_0x4e04d6(0xd9)+_0x53f9d0+_0x4e04d6(0x7c):'';return _0x4e04d6(0xdb)+_0x3d6110['description']+_0x2468c8+_0x4133e3+_0x1b1143+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x23ab96+'\x0a\x0a'+_0x5f1ec8+_0x18e8aa+'\x0a\x0a'+_0x639844+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x2b76ec+_0x4e04d6(0xe3)+_0x5012d6+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x55201f+'`\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'+_0x19df85+_0x4e04d6(0xcf)+_0x5012d6+'`:\x20\x22'+_0xafeb78+_0x4e04d6(0xe4)+buildCliArtifactPath(_0x5012d6,_0x5396f2[_0x4e04d6(0xca)])+'\x22,\x20\x22'+_0x5396f2[_0x4e04d6(0xd6)](buildCliArtifactPath,_0x5012d6,_0x5396f2['MFgcz'])+'\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(_0x5012d6,'key_04_success-state.png')+_0x4e04d6(0xcd)+_0xbe1127+_0x4e04d6(0xaf);}function _0xe47b(_0x1bcd28,_0x7b59){_0x1bcd28=_0x1bcd28-0x7c;const _0x33859f=_0x3385();let _0xe47baa=_0x33859f[_0x1bcd28];return _0xe47baa;}export function summarizeVerifyFeatureCliCommandAvailability(_0x391d5e){const _0x5cf90e=[..._0x391d5e['keys']()]['sort']();let _0x2e1f9b=0x0;for(const _0x53099d of _0x391d5e['values']()){_0x2e1f9b+=_0x53099d;}return{'cliCommandCount':_0x2e1f9b,'cliCommandsSeen':_0x5cf90e,'noCliCommandsCalled':_0x2e1f9b===0x0};}export function createVerifyFeatureCliHooks(_0x5dd4f3){const _0x5de67f=_0xe47b,_0x521f61={'YtOrA':function(_0x4e34d6,_0x120ea8){return _0x4e34d6(_0x120ea8);},'ZaQRb':function(_0x42a219,_0x176b5b){return _0x42a219+_0x176b5b;},'ETuQJ':_0x5de67f(0xb9),'DzSRh':function(_0x156341,_0x51e458){return _0x156341(_0x51e458);},'LdMmD':function(_0x19838b,_0x381812){return _0x19838b!==_0x381812;},'QIKdU':_0x5de67f(0xc3),'wsyyu':'PostToolUseFailure','yrznQ':_0x5de67f(0x8d)},_0x2c7beb=new Map(),_0x47fef5=async _0x1f3396=>{const _0x5727e4=_0x5de67f;if(_0x1f3396['hook_event_name']!=='PostToolUse')return{};const _0x5c20d1=_0x1f3396;if(_0x5c20d1[_0x5727e4(0xc1)]!==_0x5727e4(0xbc))return{};const _0x28bb03=_0x5c20d1['tool_input'],_0x4fdce8=_0x521f61['YtOrA'](extractBashCommand,_0x28bb03);if(!_0x4fdce8)return{};const _0x4ca1a8=parsePlaywrightCliCommand(_0x4fdce8);if(!_0x4ca1a8)return{};return _0x2c7beb[_0x5727e4(0xfc)](_0x4ca1a8,_0x521f61['ZaQRb'](_0x2c7beb['get'](_0x4ca1a8)||0x0,0x1)),_0x5dd4f3[_0x5727e4(0x87)](_0x5727e4(0xdc),{'transport':_0x521f61[_0x5727e4(0x82)],'toolName':_0x4ca1a8}),_0x5dd4f3['trackPhaseEnd'](_0x5727e4(0xdc),{'transport':_0x521f61[_0x5727e4(0x82)],'toolName':_0x4ca1a8,'bashCommandPreview':_0x521f61['DzSRh'](truncatePreview,_0x4fdce8)}),_0x521f61['LdMmD'](_0x4ca1a8,_0x521f61['QIKdU'])&&console[_0x5727e4(0xf0)](formatPlaywrightCliConsoleLogMessage(_0x28bb03,_0x4fdce8,_0x4ca1a8)),{};},_0x5de287=async _0x346291=>{const _0x352493=_0x5de67f;if(_0x521f61['LdMmD'](_0x346291[_0x352493(0xa9)],_0x521f61[_0x352493(0xac)]))return{};const _0x29f719=_0x346291;if(_0x29f719['tool_name']!==_0x352493(0xbc))return{};return await _0x5dd4f3[_0x352493(0x92)](_0x521f61['yrznQ'],_0x29f719[_0x352493(0xe2)],{'transport':'playwright-cli','toolName':'Bash'}),{};};return{'postToolUseHook':_0x47fef5,'postToolUseFailureHook':_0x5de287,'commandCounts':_0x2c7beb};}async function runPlaywrightCliLifecycleCommand(_0x2f3145){const _0x5c15aa=_0xe47b,_0x16dc0a={'JYQSw':function(_0x325fac,_0x16c0d3){return _0x325fac(_0x16c0d3);},'adbwo':function(_0x3ab599,_0x29276d,_0x1f17ae){return _0x3ab599(_0x29276d,_0x1f17ae);}},{sessionId:_0x448103,configPath:_0x4e69e8,commandArgs:_0x2d79c5,env:_0x4d1f26,telemetry:_0x4a9b75,phase:_0x7fed8,metadata:_0x2695d0,timeoutMs:_0x4e3a0b}=_0x2f3145;_0x4a9b75['trackPhaseStart'](_0x7fed8,_0x2695d0);try{const _0x339521=await _0x16dc0a[_0x5c15aa(0x95)](runPlaywrightCliCommand,{'sessionId':_0x448103,'configPath':_0x4e69e8,'commandArgs':_0x2d79c5,'cwd':process['cwd'](),'env':_0x4d1f26,'timeoutMs':_0x4e3a0b??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x4a9b75['trackPhaseEnd'](_0x7fed8,{..._0x2695d0,'subcommand':_0x339521['invocation']['subcommand'],'stdoutPreview':_0x16dc0a['adbwo'](truncatePreview,_0x339521[_0x5c15aa(0xb0)],0x7d0),'stderrPreview':_0x16dc0a['adbwo'](truncatePreview,_0x339521['stderr'],0x7d0)});}catch(_0xdb288a){await _0x4a9b75['trackPhaseError'](_0x7fed8,_0xdb288a,_0x2695d0);throw _0xdb288a;}}export async function finalizeVerifyFeatureCliSession(_0x49c7fb){const _0x5e3c81=_0xe47b,_0x26ace9={'OuKwT':_0x5e3c81(0x8b),'hgDFh':'video-stop','SJzSo':function(_0x8f00e0,_0x41363a,_0x4370cb){return _0x8f00e0(_0x41363a,_0x4370cb);},'Itlzg':'session-recording.webm','CqYer':function(_0x562076,_0x1eb67d){return _0x562076(_0x1eb67d);}},{telemetry:_0x488ee1,sessionId:_0x34cf63,configPath:_0x1ae458,cliArtifactDir:_0x31afb9,env:_0x4247b1,transportMetadata:_0x4579fb}=_0x49c7fb,_0x7475fe=[{'phase':_0x26ace9[_0x5e3c81(0xfe)],'commandArgs':['tracing-stop']},{'phase':'playwright_cli_video_stop','commandArgs':[_0x26ace9['hgDFh'],_0x5e3c81(0xe0)+_0x26ace9[_0x5e3c81(0x9c)](buildCliArtifactPath,_0x31afb9,_0x26ace9[_0x5e3c81(0xfd)])]},{'phase':'playwright_cli_close','commandArgs':['close']}];for(const _0x56ae75 of _0x7475fe){try{await _0x26ace9['CqYer'](runPlaywrightCliLifecycleCommand,{'sessionId':_0x34cf63,'configPath':_0x1ae458,'commandArgs':[..._0x56ae75[_0x5e3c81(0xd1)]],'env':_0x4247b1,'telemetry':_0x488ee1,'phase':_0x56ae75['phase'],'metadata':_0x4579fb});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x31f439){const _0x98b769=_0xe47b,_0x43f222={'CeKpj':'trace.zip'},_0x80aa32=[_0x43f222[_0x98b769(0xd0)],_0x98b769(0x80)];for(const _0x41b9db of _0x80aa32){const _0x2dc739=join(_0x31f439,_0x41b9db);try{return{'buffer':await readFile(_0x2dc739),'source':_0x2dc739};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x8929ac){const _0x332ef4=_0xe47b,_0x1d4f4b={'giJEG':function(_0x20496f,_0xa085a9,_0x555398){return _0x20496f(_0xa085a9,_0x555398);},'wcHdx':function(_0x375871,_0x189186,_0xbb8a08){return _0x375871(_0x189186,_0xbb8a08);}},{cwd:_0xffd2b,cliArtifactDir:_0xc45178,startTime:_0x2ab482}=_0x8929ac,_0x509a9f=[];await _0x1d4f4b[_0x332ef4(0xab)](mkdir,_0xc45178,{'recursive':!![]});const _0x174e9e=await _0x1d4f4b['giJEG'](readdir,_0xffd2b,{'withFileTypes':!![]});for(const _0x44c6b9 of _0x174e9e){if(!_0x44c6b9[_0x332ef4(0xc8)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x332ef4(0x89)](_0x44c6b9['name']))continue;const _0x1085d7=_0x1d4f4b[_0x332ef4(0x7d)](join,_0xffd2b,_0x44c6b9['name']),_0x319f89=await stat(_0x1085d7);if(_0x319f89[_0x332ef4(0xa0)]+0x7d0<_0x2ab482)continue;const _0x5ee281=_0x1d4f4b['giJEG'](buildCliArtifactPath,_0xc45178,_0x44c6b9[_0x332ef4(0xe8)]);if(_0x1085d7===_0x5ee281)continue;await rename(_0x1085d7,_0x5ee281),_0x509a9f['push'](_0x44c6b9[_0x332ef4(0xe8)]);}return _0x509a9f['sort']();}
1
+ (function(_0x22cee6,_0x1d1a2f){const _0xedeea=_0x5112,_0xa77432=_0x22cee6();while(!![]){try{const _0x5ea0e1=parseInt(_0xedeea(0x228))/0x1*(-parseInt(_0xedeea(0x255))/0x2)+-parseInt(_0xedeea(0x26d))/0x3*(parseInt(_0xedeea(0x231))/0x4)+parseInt(_0xedeea(0x221))/0x5+-parseInt(_0xedeea(0x282))/0x6+-parseInt(_0xedeea(0x243))/0x7+parseInt(_0xedeea(0x227))/0x8+parseInt(_0xedeea(0x266))/0x9;if(_0x5ea0e1===_0x1d1a2f)break;else _0xa77432['push'](_0xa77432['shift']());}catch(_0xbefa45){_0xa77432['push'](_0xa77432['shift']());}}}(_0x1531,0x1acca));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(_0x3e77ef,_0x53aaf6=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x392f40=_0x5112;return _0x3e77ef['length']>_0x53aaf6?_0x3e77ef['slice'](0x0,_0x53aaf6)+_0x392f40(0x25f):_0x3e77ef;}function buildCliArtifactPath(_0x2df82a,_0x5df149){return join(_0x2df82a,_0x5df149);}function toStepDisplayName(_0x4739e5){const _0x2aac21=_0x5112,_0x389bed={'kMhAR':function(_0x1bbed8,_0x4a49a0){return _0x1bbed8(_0x4a49a0);}},_0x5b2388=_0x389bed['kMhAR'](basename,_0x4739e5)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x5b2388,'isKeyStep':/^key_/i[_0x2aac21(0x1f5)](basename(_0x4739e5))};}function extractShellValue(_0x55f15f){if(!_0x55f15f)return null;return _0x55f15f[0x1]??_0x55f15f[0x2]??_0x55f15f[0x3]??null;}function extractFilenameOption(_0x4ff49f){const _0xceb13=_0x5112,_0x88c564={'eOBnW':function(_0x550c9e,_0x2238bf){return _0x550c9e(_0x2238bf);}};return _0x88c564[_0xceb13(0x287)](extractShellValue,_0x4ff49f['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function _0x5112(_0x8dac98,_0x57763f){_0x8dac98=_0x8dac98-0x1f3;const _0x153165=_0x1531();let _0x511259=_0x153165[_0x8dac98];return _0x511259;}function extractFirstCommandArgument(_0x4b544e,_0x22c196){const _0x5759d7=_0x5112,_0x27b256={'hpmtU':_0x5759d7(0x270)},_0xaa05fe=_0x22c196[_0x5759d7(0x215)](/[.*+?^${}()|[\]\\]/g,_0x27b256['hpmtU']);return extractShellValue(_0x4b544e[_0x5759d7(0x276)](new RegExp('(?:^|\x5cs)'+_0xaa05fe+_0x5759d7(0x251))));}function formatCommandTarget(_0x1b3331){const _0x41f82b=_0x5112,_0x44e894={'IwmJB':function(_0x249f7c,_0x5bd731,_0x5d7935){return _0x249f7c(_0x5bd731,_0x5d7935);}};if(!_0x1b3331)return'target';if(/^e\d+$/i[_0x41f82b(0x1f5)](_0x1b3331))return _0x41f82b(0x256)+_0x1b3331;return JSON[_0x41f82b(0x1f8)](_0x44e894['IwmJB'](truncatePreview,_0x1b3331,0x78));}function formatPlaywrightCliLog(_0x4fcc8b,_0x1215fa){const _0x4984b3=_0x5112,_0x1b8ab4={'FbGQx':function(_0x10582a,_0x3f426d,_0x4ddf68){return _0x10582a(_0x3f426d,_0x4ddf68);},'IVlfy':'open\x20browser','sScKz':'tracing-start','OpgON':_0x4984b3(0x23f),'AUhTD':_0x4984b3(0x278),'qcZCr':'video-stop','ihaYq':_0x4984b3(0x27a),'xHGEb':'snapshot','woHTE':function(_0xc6a189,_0x3d7d40){return _0xc6a189(_0x3d7d40);},'bSowi':_0x4984b3(0x25b),'ZtFuh':function(_0x13788e,_0xfe8ca9){return _0x13788e(_0xfe8ca9);},'VUSdE':_0x4984b3(0x241),'VPrOl':_0x4984b3(0x1fd),'tBPUa':function(_0x3dba00,_0x213eb1){return _0x3dba00(_0x213eb1);},'OuANI':function(_0x3752c8,_0x58a5ab,_0x1c8d10){return _0x3752c8(_0x58a5ab,_0x1c8d10);},'tlpQq':_0x4984b3(0x211),'JLNXr':_0x4984b3(0x23e),'CfZvH':_0x4984b3(0x280),'GSppm':'open\x20new\x20tab','shcJO':_0x4984b3(0x24c),'ESspL':'select\x20tab'};switch(_0x1215fa){case _0x4984b3(0x269):{const _0x907bbf=_0x1b8ab4['FbGQx'](extractFirstCommandArgument,_0x4fcc8b,_0x1215fa);return _0x907bbf?'open\x20'+_0x907bbf:_0x1b8ab4['IVlfy'];}case _0x1b8ab4[_0x4984b3(0x220)]:return _0x1b8ab4[_0x4984b3(0x26c)];case _0x1b8ab4[_0x4984b3(0x252)]:return'stop\x20tracing';case'video-start':return _0x4984b3(0x25d);case _0x1b8ab4['qcZCr']:return _0x1b8ab4[_0x4984b3(0x213)];case _0x1b8ab4['xHGEb']:{const _0x4769c3=_0x1b8ab4['woHTE'](extractFilenameOption,_0x4fcc8b);if(!_0x4769c3)return'capture\x20snapshot';const {name:_0x332706}=toStepDisplayName(_0x4769c3);return _0x4984b3(0x209)+_0x332706+'`';}case _0x1b8ab4[_0x4984b3(0x257)]:{const _0x365e8f=_0x1b8ab4[_0x4984b3(0x28e)](extractFilenameOption,_0x4fcc8b);if(!_0x365e8f)return _0x4984b3(0x210);const {name:_0x4f05ce,isKeyStep:_0xc28c0a}=toStepDisplayName(_0x365e8f);return _0xc28c0a?'capture\x20key\x20step\x20`'+_0x4f05ce+'`':_0x4984b3(0x27d)+_0x4f05ce+'`';}case _0x1b8ab4[_0x4984b3(0x248)]:return'click\x20'+formatCommandTarget(extractFirstCommandArgument(_0x4fcc8b,_0x1215fa));case _0x1b8ab4[_0x4984b3(0x260)]:return'check\x20'+formatCommandTarget(extractFirstCommandArgument(_0x4fcc8b,_0x1215fa));case _0x4984b3(0x203):return'fill\x20'+_0x1b8ab4['tBPUa'](formatCommandTarget,_0x1b8ab4[_0x4984b3(0x232)](extractFirstCommandArgument,_0x4fcc8b,_0x1215fa));case _0x4984b3(0x244):return _0x4984b3(0x265)+formatCommandTarget(_0x1b8ab4['OuANI'](extractFirstCommandArgument,_0x4fcc8b,_0x1215fa));case _0x1b8ab4[_0x4984b3(0x274)]:return _0x1b8ab4['JLNXr'];case _0x1b8ab4['CfZvH']:{const _0x3fe4b9=_0x1b8ab4['OuANI'](extractFirstCommandArgument,_0x4fcc8b,_0x1215fa);return _0x3fe4b9?_0x4984b3(0x225)+_0x3fe4b9:_0x1b8ab4[_0x4984b3(0x273)];}case _0x1b8ab4[_0x4984b3(0x1fa)]:{const _0x2789ba=_0x1b8ab4[_0x4984b3(0x232)](extractFirstCommandArgument,_0x4fcc8b,_0x1215fa);return _0x2789ba?'select\x20tab\x20'+_0x2789ba:_0x1b8ab4['ESspL'];}default:return _0x1215fa;}}function extractPlaywrightCliToolDescription(_0x526e87){const _0x372aeb=_0x5112,_0x16252e={'Vpyrp':function(_0x138bbe,_0x219805){return _0x138bbe!==_0x219805;},'mEVtk':_0x372aeb(0x284)},_0x22c6b3=_0x526e87[_0x372aeb(0x235)];if(_0x16252e[_0x372aeb(0x22a)](typeof _0x22c6b3,_0x16252e['mEVtk']))return null;const _0x57a22b=_0x22c6b3['trim']()[_0x372aeb(0x215)](/\s+/g,'\x20');return _0x57a22b['length']>0x0?_0x57a22b:null;}export function formatPlaywrightCliConsoleLogMessage(_0x58f73a,_0x3500b8,_0xe60910){const _0x374d91=_0x5112,_0x265e5c={'ONlXw':function(_0x3a9ce9,_0x15995c){return _0x3a9ce9(_0x15995c);}},_0x321793=formatPlaywrightCliLog(_0x3500b8,_0xe60910),_0x55de5e=_0x265e5c['ONlXw'](extractPlaywrightCliToolDescription,_0x58f73a);if(!_0x55de5e)return _0x374d91(0x277)+_0x321793;if(process[_0x374d91(0x20d)]['DEBUG'])return _0x374d91(0x246)+_0x55de5e+'\x20('+_0x321793+')';return'[ranger-verification-agent]\x20'+_0x55de5e;}export function buildVerifyFeatureCliDebugPrompt(_0x47e52c,_0xd5685d){const _0x3c34c9=_0x5112,_0x1bf57c={'dVbtz':function(_0x32eb68,_0x34df01,_0x5ce5a1){return _0x32eb68(_0x34df01,_0x5ce5a1);},'IDEDZ':_0x3c34c9(0x1f9),'WiBea':_0x3c34c9(0x217),'nKbQD':function(_0x43c8d3,_0x18ca55,_0x5bb858){return _0x43c8d3(_0x18ca55,_0x5bb858);},'OpAxy':_0x3c34c9(0x258),'kzkPv':function(_0x5e1f69,_0x2379f4){return _0x5e1f69(_0x2379f4);}},_0x4d51f6=_0x1bf57c['dVbtz'](buildCliArtifactPath,_0xd5685d,_0x1bf57c[_0x3c34c9(0x21a)]),_0x10ffb9=buildCliArtifactPath(_0xd5685d,_0x1bf57c['WiBea']),_0x4b62dd=_0x1bf57c[_0x3c34c9(0x216)](buildCliArtifactPath,_0xd5685d,_0x3c34c9(0x226)),_0x3f50c6=_0x1bf57c[_0x3c34c9(0x21e)](buildCliArtifactPath,_0xd5685d,_0x1bf57c['OpAxy']),_0x5105bc=_0x1bf57c[_0x3c34c9(0x1fb)](quoteShellArg,_0x4d51f6),_0x5f2bf8=quoteShellArg(_0x10ffb9),_0x2ad198=quoteShellArg(_0x4b62dd),_0x268d28=quoteShellArg(_0x3f50c6);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x47e52c+_0x3c34c9(0x259)+_0x47e52c+_0x3c34c9(0x26a)+_0x47e52c+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x47e52c+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0xd5685d+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x47e52c+'\x20snapshot\x20--filename\x20'+_0x5105bc+_0x3c34c9(0x230)+_0x47e52c+_0x3c34c9(0x283)+_0x5f2bf8+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x47e52c+'\x20snapshot\x20--filename\x20'+_0x2ad198+'`\x0a9.\x20Run\x20`'+_0x47e52c+_0x3c34c9(0x283)+_0x268d28+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x82298b){const _0x21e7dd=_0x5112,_0x52f8f3={'WadOe':_0x21e7dd(0x229),'aGsne':function(_0x3f7e22,_0x371c89,_0x4a1884){return _0x3f7e22(_0x371c89,_0x4a1884);},'eKOvN':_0x21e7dd(0x1fc),'EEzZN':'02_state.yml','GToMw':function(_0x5bdb7c,_0x56eaf9,_0x2f8068){return _0x5bdb7c(_0x56eaf9,_0x2f8068);},'XXnLf':'key_03_success-state.png','hCxfF':function(_0x13dd8b,_0x480ea4){return _0x13dd8b(_0x480ea4);},'WWOEX':_0x21e7dd(0x238),'WBJxi':_0x21e7dd(0x279)},{checklistItem:_0x2bbcf2,itemFeedback:_0x280a47,taskDescription:_0x2f4219,cliCommandPrefix:_0x241ba9,cliArtifactDir:_0x41d598,isCdpMode:_0xe29a9c,url:_0x44a92d,cdpEndpoint:_0x34d355,loginInstructions:_0x254ed8}=_0x82298b,_0x2b57dd=_0x52f8f3['aGsne'](buildCliArtifactPath,_0x41d598,_0x52f8f3['eKOvN']),_0x58f7bb=buildCliArtifactPath(_0x41d598,_0x52f8f3[_0x21e7dd(0x272)]),_0x1cec32=_0x52f8f3['GToMw'](buildCliArtifactPath,_0x41d598,_0x52f8f3[_0x21e7dd(0x245)]),_0x266641=buildCliArtifactPath(_0x41d598,'01_initial-state.png'),_0x22b53d=_0x52f8f3['hCxfF'](quoteShellArg,_0x2b57dd),_0x5122bf=_0x52f8f3[_0x21e7dd(0x249)](quoteShellArg,_0x58f7bb),_0x1b53e2=_0x52f8f3[_0x21e7dd(0x249)](quoteShellArg,_0x1cec32),_0x48a220=_0x52f8f3[_0x21e7dd(0x249)](quoteShellArg,_0x266641),_0x31cfbf=_0x2bbcf2['notes']?_0x21e7dd(0x28c)+_0x2bbcf2[_0x21e7dd(0x214)]:'';let _0x44d7f0='';if(_0x280a47&&_0x280a47[_0x21e7dd(0x261)][_0x21e7dd(0x21d)]>0x0){const _0x2f4a6d=_0x280a47['unaddressedComments'][_0x21e7dd(0x20a)](_0x3ef32c=>{const _0x49dead=_0x21e7dd,_0x48d5cf=new Date(_0x3ef32c[_0x49dead(0x1f7)])['toLocaleDateString'](_0x49dead(0x22c),{'month':'short','day':_0x49dead(0x27f)}),_0x226cb2=_0x3ef32c['authorName']||_0x3ef32c[_0x49dead(0x202)]||'Reviewer',_0x1ec3ac=_0x3ef32c[_0x49dead(0x247)]?_0x49dead(0x205)+(_0x3ef32c[_0x49dead(0x247)][_0x49dead(0x223)][_0x49dead(0x224)](_0x52f8f3['WadOe'])['pop']()?.[_0x49dead(0x224)](':')[0x0]||_0x49dead(0x24e))+_0x49dead(0x26e)+(_0x3ef32c['domRef'][_0x49dead(0x1ff)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0x49dead(0x28d)+_0x3ef32c['id']+']\x20**'+_0x226cb2+_0x49dead(0x218)+_0x48d5cf+_0x49dead(0x239)+_0x3ef32c['content']+'\x22'+_0x1ec3ac;})['join']('\x0a');_0x44d7f0=_0x21e7dd(0x23d)+_0x2f4a6d;}const _0x2f08cb=_0x280a47?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x280a47[_0x21e7dd(0x268)]:'',_0x43cc10=_0xe29a9c?_0x21e7dd(0x204)+_0x34d355+_0x21e7dd(0x262):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x44a92d+'\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',_0x226b09=_0x44a92d?quoteShellArg(_0x44a92d):'',_0x2c16ea=_0xe29a9c?_0x21e7dd(0x25c)+_0x241ba9+'\x20open`,\x20then\x20`'+_0x241ba9+'\x20tracing-start`,\x20then\x20`'+_0x241ba9+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x41d598+_0x21e7dd(0x263)+_0x241ba9+_0x21e7dd(0x208)+_0x22b53d+'`\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`'+_0x241ba9+_0x21e7dd(0x283)+_0x48a220+_0x21e7dd(0x236)+_0x241ba9+_0x21e7dd(0x240):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x241ba9+_0x21e7dd(0x28f)+_0x226b09+'`,\x20then\x20`'+_0x241ba9+'\x20tracing-start`,\x20then\x20`'+_0x241ba9+_0x21e7dd(0x212)+_0x41d598+_0x21e7dd(0x263)+_0x241ba9+'\x20snapshot\x20--filename\x20'+_0x22b53d+'`\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`'+_0x241ba9+_0x21e7dd(0x283)+_0x48a220+_0x21e7dd(0x1f3)+_0x241ba9+_0x21e7dd(0x281),_0x11ac47=_0xe29a9c?_0x21e7dd(0x25a):_0x21e7dd(0x22d),_0x39eb30=_0x254ed8?_0x21e7dd(0x1fe)+_0x254ed8+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return _0x21e7dd(0x27e)+_0x2bbcf2[_0x21e7dd(0x235)]+_0x31cfbf+_0x44d7f0+_0x2f08cb+_0x21e7dd(0x20f)+_0x2f4219+'\x0a\x0a'+_0x43cc10+_0x39eb30+'\x0a\x0a'+_0x2c16ea+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x241ba9+_0x21e7dd(0x206)+_0x41d598+_0x21e7dd(0x253)+_0x5122bf+_0x21e7dd(0x24f)+_0x1b53e2+_0x21e7dd(0x22f)+_0x41d598+_0x21e7dd(0x21f)+_0x266641+'\x22,\x20\x22'+buildCliArtifactPath(_0x41d598,_0x21e7dd(0x237))+_0x21e7dd(0x21c)+buildCliArtifactPath(_0x41d598,_0x52f8f3[_0x21e7dd(0x219)])+'\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(_0x41d598,_0x52f8f3['WBJxi'])+'\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'+_0x11ac47+'\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(_0x3a0ad4){const _0x404043=_0x5112,_0x2fc3df={'XswUY':function(_0x2fc2d0,_0x4275db){return _0x2fc2d0===_0x4275db;}},_0x59ea4b=[..._0x3a0ad4[_0x404043(0x22b)]()]['sort']();let _0x3907ea=0x0;for(const _0x4164d7 of _0x3a0ad4[_0x404043(0x285)]()){_0x3907ea+=_0x4164d7;}return{'cliCommandCount':_0x3907ea,'cliCommandsSeen':_0x59ea4b,'noCliCommandsCalled':_0x2fc3df[_0x404043(0x26f)](_0x3907ea,0x0)};}function _0x1531(){const _0x5ce5ef=['hook_event_name','PuRcA','playwright-cli','\x0a\x0a##\x20Additional\x20Notes\x0a','-\x20[','ZtFuh','\x20open\x20','nvsox','subcommand','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','video-stop','test','WdIpD','createdAt','stringify','00_mozilla-homepage.yml','shcJO','kzkPv','01_initial.yml','check','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','textContent','get','PostToolUseFailure','authorEmail','fill','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','\x20(on\x20element:\x20<','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','cwd','\x20snapshot\x20--filename\x20','capture\x20snapshot\x20`','map','VmGRc','session-recording.webm','env','playwright_cli_close','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','capture\x20screenshot','run-code','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','ihaYq','notes','replace','dVbtz','01_mozilla-homepage.png','**\x20(','WWOEX','IDEDZ','dgYEQ','\x22,\x20\x22','length','nKbQD','`:\x20\x22','sScKz','192755amVxHP','trackPhaseStart','selector','split','open\x20new\x20tab\x20','02_learn-more.yml','1435672GSuPxu','92oCppaG','\x20>\x20','Vpyrp','keys','en-US','\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.','rUGLA','`\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`','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','24sGlBtL','OuANI','name','xdFyU','description','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','02_button-clicked.png','03_result-visible.png','):\x20\x22','uCjVM','sort','NQvtQ','\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','run\x20custom\x20Playwright\x20code','start\x20tracing','\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','click','close','1323777WpZWrx','press','XXnLf','[ranger-verification-agent]\x20','domRef','VUSdE','hCxfF','Bash','playwright_cli_video_stop','tab-select','log','element','`\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','trackPhaseEnd','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','AUhTD','`\x0a-\x20`snapshot\x20--filename\x20','zbdbf','3022rFLUwY','ref\x20','bSowi','03_learn-more.png','\x0a\x0a1.\x20Run\x20`','\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.','screenshot','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','start\x20video\x20recording','push','...','VPrOl','unaddressedComments','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','mtimeMs','press\x20','3788829lZHERt','tAupp','canonicalFlow','open','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','error','OpgON','12945pDEhHQ','>\x20\x22','XswUY','\x5c$&','tool_failure','EEzZN','GSppm','tlpQq','trackPhaseError','match','[playwright-cli]\x20','tracing-stop','key_04_success-state.png','stop\x20video\x20recording','hBlqr','VhETK','capture\x20step\x20`','You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a','numeric','tab-new','\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','1051248YHpvXH','\x20screenshot\x20--filename\x20','string','values','snapshot','eOBnW','wycRv'];_0x1531=function(){return _0x5ce5ef;};return _0x1531();}export function createVerifyFeatureCliHooks(_0x5cf157){const _0x9b8dce=_0x5112,_0x5213c5={'xdFyU':function(_0x14e8ae,_0x44fac6){return _0x14e8ae!==_0x44fac6;},'dgYEQ':_0x9b8dce(0x24a),'UrGpu':function(_0x65786c,_0x2f119d){return _0x65786c+_0x2f119d;},'TLkLK':'playwright-cli','nvsox':function(_0x5e5630,_0x5017a4){return _0x5e5630(_0x5017a4);},'VmGRc':_0x9b8dce(0x286),'rUGLA':_0x9b8dce(0x201),'UgpFf':function(_0x2d02a3,_0x1b0a0e){return _0x2d02a3!==_0x1b0a0e;}},_0x4e0a53=new Map(),_0x21eef2=async _0x59b396=>{const _0x4c1502=_0x9b8dce;if(_0x5213c5[_0x4c1502(0x234)](_0x59b396['hook_event_name'],'PostToolUse'))return{};const _0x403b04=_0x59b396;if(_0x5213c5[_0x4c1502(0x234)](_0x403b04['tool_name'],_0x5213c5['dgYEQ']))return{};const _0xd38c3b=_0x403b04['tool_input'],_0x2c4cd0=extractBashCommand(_0xd38c3b);if(!_0x2c4cd0)return{};const _0x215252=parsePlaywrightCliCommand(_0x2c4cd0);if(!_0x215252)return{};return _0x4e0a53['set'](_0x215252,_0x5213c5['UrGpu'](_0x4e0a53[_0x4c1502(0x200)](_0x215252)||0x0,0x1)),_0x5cf157[_0x4c1502(0x222)]('tool_call',{'transport':_0x5213c5['TLkLK'],'toolName':_0x215252}),_0x5cf157['trackPhaseEnd']('tool_call',{'transport':_0x5213c5['TLkLK'],'toolName':_0x215252,'bashCommandPreview':_0x5213c5[_0x4c1502(0x290)](truncatePreview,_0x2c4cd0)}),_0x5213c5['xdFyU'](_0x215252,_0x5213c5[_0x4c1502(0x20b)])&&console[_0x4c1502(0x24d)](formatPlaywrightCliConsoleLogMessage(_0xd38c3b,_0x2c4cd0,_0x215252)),{};},_0x4c0b7d=async _0x11eeca=>{const _0x364896=_0x9b8dce;if(_0x11eeca[_0x364896(0x289)]!==_0x5213c5[_0x364896(0x22e)])return{};const _0x5e2ff6=_0x11eeca;if(_0x5213c5['UgpFf'](_0x5e2ff6['tool_name'],_0x364896(0x24a)))return{};return await _0x5cf157[_0x364896(0x275)](_0x364896(0x271),_0x5e2ff6[_0x364896(0x26b)],{'transport':_0x364896(0x28b),'toolName':_0x5213c5[_0x364896(0x21b)]}),{};};return{'postToolUseHook':_0x21eef2,'postToolUseFailureHook':_0x4c0b7d,'commandCounts':_0x4e0a53};}async function runPlaywrightCliLifecycleCommand(_0x19b198){const _0x3f1ebc=_0x5112,_0xef973c={'SqFJZ':function(_0x2021e6,_0x8902ec){return _0x2021e6(_0x8902ec);},'wycRv':function(_0x1e4700,_0x5d4a40,_0x297668){return _0x1e4700(_0x5d4a40,_0x297668);}},{sessionId:_0x3c08cd,configPath:_0x3c8e75,commandArgs:_0x706cf8,env:_0x357b03,telemetry:_0x23f824,phase:_0x5a37b7,metadata:_0x2e4c90,timeoutMs:_0x466211}=_0x19b198;_0x23f824['trackPhaseStart'](_0x5a37b7,_0x2e4c90);try{const _0x1abeec=await _0xef973c['SqFJZ'](runPlaywrightCliCommand,{'sessionId':_0x3c08cd,'configPath':_0x3c8e75,'commandArgs':_0x706cf8,'cwd':process[_0x3f1ebc(0x207)](),'env':_0x357b03,'timeoutMs':_0x466211??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x23f824[_0x3f1ebc(0x250)](_0x5a37b7,{..._0x2e4c90,'subcommand':_0x1abeec['invocation'][_0x3f1ebc(0x291)],'stdoutPreview':truncatePreview(_0x1abeec['stdout'],0x7d0),'stderrPreview':_0xef973c[_0x3f1ebc(0x288)](truncatePreview,_0x1abeec['stderr'],0x7d0)});}catch(_0x526981){await _0x23f824['trackPhaseError'](_0x5a37b7,_0x526981,_0x2e4c90);throw _0x526981;}}export async function finalizeVerifyFeatureCliSession(_0xfd9491){const _0x258b9a=_0x5112,_0x54f091={'SofDt':'playwright_cli_tracing_stop','PuRcA':_0x258b9a(0x24b),'hBlqr':function(_0x595763,_0x8e9a55,_0x3be047){return _0x595763(_0x8e9a55,_0x3be047);},'NQvtQ':_0x258b9a(0x20c),'VhETK':_0x258b9a(0x20e),'WdIpD':_0x258b9a(0x242),'tAupp':function(_0x13476b,_0x19df26){return _0x13476b(_0x19df26);}},{telemetry:_0x8ca0f6,sessionId:_0x1fbe14,configPath:_0xb95266,cliArtifactDir:_0xf395f3,env:_0x3e05a3,transportMetadata:_0x538d9a}=_0xfd9491,_0x4641b7=[{'phase':_0x54f091['SofDt'],'commandArgs':[_0x258b9a(0x278)]},{'phase':_0x54f091[_0x258b9a(0x28a)],'commandArgs':[_0x258b9a(0x1f4),'--filename='+_0x54f091[_0x258b9a(0x27b)](buildCliArtifactPath,_0xf395f3,_0x54f091[_0x258b9a(0x23c)])]},{'phase':_0x54f091[_0x258b9a(0x27c)],'commandArgs':[_0x54f091[_0x258b9a(0x1f6)]]}];for(const _0x3d05cd of _0x4641b7){try{await _0x54f091[_0x258b9a(0x267)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x1fbe14,'configPath':_0xb95266,'commandArgs':[..._0x3d05cd['commandArgs']],'env':_0x3e05a3,'telemetry':_0x8ca0f6,'phase':_0x3d05cd['phase'],'metadata':_0x538d9a});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x312e6a){const _0x2030d1={'cIrcL':'trace.zip'},_0x2c6c22=[_0x2030d1['cIrcL'],'trace.trace.zip'];for(const _0x21de06 of _0x2c6c22){const _0x9ec747=join(_0x312e6a,_0x21de06);try{return{'buffer':await readFile(_0x9ec747),'source':_0x9ec747};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x133d70){const _0x3fbffd=_0x5112,_0x2fde23={'zbdbf':function(_0x2d75bc,_0xde1805,_0x30fefe){return _0x2d75bc(_0xde1805,_0x30fefe);},'keRHv':function(_0x4800f9,_0x45ff89){return _0x4800f9(_0x45ff89);},'oGBvQ':function(_0x414651,_0x4cf028){return _0x414651+_0x4cf028;},'uCjVM':function(_0x15eb33,_0x196835,_0xaaa506){return _0x15eb33(_0x196835,_0xaaa506);}},{cwd:_0x2fc3d4,cliArtifactDir:_0x15e40f,startTime:_0x419705}=_0x133d70,_0x111140=[];await _0x2fde23[_0x3fbffd(0x254)](mkdir,_0x15e40f,{'recursive':!![]});const _0x2c6a7c=await readdir(_0x2fc3d4,{'withFileTypes':!![]});for(const _0x3b647b of _0x2c6a7c){if(!_0x3b647b['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x3b647b['name']))continue;const _0x242b97=_0x2fde23[_0x3fbffd(0x254)](join,_0x2fc3d4,_0x3b647b[_0x3fbffd(0x233)]),_0x38e019=await _0x2fde23['keRHv'](stat,_0x242b97);if(_0x2fde23['oGBvQ'](_0x38e019[_0x3fbffd(0x264)],0x7d0)<_0x419705)continue;const _0x272245=buildCliArtifactPath(_0x15e40f,_0x3b647b[_0x3fbffd(0x233)]);if(_0x242b97===_0x272245)continue;await _0x2fde23[_0x3fbffd(0x23a)](rename,_0x242b97,_0x272245),_0x111140[_0x3fbffd(0x25e)](_0x3b647b[_0x3fbffd(0x233)]);}return _0x111140[_0x3fbffd(0x23b)]();}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ranger-testing/ranger-cli",
3
- "version": "2.5.4-alpha.1d983c3-19",
3
+ "version": "2.5.4-alpha.2709b75-22",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "ranger": "./build/cli.js",