@ranger-testing/ranger-cli 2.4.6 → 2.4.7

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 (78) 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/setup/claude.js +1 -1
  25. package/build/commands/setup/opencode.js +1 -1
  26. package/build/commands/setupCi.js +1 -1
  27. package/build/commands/skillup.js +1 -1
  28. package/build/commands/start.js +1 -1
  29. package/build/commands/status.js +1 -1
  30. package/build/commands/update.js +1 -1
  31. package/build/commands/updateEnv.js +1 -1
  32. package/build/commands/useEnv.js +1 -1
  33. package/build/commands/utils/activeProfile.js +1 -1
  34. package/build/commands/utils/agentEnv.js +1 -1
  35. package/build/commands/utils/browserSessionsApi.js +1 -1
  36. package/build/commands/utils/claudeConfig.js +1 -1
  37. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  38. package/build/commands/utils/claudePlugin.js +1 -1
  39. package/build/commands/utils/crypto.js +1 -1
  40. package/build/commands/utils/desirePathLog.js +1 -1
  41. package/build/commands/utils/deviceAuth.js +1 -1
  42. package/build/commands/utils/environment.js +1 -1
  43. package/build/commands/utils/featureApi.js +1 -1
  44. package/build/commands/utils/featureReportGenerator.js +1 -1
  45. package/build/commands/utils/fixWebmDuration.js +1 -1
  46. package/build/commands/utils/git.js +1 -1
  47. package/build/commands/utils/keychain.js +1 -1
  48. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  49. package/build/commands/utils/mcpImageBase64.js +1 -1
  50. package/build/commands/utils/model.js +1 -1
  51. package/build/commands/utils/opencodeConfig.js +1 -1
  52. package/build/commands/utils/playwrightCli.js +1 -1
  53. package/build/commands/utils/profileMessages.js +1 -1
  54. package/build/commands/utils/profileSetupBanner.js +1 -1
  55. package/build/commands/utils/rangerConfig.js +1 -1
  56. package/build/commands/utils/rangerRoot.js +1 -1
  57. package/build/commands/utils/reportGenerator.js +1 -1
  58. package/build/commands/utils/retry.js +1 -1
  59. package/build/commands/utils/sessionCache.js +1 -1
  60. package/build/commands/utils/settings.js +1 -1
  61. package/build/commands/utils/skillContent.js +1 -1
  62. package/build/commands/utils/skills.js +1 -1
  63. package/build/commands/utils/stitchWebmFiles.js +1 -1
  64. package/build/commands/utils/telemetry.js +1 -1
  65. package/build/commands/utils/tokenRefresh.js +1 -1
  66. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  67. package/build/commands/utils/userApi.js +1 -1
  68. package/build/commands/utils/version.js +1 -1
  69. package/build/commands/verifyFeature.js +1 -1
  70. package/build/commands/verifyFeatureCli.js +1 -1
  71. package/build/commands/verifyInBrowser.js +1 -1
  72. package/build/skills/ranger/SKILL.md +38 -41
  73. package/build/skills/ranger/create.md +5 -13
  74. package/build/skills/ranger/feedback.md +3 -3
  75. package/build/skills/ranger/start.md +13 -13
  76. package/build/skills/ranger/verify.md +15 -28
  77. package/package.json +5 -3
  78. package/scripts/postinstall.js +4 -1
@@ -1 +1 @@
1
- (function(_0x1be9db,_0x1813e4){const _0x55140b=_0x5bbb,_0x1fc355=_0x1be9db();while(!![]){try{const _0x3c9243=-parseInt(_0x55140b(0x1fc))/0x1*(-parseInt(_0x55140b(0x1e2))/0x2)+parseInt(_0x55140b(0x229))/0x3+-parseInt(_0x55140b(0x222))/0x4+parseInt(_0x55140b(0x20f))/0x5*(-parseInt(_0x55140b(0x1ae))/0x6)+-parseInt(_0x55140b(0x211))/0x7+parseInt(_0x55140b(0x21b))/0x8+-parseInt(_0x55140b(0x1f6))/0x9;if(_0x3c9243===_0x1813e4)break;else _0x1fc355['push'](_0x1fc355['shift']());}catch(_0x65d2b9){_0x1fc355['push'](_0x1fc355['shift']());}}}(_0x4633,0x8e296));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(_0x46f2f7,_0x6e1df8=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x56839b=_0x5bbb,_0x117cb0={'CoNIg':function(_0x4821a4,_0x1ad484){return _0x4821a4>_0x1ad484;},'FRUFi':'...'};return _0x117cb0[_0x56839b(0x1f9)](_0x46f2f7['length'],_0x6e1df8)?_0x46f2f7['slice'](0x0,_0x6e1df8)+_0x117cb0['FRUFi']:_0x46f2f7;}function buildCliArtifactPath(_0x190b7f,_0x4e6154){return join(_0x190b7f,_0x4e6154);}function _0x4633(){const _0x31f313=['QFxNd','185MzpyEe','LVzZR','2441852XZaNPm','stderr','close','click\x20','`,\x20then\x20`','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','playwright-cli','playwright_cli_tracing_stop','QbXEZ','03_result-visible.png','3765040wpEqdI','00_mozilla-homepage.yml','fRfIR','trackPhaseError','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','rKawl','01_initial.yml','3075048aqSfjA','wslVR','\x22,\x20\x22','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','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\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.','textContent','880047lZCuGB','\x20open`,\x20then\x20`','error','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','\x20(on\x20element:\x20<','YNqlQ','capture\x20step\x20`','`\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`','Reviewer','--filename=','eGEmO','canonicalFlow','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','xqEtA','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','YzvUs','YYEwh','check','02_learn-more.yml','dDRYx','description','`\x0a9.\x20Run\x20`','10950xtabCh','sort','SGYtF','session-recording.webm','02_button-clicked.png','iklkr','short','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','values','trace.trace.zip','xLdhg','JYRyi','open\x20browser','hEoRu','ZkebX','press','bhCGi','NbOkt','yuRTq','content','\x20screenshot\x20--filename\x20','screenshot','fill','zwRJB','replace','tool_input','\x0a\x0a1.\x20Run\x20`','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','\x20snapshot\x20--filename\x20','[ranger-verification-agent]\x20','key_04_success-state.png','match','\x0a\x0a##\x20Additional\x20Notes\x0a','ZYTri','`\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','(?:^|\x5cs)','playwright_cli_video_stop','keys','[playwright-cli]\x20','tool_name','\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.','\x20open\x20','\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.','TGfWy','\x20>\x20','video-start','log','\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','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','en-US','name','2RMnqjN','-\x20[','qWDCN','select\x20tab\x20','\x20tracing-start`\x0a3.\x20Run\x20`','snapshot','set','mUyHI','test','guMjj','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','check\x20','sbNLl','phase','rSesq','`\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`','):\x20\x22','trim','start\x20video\x20recording','tool_failure','915399DxjRmV','UriXR','join','CoNIg','get','playwright_cli_close','1105149YadBkb','LspoN','tracing-stop','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','run\x20custom\x20Playwright\x20code','domRef','video-stop','stringify','prWpC','push','unaddressedComments','XPIQR','trackPhaseStart','EYfdq','xAzEW','toLocaleDateString','Dnyvs','slice'];_0x4633=function(){return _0x31f313;};return _0x4633();}function toStepDisplayName(_0x454b99){const _0x532e03=_0x5bbb,_0x29248b={'jvwTu':function(_0x4de3cb,_0x14ef25){return _0x4de3cb(_0x14ef25);},'QFxNd':function(_0x3baa50,_0x330e6a){return _0x3baa50(_0x330e6a);}},_0x53763c=_0x29248b['jvwTu'](basename,_0x454b99)[_0x532e03(0x1c6)](/\.(?:png|ya?ml)$/i,'')[_0x532e03(0x1c6)](/^key_/i,'')[_0x532e03(0x1c6)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x53763c,'isKeyStep':/^key_/i[_0x532e03(0x1ea)](_0x29248b[_0x532e03(0x20e)](basename,_0x454b99))};}function extractShellValue(_0x5c446c){if(!_0x5c446c)return null;return _0x5c446c[0x1]??_0x5c446c[0x2]??_0x5c446c[0x3]??null;}function extractFilenameOption(_0x57001a){const _0x1c9cae=_0x5bbb,_0x57faf2={'akJqr':function(_0x17e970,_0x3e307c){return _0x17e970(_0x3e307c);}};return _0x57faf2['akJqr'](extractShellValue,_0x57001a[_0x1c9cae(0x1ce)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x1c524d,_0x525e8a){const _0x153761=_0x5bbb,_0x266ce0={'dDRYx':'\x5c$&'},_0x8736a3=_0x525e8a['replace'](/[.*+?^${}()|[\]\\]/g,_0x266ce0[_0x153761(0x1ab)]);return extractShellValue(_0x1c524d[_0x153761(0x1ce)](new RegExp(_0x153761(0x1d2)+_0x8736a3+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x567088){const _0x21c0ac=_0x5bbb,_0x421927={'sbNLl':function(_0x29a3c0,_0x3a8523,_0x48a288){return _0x29a3c0(_0x3a8523,_0x48a288);}};if(!_0x567088)return'target';if(/^e\d+$/i['test'](_0x567088))return'ref\x20'+_0x567088;return JSON[_0x21c0ac(0x203)](_0x421927[_0x21c0ac(0x1ee)](truncatePreview,_0x567088,0x78));}function formatPlaywrightCliLog(_0x247790,_0x2815b7){const _0xda212f=_0x5bbb,_0x47079b={'NVuPq':'start\x20tracing','Vislx':'tracing-stop','ZYTri':_0xda212f(0x1dc),'YYEwh':_0xda212f(0x1f4),'xHTZO':_0xda212f(0x202),'zwRJB':'stop\x20video\x20recording','SGYtF':_0xda212f(0x1e7),'FIOhF':'capture\x20snapshot','guMjj':'capture\x20screenshot','WlpMF':function(_0x80b3b2,_0x3b067d){return _0x80b3b2(_0x3b067d);},'mUyHI':function(_0x2a7439,_0x45ddd1,_0x1e9e57){return _0x2a7439(_0x45ddd1,_0x1e9e57);},'bhCGi':_0xda212f(0x1a9),'GpNTM':function(_0x2b4b55,_0x4ece6d,_0x4e21ac){return _0x2b4b55(_0x4ece6d,_0x4e21ac);},'hEoRu':_0xda212f(0x1c4),'ZgmKA':_0xda212f(0x1bd),'OaiRH':function(_0x1038f3,_0x340def){return _0x1038f3(_0x340def);},'fRfIR':function(_0x5a85fa,_0x1ccd60,_0x47b159){return _0x5a85fa(_0x1ccd60,_0x47b159);},'LVzZR':'run-code','XPIQR':'open\x20new\x20tab'};switch(_0x2815b7){case'open':{const _0x3ec211=extractFirstCommandArgument(_0x247790,_0x2815b7);return _0x3ec211?'open\x20'+_0x3ec211:_0xda212f(0x1ba);}case'tracing-start':return _0x47079b['NVuPq'];case _0x47079b['Vislx']:return'stop\x20tracing';case _0x47079b[_0xda212f(0x1d0)]:return _0x47079b[_0xda212f(0x1a8)];case _0x47079b['xHTZO']:return _0x47079b[_0xda212f(0x1c5)];case _0x47079b[_0xda212f(0x1b0)]:{const _0x54c08e=extractFilenameOption(_0x247790);if(!_0x54c08e)return _0x47079b['FIOhF'];const {name:_0x5ccf01}=toStepDisplayName(_0x54c08e);return'capture\x20snapshot\x20`'+_0x5ccf01+'`';}case _0xda212f(0x1c3):{const _0x5b3d6a=extractFilenameOption(_0x247790);if(!_0x5b3d6a)return _0x47079b[_0xda212f(0x1eb)];const {name:_0x4e9a74,isKeyStep:_0x376f8d}=_0x47079b['WlpMF'](toStepDisplayName,_0x5b3d6a);return _0x376f8d?'capture\x20key\x20step\x20`'+_0x4e9a74+'`':_0xda212f(0x230)+_0x4e9a74+'`';}case'click':return _0xda212f(0x214)+formatCommandTarget(_0x47079b[_0xda212f(0x1e9)](extractFirstCommandArgument,_0x247790,_0x2815b7));case _0x47079b[_0xda212f(0x1be)]:return _0xda212f(0x1ed)+formatCommandTarget(_0x47079b['GpNTM'](extractFirstCommandArgument,_0x247790,_0x2815b7));case _0x47079b[_0xda212f(0x1bb)]:return'fill\x20'+formatCommandTarget(extractFirstCommandArgument(_0x247790,_0x2815b7));case _0x47079b['ZgmKA']:return'press\x20'+_0x47079b['OaiRH'](formatCommandTarget,_0x47079b[_0xda212f(0x21d)](extractFirstCommandArgument,_0x247790,_0x2815b7));case _0x47079b[_0xda212f(0x210)]:return _0xda212f(0x200);case'tab-new':{const _0x255699=extractFirstCommandArgument(_0x247790,_0x2815b7);return _0x255699?'open\x20new\x20tab\x20'+_0x255699:_0x47079b[_0xda212f(0x207)];}case'tab-select':{const _0xc95de2=extractFirstCommandArgument(_0x247790,_0x2815b7);return _0xc95de2?_0xda212f(0x1e5)+_0xc95de2:'select\x20tab';}default:return _0x2815b7;}}function extractPlaywrightCliToolDescription(_0x12fcfa){const _0x2ab179=_0x5bbb,_0xf32791={'MMdML':function(_0xa8e898,_0x5e00fa){return _0xa8e898!==_0x5e00fa;},'mGeKF':'string','qWDCN':function(_0x53f537,_0x5233a7){return _0x53f537>_0x5233a7;}},_0x5b935a=_0x12fcfa[_0x2ab179(0x1ac)];if(_0xf32791['MMdML'](typeof _0x5b935a,_0xf32791['mGeKF']))return null;const _0x30c71b=_0x5b935a[_0x2ab179(0x1f3)]()[_0x2ab179(0x1c6)](/\s+/g,'\x20');return _0xf32791[_0x2ab179(0x1e4)](_0x30c71b['length'],0x0)?_0x30c71b:null;}export function formatPlaywrightCliConsoleLogMessage(_0x364b89,_0x2432e5,_0x29edd7){const _0x23bb73=_0x5bbb,_0x3085f8={'TNtTd':function(_0xfcdd2a,_0x5907e8,_0x4e82fb){return _0xfcdd2a(_0x5907e8,_0x4e82fb);}},_0x2beb03=_0x3085f8['TNtTd'](formatPlaywrightCliLog,_0x2432e5,_0x29edd7),_0x40ab84=extractPlaywrightCliToolDescription(_0x364b89);if(!_0x40ab84)return _0x23bb73(0x1d5)+_0x2beb03;if(process['env']['DEBUG'])return _0x23bb73(0x1cc)+_0x40ab84+'\x20('+_0x2beb03+')';return _0x23bb73(0x1cc)+_0x40ab84;}export function buildVerifyFeatureCliDebugPrompt(_0x11b45d,_0x37a43c){const _0x369d2a=_0x5bbb,_0x24bdb7={'JYRyi':function(_0x20f3b1,_0x543740,_0x2cebcf){return _0x20f3b1(_0x543740,_0x2cebcf);},'trksa':_0x369d2a(0x21c),'prWpC':'01_mozilla-homepage.png','oGYIe':function(_0x30fbba,_0x27260c,_0x58d8f9){return _0x30fbba(_0x27260c,_0x58d8f9);},'UtSJJ':'03_learn-more.png','YNqlQ':function(_0x1b598f,_0x1a6480){return _0x1b598f(_0x1a6480);}},_0x44c83c=_0x24bdb7[_0x369d2a(0x1b9)](buildCliArtifactPath,_0x37a43c,_0x24bdb7['trksa']),_0x101a2d=_0x24bdb7['JYRyi'](buildCliArtifactPath,_0x37a43c,_0x24bdb7[_0x369d2a(0x204)]),_0x2403be=buildCliArtifactPath(_0x37a43c,_0x369d2a(0x1aa)),_0x4a9c85=_0x24bdb7['oGYIe'](buildCliArtifactPath,_0x37a43c,_0x24bdb7['UtSJJ']),_0x2af4cb=quoteShellArg(_0x44c83c),_0x520ada=_0x24bdb7['YNqlQ'](quoteShellArg,_0x101a2d),_0x5bbdb6=_0x24bdb7[_0x369d2a(0x22f)](quoteShellArg,_0x2403be),_0x24b703=quoteShellArg(_0x4a9c85);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x11b45d+_0x369d2a(0x1c8)+_0x11b45d+_0x369d2a(0x21f)+_0x11b45d+_0x369d2a(0x1e6)+_0x11b45d+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x37a43c+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x11b45d+'\x20snapshot\x20--filename\x20'+_0x2af4cb+_0x369d2a(0x1c9)+_0x11b45d+_0x369d2a(0x1c2)+_0x520ada+_0x369d2a(0x22d)+_0x11b45d+_0x369d2a(0x1cb)+_0x5bbdb6+_0x369d2a(0x1ad)+_0x11b45d+'\x20screenshot\x20--filename\x20'+_0x24b703+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x4554dd){const _0xd57be9=_0x5bbb,_0x46bdf3={'EYfdq':_0xd57be9(0x1e0),'YzvUs':_0xd57be9(0x1b4),'tnyCe':_0xd57be9(0x232),'ysTUM':_0xd57be9(0x1db),'wMFli':function(_0x2eb09a,_0x4d6706,_0x1dd402){return _0x2eb09a(_0x4d6706,_0x1dd402);},'OkxJM':'02_state.yml','QbXEZ':'key_03_success-state.png','VEJeB':function(_0x414bb2,_0x3ede1a){return _0x414bb2(_0x3ede1a);},'cpuns':function(_0x2ee0a5,_0x4c9a77){return _0x2ee0a5(_0x4c9a77);},'UriXR':function(_0x4fee3d,_0x13e222,_0x26b12c){return _0x4fee3d(_0x13e222,_0x26b12c);}},{checklistItem:_0x5c039a,itemFeedback:_0x27b031,taskDescription:_0x653a70,cliCommandPrefix:_0x347268,cliArtifactDir:_0x10598e,isCdpMode:_0x364038,url:_0x449d0a,cdpEndpoint:_0x33617f,loginInstructions:_0x10a004}=_0x4554dd,_0x1b0773=_0x46bdf3['wMFli'](buildCliArtifactPath,_0x10598e,_0xd57be9(0x221)),_0x4583a3=buildCliArtifactPath(_0x10598e,_0x46bdf3['OkxJM']),_0x578b76=buildCliArtifactPath(_0x10598e,_0x46bdf3[_0xd57be9(0x219)]),_0x1e6534=buildCliArtifactPath(_0x10598e,'01_initial-state.png'),_0x1e21d1=quoteShellArg(_0x1b0773),_0x9574e9=_0x46bdf3['VEJeB'](quoteShellArg,_0x4583a3),_0x5b534e=_0x46bdf3['cpuns'](quoteShellArg,_0x578b76),_0x16e91f=quoteShellArg(_0x1e6534),_0x11fa91=_0x5c039a['notes']?_0xd57be9(0x1cf)+_0x5c039a['notes']:'';let _0x5ea9bb='';if(_0x27b031&&_0x27b031[_0xd57be9(0x206)]['length']>0x0){const _0x53df7c=_0x27b031[_0xd57be9(0x206)]['map'](_0x6f1835=>{const _0x5e7dda=_0xd57be9,_0x4c8117=new Date(_0x6f1835['createdAt'])[_0x5e7dda(0x20b)](_0x46bdf3[_0x5e7dda(0x209)],{'month':_0x46bdf3[_0x5e7dda(0x1a7)],'day':'numeric'}),_0x3eba1b=_0x6f1835['authorName']||_0x6f1835['authorEmail']||_0x46bdf3['tnyCe'],_0x5a3c65=_0x6f1835['domRef']?_0x5e7dda(0x22e)+(_0x6f1835[_0x5e7dda(0x201)]['selector']['split'](_0x46bdf3['ysTUM'])['pop']()?.['split'](':')[0x0]||'element')+'>\x20\x22'+(_0x6f1835['domRef'][_0x5e7dda(0x228)]||'')[_0x5e7dda(0x20d)](0x0,0x32)+'\x22)':'';return _0x5e7dda(0x1e3)+_0x6f1835['id']+']\x20**'+_0x3eba1b+'**\x20('+_0x4c8117+_0x5e7dda(0x1f2)+_0x6f1835[_0x5e7dda(0x1c1)]+'\x22'+_0x5a3c65;})[_0xd57be9(0x1f8)]('\x0a');_0x5ea9bb='\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'+_0x53df7c;}const _0x5d7c3d=_0x27b031?.[_0xd57be9(0x235)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x27b031[_0xd57be9(0x235)]:'',_0x52c361=_0x364038?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x33617f+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':_0xd57be9(0x236)+_0x449d0a+'\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',_0x28ab2b=_0x449d0a?quoteShellArg(_0x449d0a):'',_0x72e49e=_0x364038?_0xd57be9(0x1a6)+_0x347268+_0xd57be9(0x22a)+_0x347268+'\x20tracing-start`,\x20then\x20`'+_0x347268+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x10598e+_0xd57be9(0x22c)+_0x347268+'\x20snapshot\x20--filename\x20'+_0x1e21d1+_0xd57be9(0x1f1)+_0x347268+_0xd57be9(0x1c2)+_0x16e91f+_0xd57be9(0x226)+_0x347268+'\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':_0xd57be9(0x1a6)+_0x347268+_0xd57be9(0x1d8)+_0x28ab2b+_0xd57be9(0x215)+_0x347268+'\x20tracing-start`,\x20then\x20`'+_0x347268+_0xd57be9(0x1df)+_0x10598e+_0xd57be9(0x22c)+_0x347268+'\x20snapshot\x20--filename\x20'+_0x1e21d1+_0xd57be9(0x231)+_0x347268+'\x20screenshot\x20--filename\x20'+_0x16e91f+_0xd57be9(0x1ec)+_0x347268+'\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',_0xb5f27b=_0x364038?'\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.':_0xd57be9(0x1d9),_0x19db9e=_0x10a004?_0xd57be9(0x1ff)+_0x10a004+_0xd57be9(0x227):'';return _0xd57be9(0x225)+_0x5c039a[_0xd57be9(0x1ac)]+_0x11fa91+_0x5ea9bb+_0x5d7c3d+_0xd57be9(0x1ca)+_0x653a70+'\x0a\x0a'+_0x52c361+_0x19db9e+'\x0a\x0a'+_0x72e49e+_0xd57be9(0x1b5)+_0x347268+_0xd57be9(0x216)+_0x10598e+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x9574e9+_0xd57be9(0x1d1)+_0x5b534e+'`\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`'+_0x10598e+'`:\x20\x22'+_0x1e6534+_0xd57be9(0x224)+_0x46bdf3[_0xd57be9(0x1f7)](buildCliArtifactPath,_0x10598e,_0xd57be9(0x1b2))+'\x22,\x20\x22'+_0x46bdf3['UriXR'](buildCliArtifactPath,_0x10598e,_0xd57be9(0x21a))+_0xd57be9(0x1de)+buildCliArtifactPath(_0x10598e,_0xd57be9(0x1cd))+'\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'+_0xb5f27b+_0xd57be9(0x1d7);}export function summarizeVerifyFeatureCliCommandAvailability(_0x3eb878){const _0x44877b=_0x5bbb,_0x5a278b=[..._0x3eb878[_0x44877b(0x1d4)]()][_0x44877b(0x1af)]();let _0x1aae10=0x0;for(const _0x6985c6 of _0x3eb878[_0x44877b(0x1b6)]()){_0x1aae10+=_0x6985c6;}return{'cliCommandCount':_0x1aae10,'cliCommandsSeen':_0x5a278b,'noCliCommandsCalled':_0x1aae10===0x0};}export function createVerifyFeatureCliHooks(_0x3cfa99){const _0x3f650c=_0x5bbb,_0x1c80ce={'RBtep':'PostToolUse','xLdhg':function(_0xb506a4,_0x2cd9cf){return _0xb506a4!==_0x2cd9cf;},'Dnyvs':'Bash','wslVR':function(_0x1ee82e,_0x3d0054){return _0x1ee82e(_0x3d0054);},'ZkebX':'tool_call','yuRTq':_0x3f650c(0x217),'rSesq':function(_0x112319,_0x16da7c,_0xa06cf0,_0xdec43c){return _0x112319(_0x16da7c,_0xa06cf0,_0xdec43c);},'fIWeh':_0x3f650c(0x1f5)},_0x478a7c=new Map(),_0x116bbb=async _0x529249=>{const _0x41735c=_0x3f650c;if(_0x529249['hook_event_name']!==_0x1c80ce['RBtep'])return{};const _0x53316d=_0x529249;if(_0x1c80ce['xLdhg'](_0x53316d[_0x41735c(0x1d6)],_0x1c80ce[_0x41735c(0x20c)]))return{};const _0x393e1f=_0x53316d[_0x41735c(0x1c7)],_0x26875f=_0x1c80ce[_0x41735c(0x223)](extractBashCommand,_0x393e1f);if(!_0x26875f)return{};const _0x53493c=_0x1c80ce['wslVR'](parsePlaywrightCliCommand,_0x26875f);if(!_0x53493c)return{};return _0x478a7c[_0x41735c(0x1e8)](_0x53493c,(_0x478a7c[_0x41735c(0x1fa)](_0x53493c)||0x0)+0x1),_0x3cfa99[_0x41735c(0x208)](_0x1c80ce[_0x41735c(0x1bc)],{'transport':_0x1c80ce[_0x41735c(0x1c0)],'toolName':_0x53493c}),_0x3cfa99['trackPhaseEnd'](_0x1c80ce[_0x41735c(0x1bc)],{'transport':'playwright-cli','toolName':_0x53493c,'bashCommandPreview':_0x1c80ce['wslVR'](truncatePreview,_0x26875f)}),_0x1c80ce[_0x41735c(0x1b8)](_0x53493c,_0x41735c(0x1e7))&&console[_0x41735c(0x1dd)](_0x1c80ce[_0x41735c(0x1f0)](formatPlaywrightCliConsoleLogMessage,_0x393e1f,_0x26875f,_0x53493c)),{};},_0xaa8498=async _0x1de162=>{const _0x324c5b=_0x3f650c;if(_0x1c80ce[_0x324c5b(0x1b8)](_0x1de162['hook_event_name'],'PostToolUseFailure'))return{};const _0x355b3c=_0x1de162;if(_0x1c80ce[_0x324c5b(0x1b8)](_0x355b3c['tool_name'],_0x1c80ce['Dnyvs']))return{};return await _0x3cfa99[_0x324c5b(0x21e)](_0x1c80ce['fIWeh'],_0x355b3c[_0x324c5b(0x22b)],{'transport':_0x1c80ce['yuRTq'],'toolName':_0x1c80ce[_0x324c5b(0x20c)]}),{};};return{'postToolUseHook':_0x116bbb,'postToolUseFailureHook':_0xaa8498,'commandCounts':_0x478a7c};}async function runPlaywrightCliLifecycleCommand(_0x521e07){const _0xeddd22=_0x5bbb,_0x24065f={'NbYnc':function(_0x157800,_0x2b7056){return _0x157800(_0x2b7056);},'xqEtA':function(_0xcc1037,_0x5199bc){return _0xcc1037??_0x5199bc;},'iklkr':function(_0x38107d,_0x8e69cb,_0x245d62){return _0x38107d(_0x8e69cb,_0x245d62);}},{sessionId:_0x4f7bd1,configPath:_0x3753d1,commandArgs:_0x1678b9,env:_0x28ffeb,telemetry:_0x57865f,phase:_0x27fc73,metadata:_0x5c08f6,timeoutMs:_0x2003ac}=_0x521e07;_0x57865f[_0xeddd22(0x208)](_0x27fc73,_0x5c08f6);try{const _0x59bd18=await _0x24065f['NbYnc'](runPlaywrightCliCommand,{'sessionId':_0x4f7bd1,'configPath':_0x3753d1,'commandArgs':_0x1678b9,'cwd':process['cwd'](),'env':_0x28ffeb,'timeoutMs':_0x24065f[_0xeddd22(0x1a5)](_0x2003ac,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x57865f['trackPhaseEnd'](_0x27fc73,{..._0x5c08f6,'subcommand':_0x59bd18['invocation']['subcommand'],'stdoutPreview':_0x24065f[_0xeddd22(0x1b3)](truncatePreview,_0x59bd18['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x59bd18[_0xeddd22(0x212)],0x7d0)});}catch(_0x64cdd1){await _0x57865f['trackPhaseError'](_0x27fc73,_0x64cdd1,_0x5c08f6);throw _0x64cdd1;}}export async function finalizeVerifyFeatureCliSession(_0x19f4da){const _0x50617b=_0x5bbb,_0x1aac1b={'MqWyq':_0x50617b(0x1fe),'TGfWy':_0x50617b(0x1b1),'eGEmO':_0x50617b(0x1fb),'NbOkt':_0x50617b(0x213),'xAzEW':function(_0x8f4786,_0x584d4c){return _0x8f4786(_0x584d4c);}},{telemetry:_0x587eca,sessionId:_0x2c1a79,configPath:_0x2c3dee,cliArtifactDir:_0x287a7a,env:_0x110561,transportMetadata:_0x3d6dd9}=_0x19f4da,_0x2bd9df=[{'phase':_0x50617b(0x218),'commandArgs':[_0x1aac1b['MqWyq']]},{'phase':_0x50617b(0x1d3),'commandArgs':['video-stop',_0x50617b(0x233)+buildCliArtifactPath(_0x287a7a,_0x1aac1b[_0x50617b(0x1da)])]},{'phase':_0x1aac1b[_0x50617b(0x234)],'commandArgs':[_0x1aac1b[_0x50617b(0x1bf)]]}];for(const _0x477a33 of _0x2bd9df){try{await _0x1aac1b[_0x50617b(0x20a)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x2c1a79,'configPath':_0x2c3dee,'commandArgs':[..._0x477a33['commandArgs']],'env':_0x110561,'telemetry':_0x587eca,'phase':_0x477a33[_0x50617b(0x1ef)],'metadata':_0x3d6dd9});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0xab71bd){const _0x53a65a=_0x5bbb,_0x5f0efd={'rKawl':'trace.zip','LspoN':_0x53a65a(0x1b7)},_0x3c8179=[_0x5f0efd[_0x53a65a(0x220)],_0x5f0efd[_0x53a65a(0x1fd)]];for(const _0x97cfb2 of _0x3c8179){const _0x2601bc=join(_0xab71bd,_0x97cfb2);try{return{'buffer':await readFile(_0x2601bc),'source':_0x2601bc};}catch{}}return null;}function _0x5bbb(_0x28a6e7,_0x5c7c55){_0x28a6e7=_0x28a6e7-0x1a5;const _0x4633c7=_0x4633();let _0x5bbbab=_0x4633c7[_0x28a6e7];return _0x5bbbab;}export async function rehomeVerifyFeatureCliArtifacts(_0x1ab9bc){const _0x2f37d7=_0x5bbb,_0x55e9c1={'zsUxt':function(_0x3e1f7c,_0x4c0407,_0x51daa7){return _0x3e1f7c(_0x4c0407,_0x51daa7);},'sKMPF':function(_0x163519,_0x427f24){return _0x163519<_0x427f24;},'UuhEn':function(_0x3bb4bd,_0x245ebf){return _0x3bb4bd+_0x245ebf;},'kYffm':function(_0x1b033c,_0x16daa4,_0x126058){return _0x1b033c(_0x16daa4,_0x126058);}},{cwd:_0x55c3aa,cliArtifactDir:_0x2bef6d,startTime:_0x4dca92}=_0x1ab9bc,_0xbc8d5f=[];await mkdir(_0x2bef6d,{'recursive':!![]});const _0x435222=await _0x55e9c1['zsUxt'](readdir,_0x55c3aa,{'withFileTypes':!![]});for(const _0x1f283c of _0x435222){if(!_0x1f283c['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x1f283c[_0x2f37d7(0x1e1)]))continue;const _0x75800b=join(_0x55c3aa,_0x1f283c['name']),_0x237f7a=await stat(_0x75800b);if(_0x55e9c1['sKMPF'](_0x55e9c1['UuhEn'](_0x237f7a['mtimeMs'],0x7d0),_0x4dca92))continue;const _0x11abb5=_0x55e9c1['kYffm'](buildCliArtifactPath,_0x2bef6d,_0x1f283c[_0x2f37d7(0x1e1)]);if(_0x75800b===_0x11abb5)continue;await rename(_0x75800b,_0x11abb5),_0xbc8d5f[_0x2f37d7(0x205)](_0x1f283c[_0x2f37d7(0x1e1)]);}return _0xbc8d5f['sort']();}
1
+ (function(_0x118e7e,_0x309120){const _0x4252dc=_0x2ec9,_0x3d3d7e=_0x118e7e();while(!![]){try{const _0xc01591=parseInt(_0x4252dc(0x89))/0x1+parseInt(_0x4252dc(0x98))/0x2*(-parseInt(_0x4252dc(0xaf))/0x3)+-parseInt(_0x4252dc(0xd1))/0x4+-parseInt(_0x4252dc(0x8d))/0x5*(parseInt(_0x4252dc(0x97))/0x6)+parseInt(_0x4252dc(0xd8))/0x7+-parseInt(_0x4252dc(0xc2))/0x8+parseInt(_0x4252dc(0x8b))/0x9*(parseInt(_0x4252dc(0xda))/0xa);if(_0xc01591===_0x309120)break;else _0x3d3d7e['push'](_0x3d3d7e['shift']());}catch(_0x3eb7f0){_0x3d3d7e['push'](_0x3d3d7e['shift']());}}}(_0x361d,0xf0805));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(_0x2189a1,_0x95fd5e=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x597de9=_0x2ec9,_0x5730d8={'AqUIK':function(_0x1cfd60,_0x5a2bb3){return _0x1cfd60>_0x5a2bb3;},'YlfFb':function(_0x53782c,_0x48bdad){return _0x53782c+_0x48bdad;},'RtITh':_0x597de9(0xa7)};return _0x5730d8[_0x597de9(0xcb)](_0x2189a1[_0x597de9(0xdf)],_0x95fd5e)?_0x5730d8['YlfFb'](_0x2189a1['slice'](0x0,_0x95fd5e),_0x5730d8['RtITh']):_0x2189a1;}function _0x2ec9(_0x39dd4a,_0x27daa2){_0x39dd4a=_0x39dd4a-0x66;const _0x361dc3=_0x361d();let _0x2ec9a0=_0x361dc3[_0x39dd4a];return _0x2ec9a0;}function buildCliArtifactPath(_0x344ea6,_0x4c3e26){const _0x18a942=_0x2ec9,_0x364a51={'vBuLG':function(_0x46997d,_0x25359a,_0x348a88){return _0x46997d(_0x25359a,_0x348a88);}};return _0x364a51[_0x18a942(0xa8)](join,_0x344ea6,_0x4c3e26);}function toStepDisplayName(_0x161082){const _0x2d198a=_0x2ec9,_0x57ce95=basename(_0x161082)[_0x2d198a(0xb8)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x2d198a(0xb8)](/-/g,'\x20');return{'name':_0x57ce95,'isKeyStep':/^key_/i[_0x2d198a(0xc5)](basename(_0x161082))};}function extractShellValue(_0x401a5f){if(!_0x401a5f)return null;return _0x401a5f[0x1]??_0x401a5f[0x2]??_0x401a5f[0x3]??null;}function _0x361d(){const _0x20db49=['inoGm','121149McwUQA','trackPhaseError','press','01_initial.yml','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','match','start\x20video\x20recording','\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.','trackPhaseEnd','replace','tracing-stop','\x22,\x20\x22','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','hook_event_name','textContent','[ranger-verification-agent]\x20','`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`','trace.trace.zip','key_04_success-state.png','11372704Mwyoqp','oePlw','JfOJO','test','unaddressedComments','selector','domRef','iSRwZ','\x20(on\x20element:\x20<','AqUIK','--filename=','oCZUi','HhDIK','`:\x20\x22','authorEmail','999888ABGBmF','session-recording.webm','xZQqf','wwWom','ryRwK','select\x20tab\x20','values','9843393mBrZxl','capture\x20snapshot','570jtaDmq','uNzhy','\x0a\x0a##\x20Additional\x20Notes\x0a','`\x0a-\x20`snapshot\x20--filename\x20','notes','length','capture\x20snapshot\x20`','stderr','open','stop\x20video\x20recording','start\x20tracing','canonicalFlow','MTUnu','KrRIc','tool_call','iHhCM','01_mozilla-homepage.png','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','UjaQu','PostToolUse','TmfZF','jipEG','tqgww','pop','\x20screenshot\x20--filename\x20','YyWFN','trackPhaseStart','EYYlz','numeric','\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.','env','\x20open\x20','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','capture\x20key\x20step\x20`','`,\x20then\x20`','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','ZnQvl','stringify','dNuoW','TAKLT','get','check\x20','625321DHzmZo','\x20tracing-start`,\x20then\x20`','521820CkgYAP','capture\x20step\x20`','6735440VnxChY','keys','ref\x20','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','JxcIa','\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','snapshot','check','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','fill\x20','6gKyBet','66tZgWDf','open\x20browser','Bash','map','name','video-stop','split','`\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','DxNQO','playwright-cli','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','\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.','string','eAAQc','GMgzy','...','vBuLG','stop\x20tracing','01_initial-state.png','\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a','tab-select','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'];_0x361d=function(){return _0x20db49;};return _0x361d();}function extractFilenameOption(_0x1b0d9f){const _0x167796=_0x2ec9;return extractShellValue(_0x1b0d9f[_0x167796(0xb4)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x492164,_0x1859f6){const _0x51d430=_0x2ec9,_0x1403e6={'HhDIK':'\x5c$&'},_0x1ddcda=_0x1859f6['replace'](/[.*+?^${}()|[\]\\]/g,_0x1403e6[_0x51d430(0xce)]);return extractShellValue(_0x492164['match'](new RegExp('(?:^|\x5cs)'+_0x1ddcda+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x90236d){const _0x594b8f=_0x2ec9,_0x1b4fcc={'rYVwg':function(_0x549161,_0x352f93,_0x29261a){return _0x549161(_0x352f93,_0x29261a);}};if(!_0x90236d)return'target';if(/^e\d+$/i[_0x594b8f(0xc5)](_0x90236d))return _0x594b8f(0x8f)+_0x90236d;return JSON[_0x594b8f(0x84)](_0x1b4fcc['rYVwg'](truncatePreview,_0x90236d,0x78));}function formatPlaywrightCliLog(_0x3b02e9,_0x5dd060){const _0x4f9199=_0x2ec9,_0x110069={'DxNQO':function(_0x16bafc,_0x4b4436,_0xe62c93){return _0x16bafc(_0x4b4436,_0xe62c93);},'GoeRk':_0x4f9199(0x99),'yaJhc':_0x4f9199(0xb9),'iSRwZ':'video-start','MTUnu':_0x4f9199(0xb5),'GWtHb':_0x4f9199(0x9d),'MdfXJ':'screenshot','YyWFN':function(_0x1ee2b4,_0x314889){return _0x1ee2b4(_0x314889);},'xvbmD':'capture\x20screenshot','xZQqf':function(_0x3dcdfa,_0x2b3e88){return _0x3dcdfa(_0x2b3e88);},'wEGMf':function(_0x520dd8,_0x204c0c,_0xebfe6){return _0x520dd8(_0x204c0c,_0xebfe6);},'LYxud':function(_0x2588d6,_0x435a64,_0x208cc6){return _0x2588d6(_0x435a64,_0x208cc6);},'avhud':_0x4f9199(0xb1),'jipEG':'run-code','xYCCU':'run\x20custom\x20Playwright\x20code','EYYlz':function(_0x56333e,_0x5acbd0,_0x3e8b49){return _0x56333e(_0x5acbd0,_0x3e8b49);},'JxcIa':'open\x20new\x20tab','HzKaI':'select\x20tab'};switch(_0x5dd060){case _0x4f9199(0x67):{const _0x34090b=_0x110069[_0x4f9199(0xa0)](extractFirstCommandArgument,_0x3b02e9,_0x5dd060);return _0x34090b?'open\x20'+_0x34090b:_0x110069['GoeRk'];}case'tracing-start':return _0x4f9199(0x69);case _0x110069['yaJhc']:return _0x4f9199(0xa9);case _0x110069[_0x4f9199(0xc9)]:return _0x110069[_0x4f9199(0x6b)];case _0x110069['GWtHb']:return _0x4f9199(0x68);case'snapshot':{const _0x36ea6c=extractFilenameOption(_0x3b02e9);if(!_0x36ea6c)return _0x4f9199(0xd9);const {name:_0x42a934}=toStepDisplayName(_0x36ea6c);return _0x4f9199(0xe0)+_0x42a934+'`';}case _0x110069['MdfXJ']:{const _0x24eb99=_0x110069[_0x4f9199(0x78)](extractFilenameOption,_0x3b02e9);if(!_0x24eb99)return _0x110069['xvbmD'];const {name:_0x4326cb,isKeyStep:_0xb6606b}=toStepDisplayName(_0x24eb99);return _0xb6606b?_0x4f9199(0x80)+_0x4326cb+'`':_0x4f9199(0x8c)+_0x4326cb+'`';}case'click':return'click\x20'+formatCommandTarget(extractFirstCommandArgument(_0x3b02e9,_0x5dd060));case _0x4f9199(0x94):return _0x4f9199(0x88)+_0x110069['xZQqf'](formatCommandTarget,_0x110069['wEGMf'](extractFirstCommandArgument,_0x3b02e9,_0x5dd060));case'fill':return _0x4f9199(0x96)+formatCommandTarget(_0x110069['LYxud'](extractFirstCommandArgument,_0x3b02e9,_0x5dd060));case _0x110069['avhud']:return'press\x20'+_0x110069[_0x4f9199(0xd3)](formatCommandTarget,_0x110069['LYxud'](extractFirstCommandArgument,_0x3b02e9,_0x5dd060));case _0x110069[_0x4f9199(0x74)]:return _0x110069['xYCCU'];case'tab-new':{const _0x251acf=_0x110069[_0x4f9199(0x7a)](extractFirstCommandArgument,_0x3b02e9,_0x5dd060);return _0x251acf?'open\x20new\x20tab\x20'+_0x251acf:_0x110069[_0x4f9199(0x91)];}case _0x4f9199(0xac):{const _0x5a186f=extractFirstCommandArgument(_0x3b02e9,_0x5dd060);return _0x5a186f?_0x4f9199(0xd6)+_0x5a186f:_0x110069['HzKaI'];}default:return _0x5dd060;}}function extractPlaywrightCliToolDescription(_0x4a0517){const _0x175376=_0x2ec9,_0x2dc489={'UjaQu':function(_0x1cb5cb,_0x3f7cef){return _0x1cb5cb!==_0x3f7cef;},'uNzhy':function(_0xca8a72,_0x3d102b){return _0xca8a72>_0x3d102b;}},_0x1f9919=_0x4a0517['description'];if(_0x2dc489[_0x175376(0x71)](typeof _0x1f9919,_0x175376(0xa4)))return null;const _0xe0db49=_0x1f9919['trim']()['replace'](/\s+/g,'\x20');return _0x2dc489[_0x175376(0xdb)](_0xe0db49['length'],0x0)?_0xe0db49:null;}export function formatPlaywrightCliConsoleLogMessage(_0x5bfde1,_0x161223,_0x4432a9){const _0x571180=_0x2ec9,_0x437141={'bJiNB':function(_0x2eac83,_0x9f74c1,_0x5421f6){return _0x2eac83(_0x9f74c1,_0x5421f6);},'oCZUi':function(_0x469a45,_0x42e158){return _0x469a45(_0x42e158);}},_0x2bab3a=_0x437141['bJiNB'](formatPlaywrightCliLog,_0x161223,_0x4432a9),_0x127cdb=_0x437141[_0x571180(0xcd)](extractPlaywrightCliToolDescription,_0x5bfde1);if(!_0x127cdb)return'[playwright-cli]\x20'+_0x2bab3a;if(process[_0x571180(0x7d)]['DEBUG'])return _0x571180(0xbe)+_0x127cdb+'\x20('+_0x2bab3a+')';return _0x571180(0xbe)+_0x127cdb;}export function buildVerifyFeatureCliDebugPrompt(_0x30d0c4,_0x51ee07){const _0x2e8631=_0x2ec9,_0x51c828={'zCsjL':function(_0x234660,_0x307a02,_0x320013){return _0x234660(_0x307a02,_0x320013);},'sigAy':function(_0x5c4cce,_0x4cc0e2,_0x262e93){return _0x5c4cce(_0x4cc0e2,_0x262e93);},'dNuoW':_0x2e8631(0x6f),'TAKLT':function(_0x4c782f,_0x169cdd){return _0x4c782f(_0x169cdd);}},_0x3b973a=_0x51c828['zCsjL'](buildCliArtifactPath,_0x51ee07,'00_mozilla-homepage.yml'),_0x55a560=_0x51c828['sigAy'](buildCliArtifactPath,_0x51ee07,_0x51c828[_0x2e8631(0x85)]),_0x2f7107=buildCliArtifactPath(_0x51ee07,'02_learn-more.yml'),_0x313611=buildCliArtifactPath(_0x51ee07,'03_learn-more.png'),_0x15113b=_0x51c828[_0x2e8631(0x86)](quoteShellArg,_0x3b973a),_0x5bbaa2=_0x51c828[_0x2e8631(0x86)](quoteShellArg,_0x55a560),_0xdcaccf=_0x51c828[_0x2e8631(0x86)](quoteShellArg,_0x2f7107),_0x5b1529=quoteShellArg(_0x313611);return _0x2e8631(0xad)+_0x30d0c4+'\x0a\x0a1.\x20Run\x20`'+_0x30d0c4+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x30d0c4+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x30d0c4+_0x2e8631(0x70)+_0x51ee07+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x30d0c4+'\x20snapshot\x20--filename\x20'+_0x15113b+_0x2e8631(0x7f)+_0x30d0c4+_0x2e8631(0x77)+_0x5bbaa2+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x30d0c4+'\x20snapshot\x20--filename\x20'+_0xdcaccf+'`\x0a9.\x20Run\x20`'+_0x30d0c4+'\x20screenshot\x20--filename\x20'+_0x5b1529+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x414025){const _0x22bcd0=_0x2ec9,_0x36cb39={'TmfZF':'Reviewer','ryRwK':'\x20>\x20','iHhCM':'element','tqgww':function(_0x3699bb,_0x24a36c,_0x11f2ba){return _0x3699bb(_0x24a36c,_0x11f2ba);},'KrRIc':'02_state.yml','BONRY':function(_0x2af455,_0x294c3b){return _0x2af455(_0x294c3b);},'AtnoV':function(_0x1679e8,_0x3fab8f){return _0x1679e8(_0x3fab8f);},'gmOpt':function(_0x6192cd,_0x5936d4){return _0x6192cd(_0x5936d4);},'wwWom':'03_result-visible.png'},{checklistItem:_0x34fc3e,itemFeedback:_0x2f34fa,taskDescription:_0x263dac,cliCommandPrefix:_0x344f84,cliArtifactDir:_0x2cb66f,isCdpMode:_0x1bc2b0,url:_0x6b4c4f,cdpEndpoint:_0x5ef2e0,loginInstructions:_0x19d55e}=_0x414025,_0x2b9967=_0x36cb39[_0x22bcd0(0x75)](buildCliArtifactPath,_0x2cb66f,_0x22bcd0(0xb2)),_0x2c0f1e=buildCliArtifactPath(_0x2cb66f,_0x36cb39[_0x22bcd0(0x6c)]),_0x5473aa=buildCliArtifactPath(_0x2cb66f,'key_03_success-state.png'),_0x4c4eb7=_0x36cb39['tqgww'](buildCliArtifactPath,_0x2cb66f,_0x22bcd0(0xaa)),_0x13b485=quoteShellArg(_0x2b9967),_0x5e0369=_0x36cb39['BONRY'](quoteShellArg,_0x2c0f1e),_0xf5f853=_0x36cb39['AtnoV'](quoteShellArg,_0x5473aa),_0x4d4f5e=_0x36cb39['gmOpt'](quoteShellArg,_0x4c4eb7),_0x2357b1=_0x34fc3e['notes']?_0x22bcd0(0xdc)+_0x34fc3e[_0x22bcd0(0xde)]:'';let _0x384fd3='';if(_0x2f34fa&&_0x2f34fa[_0x22bcd0(0xc6)][_0x22bcd0(0xdf)]>0x0){const _0x451cb8=_0x2f34fa['unaddressedComments'][_0x22bcd0(0x9b)](_0x5357b1=>{const _0x14d1e8=_0x22bcd0,_0xc43aff=new Date(_0x5357b1['createdAt'])['toLocaleDateString']('en-US',{'month':'short','day':_0x14d1e8(0x7b)}),_0x24d84d=_0x5357b1['authorName']||_0x5357b1[_0x14d1e8(0xd0)]||_0x36cb39[_0x14d1e8(0x73)],_0x5452aa=_0x5357b1[_0x14d1e8(0xc8)]?_0x14d1e8(0xca)+(_0x5357b1['domRef'][_0x14d1e8(0xc7)]['split'](_0x36cb39[_0x14d1e8(0xd5)])[_0x14d1e8(0x76)]()?.[_0x14d1e8(0x9e)](':')[0x0]||_0x36cb39[_0x14d1e8(0x6e)])+'>\x20\x22'+(_0x5357b1[_0x14d1e8(0xc8)][_0x14d1e8(0xbd)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x5357b1['id']+']\x20**'+_0x24d84d+'**\x20('+_0xc43aff+'):\x20\x22'+_0x5357b1['content']+'\x22'+_0x5452aa;})['join']('\x0a');_0x384fd3='\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'+_0x451cb8;}const _0x5001dc=_0x2f34fa?.[_0x22bcd0(0x6a)]?_0x22bcd0(0x82)+_0x2f34fa['canonicalFlow']:'',_0x16d98f=_0x1bc2b0?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x5ef2e0+'.\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'+_0x6b4c4f+'\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',_0x582fb2=_0x6b4c4f?quoteShellArg(_0x6b4c4f):'',_0x49e255=_0x1bc2b0?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x344f84+'\x20open`,\x20then\x20`'+_0x344f84+_0x22bcd0(0x8a)+_0x344f84+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x2cb66f+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x344f84+'\x20snapshot\x20--filename\x20'+_0x13b485+_0x22bcd0(0xbf)+_0x344f84+_0x22bcd0(0x77)+_0x4d4f5e+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x344f84+_0x22bcd0(0x92):_0x22bcd0(0x90)+_0x344f84+_0x22bcd0(0x7e)+_0x582fb2+_0x22bcd0(0x81)+_0x344f84+'\x20tracing-start`,\x20then\x20`'+_0x344f84+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x2cb66f+_0x22bcd0(0x95)+_0x344f84+'\x20snapshot\x20--filename\x20'+_0x13b485+'`\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`'+_0x344f84+'\x20screenshot\x20--filename\x20'+_0x4d4f5e+_0x22bcd0(0xb3)+_0x344f84+'\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',_0x430256=_0x1bc2b0?_0x22bcd0(0xb6):_0x22bcd0(0x7c),_0x5e35e0=_0x19d55e?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x19d55e+'\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 _0x22bcd0(0xbb)+_0x34fc3e['description']+_0x2357b1+_0x384fd3+_0x5001dc+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x263dac+'\x0a\x0a'+_0x16d98f+_0x5e35e0+'\x0a\x0a'+_0x49e255+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x344f84+_0x22bcd0(0xa2)+_0x2cb66f+_0x22bcd0(0xdd)+_0x5e0369+_0x22bcd0(0x9f)+_0xf5f853+'`\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`'+_0x2cb66f+_0x22bcd0(0xcf)+_0x4c4eb7+_0x22bcd0(0xba)+_0x36cb39['tqgww'](buildCliArtifactPath,_0x2cb66f,'02_button-clicked.png')+'\x22,\x20\x22'+_0x36cb39[_0x22bcd0(0x75)](buildCliArtifactPath,_0x2cb66f,_0x36cb39[_0x22bcd0(0xd4)])+'\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(_0x2cb66f,_0x22bcd0(0xc1))+_0x22bcd0(0xab)+_0x430256+_0x22bcd0(0xa3);}export function summarizeVerifyFeatureCliCommandAvailability(_0x25ae88){const _0x3de636=_0x2ec9,_0x59244d={'mjrrn':function(_0x545d4f,_0x430f9c){return _0x545d4f===_0x430f9c;}},_0x2a753f=[..._0x25ae88[_0x3de636(0x8e)]()]['sort']();let _0x50b39b=0x0;for(const _0x16378f of _0x25ae88[_0x3de636(0xd7)]()){_0x50b39b+=_0x16378f;}return{'cliCommandCount':_0x50b39b,'cliCommandsSeen':_0x2a753f,'noCliCommandsCalled':_0x59244d['mjrrn'](_0x50b39b,0x0)};}export function createVerifyFeatureCliHooks(_0x408dbb){const _0x3b1064=_0x2ec9,_0x4f82ed={'PMUbi':function(_0x4dd636,_0x4f710f){return _0x4dd636!==_0x4f710f;},'rZBCh':function(_0x3b36f9,_0x57bb72){return _0x3b36f9(_0x57bb72);},'GMgzy':_0x3b1064(0x6d),'oePlw':function(_0x17802b,_0x28f115){return _0x17802b(_0x28f115);},'KOKfw':_0x3b1064(0x93),'JfOJO':function(_0x4aa6e2,_0x14e2a3,_0x2d71e9,_0x39f6da){return _0x4aa6e2(_0x14e2a3,_0x2d71e9,_0x39f6da);},'PebxH':function(_0x74076,_0x41dc03){return _0x74076!==_0x41dc03;},'rVWgh':'PostToolUseFailure','ZnQvl':function(_0x39f956,_0x4036b6){return _0x39f956!==_0x4036b6;},'AigYb':_0x3b1064(0x9a)},_0x4c421d=new Map(),_0x48f9bd=async _0x39d414=>{const _0x766dbc=_0x3b1064;if(_0x39d414[_0x766dbc(0xbc)]!==_0x766dbc(0x72))return{};const _0x17058c=_0x39d414;if(_0x4f82ed['PMUbi'](_0x17058c['tool_name'],_0x766dbc(0x9a)))return{};const _0x37a872=_0x17058c['tool_input'],_0x21acba=_0x4f82ed['rZBCh'](extractBashCommand,_0x37a872);if(!_0x21acba)return{};const _0x10ee82=parsePlaywrightCliCommand(_0x21acba);if(!_0x10ee82)return{};return _0x4c421d['set'](_0x10ee82,(_0x4c421d[_0x766dbc(0x87)](_0x10ee82)||0x0)+0x1),_0x408dbb[_0x766dbc(0x79)](_0x4f82ed[_0x766dbc(0xa6)],{'transport':'playwright-cli','toolName':_0x10ee82}),_0x408dbb['trackPhaseEnd']('tool_call',{'transport':_0x766dbc(0xa1),'toolName':_0x10ee82,'bashCommandPreview':_0x4f82ed[_0x766dbc(0xc3)](truncatePreview,_0x21acba)}),_0x10ee82!==_0x4f82ed['KOKfw']&&console['log'](_0x4f82ed[_0x766dbc(0xc4)](formatPlaywrightCliConsoleLogMessage,_0x37a872,_0x21acba,_0x10ee82)),{};},_0x591510=async _0x5d4035=>{const _0x389627=_0x3b1064;if(_0x4f82ed['PebxH'](_0x5d4035[_0x389627(0xbc)],_0x4f82ed['rVWgh']))return{};const _0x45535f=_0x5d4035;if(_0x4f82ed[_0x389627(0x83)](_0x45535f['tool_name'],_0x4f82ed['AigYb']))return{};return await _0x408dbb[_0x389627(0xb0)]('tool_failure',_0x45535f['error'],{'transport':_0x389627(0xa1),'toolName':'Bash'}),{};};return{'postToolUseHook':_0x48f9bd,'postToolUseFailureHook':_0x591510,'commandCounts':_0x4c421d};}async function runPlaywrightCliLifecycleCommand(_0x1a95f9){const _0x17620c=_0x2ec9,_0x2a2d21={'QCWfE':function(_0x4699c3,_0x31282d){return _0x4699c3??_0x31282d;},'zPBZD':function(_0x454085,_0x552619,_0x4afcb1){return _0x454085(_0x552619,_0x4afcb1);}},{sessionId:_0x42c9c1,configPath:_0xe6fc4,commandArgs:_0x1c462f,env:_0x38f83e,telemetry:_0x3cd7a3,phase:_0x33a0fb,metadata:_0x1ee60d,timeoutMs:_0x40d470}=_0x1a95f9;_0x3cd7a3['trackPhaseStart'](_0x33a0fb,_0x1ee60d);try{const _0x1abfec=await runPlaywrightCliCommand({'sessionId':_0x42c9c1,'configPath':_0xe6fc4,'commandArgs':_0x1c462f,'cwd':process['cwd'](),'env':_0x38f83e,'timeoutMs':_0x2a2d21['QCWfE'](_0x40d470,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x3cd7a3[_0x17620c(0xb7)](_0x33a0fb,{..._0x1ee60d,'subcommand':_0x1abfec['invocation']['subcommand'],'stdoutPreview':truncatePreview(_0x1abfec['stdout'],0x7d0),'stderrPreview':_0x2a2d21['zPBZD'](truncatePreview,_0x1abfec[_0x17620c(0x66)],0x7d0)});}catch(_0x41b42c){await _0x3cd7a3[_0x17620c(0xb0)](_0x33a0fb,_0x41b42c,_0x1ee60d);throw _0x41b42c;}}export async function finalizeVerifyFeatureCliSession(_0x1d166b){const _0x49d3ca=_0x2ec9,_0x547b7e={'CoywU':'video-stop','kPqHJ':function(_0x480992,_0x5ea7ec,_0x487ff2){return _0x480992(_0x5ea7ec,_0x487ff2);},'inoGm':'playwright_cli_close','wEdRG':'close','eAAQc':function(_0x28902a,_0x1285e3){return _0x28902a(_0x1285e3);}},{telemetry:_0x3a6d74,sessionId:_0x7047a6,configPath:_0x1099ab,cliArtifactDir:_0x498393,env:_0x41198e,transportMetadata:_0x218a6d}=_0x1d166b,_0x58f738=[{'phase':'playwright_cli_tracing_stop','commandArgs':['tracing-stop']},{'phase':'playwright_cli_video_stop','commandArgs':[_0x547b7e['CoywU'],_0x49d3ca(0xcc)+_0x547b7e['kPqHJ'](buildCliArtifactPath,_0x498393,_0x49d3ca(0xd2))]},{'phase':_0x547b7e[_0x49d3ca(0xae)],'commandArgs':[_0x547b7e['wEdRG']]}];for(const _0x44899e of _0x58f738){try{await _0x547b7e[_0x49d3ca(0xa5)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x7047a6,'configPath':_0x1099ab,'commandArgs':[..._0x44899e['commandArgs']],'env':_0x41198e,'telemetry':_0x3a6d74,'phase':_0x44899e['phase'],'metadata':_0x218a6d});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x466b05){const _0x1085dc=_0x2ec9,_0x8e4942={'bbOye':'trace.zip'},_0x147833=[_0x8e4942['bbOye'],_0x1085dc(0xc0)];for(const _0x5a4fb6 of _0x147833){const _0x52bd23=join(_0x466b05,_0x5a4fb6);try{return{'buffer':await readFile(_0x52bd23),'source':_0x52bd23};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x3bf8a8){const _0x34d22d=_0x2ec9,_0x5172a7={'ygkCJ':function(_0x12a4d4,_0x413b84,_0x5d048b){return _0x12a4d4(_0x413b84,_0x5d048b);},'oENXR':function(_0x20d634,_0x4f876e,_0x253835){return _0x20d634(_0x4f876e,_0x253835);},'GVxRn':function(_0x3cb79e,_0x3b89da){return _0x3cb79e(_0x3b89da);},'UBIVY':function(_0x2bcc0d,_0x480f65){return _0x2bcc0d<_0x480f65;},'rskbZ':function(_0x5b3e0c,_0x5a4124){return _0x5b3e0c+_0x5a4124;},'fLQYn':function(_0x4ded54,_0x47a584,_0x1fdda6){return _0x4ded54(_0x47a584,_0x1fdda6);}},{cwd:_0x3e5441,cliArtifactDir:_0x5c4581,startTime:_0x1fb16d}=_0x3bf8a8,_0x3f77cd=[];await mkdir(_0x5c4581,{'recursive':!![]});const _0x18f7b2=await _0x5172a7['ygkCJ'](readdir,_0x3e5441,{'withFileTypes':!![]});for(const _0x546962 of _0x18f7b2){if(!_0x546962['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x34d22d(0xc5)](_0x546962['name']))continue;const _0x348ba7=_0x5172a7['oENXR'](join,_0x3e5441,_0x546962[_0x34d22d(0x9c)]),_0x15c523=await _0x5172a7['GVxRn'](stat,_0x348ba7);if(_0x5172a7['UBIVY'](_0x5172a7['rskbZ'](_0x15c523['mtimeMs'],0x7d0),_0x1fb16d))continue;const _0x5bde80=_0x5172a7['fLQYn'](buildCliArtifactPath,_0x5c4581,_0x546962[_0x34d22d(0x9c)]);if(_0x348ba7===_0x5bde80)continue;await rename(_0x348ba7,_0x5bde80),_0x3f77cd['push'](_0x546962[_0x34d22d(0x9c)]);}return _0x3f77cd['sort']();}
@@ -1 +1 @@
1
- (function(_0x52185f,_0x51718b){const _0x1a2765=_0x2e68,_0x5ea508=_0x52185f();while(!![]){try{const _0x7c1edd=parseInt(_0x1a2765(0x2bc))/0x1+-parseInt(_0x1a2765(0x252))/0x2*(parseInt(_0x1a2765(0x255))/0x3)+-parseInt(_0x1a2765(0x204))/0x4*(parseInt(_0x1a2765(0x1ec))/0x5)+parseInt(_0x1a2765(0x298))/0x6*(parseInt(_0x1a2765(0x28a))/0x7)+-parseInt(_0x1a2765(0x213))/0x8*(-parseInt(_0x1a2765(0x26c))/0x9)+parseInt(_0x1a2765(0x1f3))/0xa*(-parseInt(_0x1a2765(0x222))/0xb)+parseInt(_0x1a2765(0x21c))/0xc;if(_0x7c1edd===_0x51718b)break;else _0x5ea508['push'](_0x5ea508['shift']());}catch(_0x1f4695){_0x5ea508['push'](_0x5ea508['shift']());}}}(_0x4c5b,0x96eda));const _0x14ff6b=(function(){const _0xdf1e2e=_0x2e68,_0x3856a1={'qjPrr':function(_0x23266f,_0xad754e){return _0x23266f===_0xad754e;},'LjDDU':_0xdf1e2e(0x22e)};let _0x291038=!![];return function(_0x390c47,_0x507c22){const _0x34fa44=_0x291038?function(){const _0xc3150d=_0x2e68;if(_0x3856a1[_0xc3150d(0x2b4)](_0x3856a1[_0xc3150d(0x242)],_0xc3150d(0x22e))){if(_0x507c22){const _0x1cf098=_0x507c22[_0xc3150d(0x23f)](_0x390c47,arguments);return _0x507c22=null,_0x1cf098;}}else throw new _0x3380d8(_0xc3150d(0x23a));}:function(){};return _0x291038=![],_0x34fa44;};}()),_0x482eaf=_0x14ff6b(this,function(){const _0x2e4d01=_0x2e68,_0x404152={'sxJjY':'(((.+)+)+)+$'};return _0x482eaf[_0x2e4d01(0x2b7)]()[_0x2e4d01(0x25e)](_0x404152[_0x2e4d01(0x2a5)])[_0x2e4d01(0x2b7)]()['constructor'](_0x482eaf)[_0x2e4d01(0x25e)](_0x404152[_0x2e4d01(0x2a5)]);});_0x482eaf();import{query}from'@anthropic-ai/claude-agent-sdk';import{join,dirname}from'path';import{readFile,readdir,appendFile,mkdir,rm}from'fs/promises';import{existsSync}from'fs';import{execSync}from'child_process';import{tmpdir}from'os';import{loadSettings,resolveEnvVars,buildPlaywrightConfig,cleanupTempFiles,getEnvDir}from'./utils/settings.js';import{createBrowserSession,updateBrowserSession,getUploadUrls,uploadTrace,uploadConversation,uploadScreenshot,buildTraceViewerUrl,getProxySessionToken,computeChecksum}from'./utils/browserSessionsApi.js';import{getAiProxyUrl}from'./utils/environment.js';import{getToken}from'./utils/keychain.js';import{getRangerDir}from'./utils/rangerRoot.js';import{readActiveProfileName}from'./utils/activeProfile.js';import{createMcpImageBase64Hook}from'./utils/mcpImageBase64.js';function _0x2e68(_0x764a3c,_0x453643){_0x764a3c=_0x764a3c-0x1e2;const _0x41238f=_0x4c5b();let _0x482eaf=_0x41238f[_0x764a3c];if(_0x2e68['BkQLKS']===undefined){var _0x14ff6b=function(_0x1ce4dc){const _0x5c65ec='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x94d247='',_0x4ff456='',_0x573fbb=_0x94d247+_0x14ff6b;for(let _0x4e9b7e=0x0,_0x1b26dc,_0x328f00,_0x2fda6f=0x0;_0x328f00=_0x1ce4dc['charAt'](_0x2fda6f++);~_0x328f00&&(_0x1b26dc=_0x4e9b7e%0x4?_0x1b26dc*0x40+_0x328f00:_0x328f00,_0x4e9b7e++%0x4)?_0x94d247+=_0x573fbb['charCodeAt'](_0x2fda6f+0xa)-0xa!==0x0?String['fromCharCode'](0xff&_0x1b26dc>>(-0x2*_0x4e9b7e&0x6)):_0x4e9b7e:0x0){_0x328f00=_0x5c65ec['indexOf'](_0x328f00);}for(let _0x4043a1=0x0,_0x39f688=_0x94d247['length'];_0x4043a1<_0x39f688;_0x4043a1++){_0x4ff456+='%'+('00'+_0x94d247['charCodeAt'](_0x4043a1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ff456);};_0x2e68['ngVLDu']=_0x14ff6b,_0x2e68['xKKVsM']={},_0x2e68['BkQLKS']=!![];}const _0x4c5bf0=_0x41238f[0x0],_0x2e689d=_0x764a3c+_0x4c5bf0,_0x2a3f8e=_0x2e68['xKKVsM'][_0x2e689d];if(!_0x2a3f8e){const _0x3570b4=function(_0x5c5e69){this['ilNqMP']=_0x5c5e69,this['cvZynO']=[0x1,0x0,0x0],this['iRECgE']=function(){return'newState';},this['CbrjoO']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['ZkxyJm']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x3570b4['prototype']['lrAYtA']=function(){const _0x1a65aa=new RegExp(this['CbrjoO']+this['ZkxyJm']),_0x2dda1c=_0x1a65aa['test'](this['iRECgE']['toString']())?--this['cvZynO'][0x1]:--this['cvZynO'][0x0];return this['yIsXWZ'](_0x2dda1c);},_0x3570b4['prototype']['yIsXWZ']=function(_0x5029bd){if(!Boolean(~_0x5029bd))return _0x5029bd;return this['hSVLTF'](this['ilNqMP']);},_0x3570b4['prototype']['hSVLTF']=function(_0x2b4745){for(let _0x34da96=0x0,_0x470ec1=this['cvZynO']['length'];_0x34da96<_0x470ec1;_0x34da96++){this['cvZynO']['push'](Math['round'](Math['random']())),_0x470ec1=this['cvZynO']['length'];}return _0x2b4745(this['cvZynO'][0x0]);},new _0x3570b4(_0x2e68)['lrAYtA'](),_0x482eaf=_0x2e68['ngVLDu'](_0x482eaf),_0x2e68['xKKVsM'][_0x2e689d]=_0x482eaf;}else _0x482eaf=_0x2a3f8e;return _0x482eaf;}function _0x4c5b(){const _0xf7f708=['zxjYB3jZ','EhDkzvK','y29TCgXLDgvK','vMX6zKe','vgzWtg4','ruDbBw0','uhjVzMLSzsaI','iIbUB3qGzM91BMqUifj1BJOGCMfUz2vYihbYB2zPBguGywrKia','yKD4y2C','mJq0vMzREgr6','Afniwwi','yuf6sNm','mJKWntv6u1vnAwu','zLffwKC','rffgA0q','zxzUsxq','t2TwywO','zvjhrfy','DhjHy2vwAwv3zxjvCMW','rLnxv1K','DgXTr0W','C2vHCMnO','r2jTrhK','CgXPEgm','C3PcCMy','EM5kz3K','AgX3s2q','yMfZzvvYBa','zfjSr3m','C3vJy2vZCW','ww91igfYzsbHifvjifzLCMLMAwvYlIbzB3vYie9otfKGAM9IigLZihrVignSAwnRihrOCM91z2GGysbvssbMBg93igfUzcbYzxbVCNqGyNvNCYbPBw1LzgLHDgvSEsb3AgvUigzVDw5KlGOkq1jjveLdquWGvvjmifjfuvvjuKvnru5uoGPzB3vYigjHC2uGvvjmigLZoIa','wg1rwg0','zw1Vseq','AwvJq28','sKjUre0','mtHvwxnHC3O','A21ltLa','sxvHte4','y3LPBKy','lNbUzW','C3bSAxq','y29UDMvYC2f0Aw9UlMPZB25S','CM0GiG','u3rYDwn0DxjLze91Dhb1Da','uvPht0i','swPmruW','zMLSDgvY','C2vZC2LVBKrPCG','sgv5reC','r0Hgv0u','zw5KC1DPDgG','EfHsy3G','yunfww8','C3vTBwfYEq','zMfPBgvK','tufkt1i','zgvZy3jPChrPB24','ANnVBL9Zy2HLBwe','tM8GyMfZzvvYBcbJB25MAwD1CMvKigzVCIbWCM9MAwXLici','y2XHDwrLlw9WDxmTnc01','wvPYDxa','Bxz3zu0','DgfZAW','Dg9VBf91C2u','B2jQzwn0','mZiXnZL2qMv6CLa','wgPRD3G','yvvIC1G','CfLmD2y','BgvUz3rO','AM9PBG','iIaMjIb6AxaGlxiGiG','DMjHweO','s1rUwwe','zfjztMu','shbTqLm','y29UDgvUDa','wgvKu3a','A1LHy3O','mtm4wxbsCgfW','qLzryNG','vxr6Due','rgzotfu','u1ndrfi','Dgv4Da','qNjVD3nLCIbZzxnZAw9UignYzwf0zwq6ia','B3jfENm','ChLSzuS','C3rYAw5N','z1DAu1y','BgnltK8','C3vIDhLWzq','C3HkALK','D3rKv0u','BMTREhm','sezSEMW','ANnVBMW','Ce9Kzg8','DxbsAhm','tNndBeW','Bg9N','y0f3B0u','DxbSB2fKvxjS','CuHtCKe','BLPKzxm','iI4GuNvUoIbYyw5NzxiGChjVzMLSzsbJB25MAwCGC2v0ia','DNPzCNO','CwPqCNi','zM1wwNy','qKT0wxm','Dg9tDhjPBMC','DhLWzq','v3bzq0u','BMfTzq','y3DK','ndiZmdG4vKfYs3nw','rMfPBgvKihrVigzLDgnOihbYB3H5ihnLC3nPB24GDg9Rzw4Uia','DhjHy2vZ','BwvZC2fNzq','EvPTBxC','Cg5N','qwLvsfa','EhPru3G','DxjS','ref0rNO','sePftNm','qMfZAa','Dg9mB3DLCKnHC2u','C2vZC2LVBNm','vu9crMS','D3bVAKW','rgjutgC','oti0mtvNwwDMtfu','uMLXreG','cLvstdOG','z0TZCxm','EhfPr2m','uxzPtwW','zeTmDKW','ntqWCNbkwwTN','ugnrA1q','Bg9NAw5jBNn0CNvJDgLVBNm','DhHvExO','C3rYDwn0DxjLzf9VDxrWDxq','wvjjyMW','qhjHBMDLCI10zxn0Aw5Nl3bSyxL3CMLNAhq','wMznuwe','EeD3zuK','EMzAEue','CMfUz2vYlwjYB3DZzxiTC2vZC2LVBNm','yNLWyxnZugvYBwLZC2LVBNm','qM9TENe','CevrENK','BM93','zw52','qwDLBNqGzxHLy3v0Aw9UihrPBwvKig91DcbHzNrLCIa1osbTAw51DgvZ','mtKYAMfdwMLc','tM8GCMvZDwX0ihjLy2vPDMvKigzYB20GywDLBNq','DhjHy2uUEMLW','rLbpzMK','qKTQrMy','EvzxtvC','yxnZAxn0yw50','rwrTvuC','CgLWzq','EhvSDvi','igjHC2vvCMWGphvYBd4','y2LmAfq','u3zkz1K','vMvYAwzPy2f0Aw9UigzHAwXLzdOG','y2Tyr00','nJe0nJK2thPnAMzb','rNHmDwq','BwfW','qKf3y3m','zgDnwgC','ru9Hr08','CgzkC0i','yMvyDeS','iIaU','mZe2odeXnJrfB3Hcuuq','zvPoCg8','CMfJzq','Aw5WDxq','BwnWx19Yyw5NzxiTyNjVD3nLCL9FkG','vgL4vxO','mti5ndGXsMTqD0Hr','sM1UvMq','uMnwvhK','vfLjsLO','u0PYyLC','CMvZDwX0','DKveuwm','tuLot1i','AhzKzwu','zLHWt3G','C2v2zxjPDhK','cKnssvrjq0fmieLou1rsvunusu9ouZOkms4GtMf2AwDHDguGDg8GDgHLifvstcbHyM92zsb1C2LUzYbICM93C2vYx25HDMLNyxrLcJiUifrHA2uGysbZBMfWC2HVDcb3AxrOigjYB3DZzxjFC25HChnOB3qGDg8GC2vLihrOzsbWywDLcJmUiev4zwn1DguGDgHLihrHC2SGC3rLCc1IEs1ZDgvWihvZAw5NigjYB3DZzxiGDg9VBhmknc4GswyGEw91igzPBMqGqu5zigj1z3mSihjLCg9YDcbPBw1LzgLHDgvSEsb3AxrOihnLDMvYAxr5cJuUifjLDhvYBIb5B3vYigzPBMrPBMDZigLUihrOzsbZDhj1y3r1CMvKig91Dhb1DcbMB3jTyxqkcLLVDxiGDgfZAZOG','Du9ywxC','BhfSBKe','tfHWDfa','q3nhsK0','vfjVDxO','txb3q08','tM8GqvbjihrVA2vUignVBMzPz3vYzwqUifj1BJOGCMfUz2vYihnLDhvWifT0B2TLBL0','cI0Gww91ig1HEsbptKXzig5HDMLNyxrLihrVihbHDgHZihvUzgvYihrOAxmGyMfZzsbvuKWGkhnHBwuGChjVDg9JB2WSigHVC3qSigfUzcbWB3j0kqOTiezVCIbLEgfTCgXLlcbPzIb0AguGyMfZzsbvuKWGAxmGiMH0Dha6lY9SB2nHBgHVC3q6mZaWmciSihLVDsbJyw4GBMf2AwDHDguGDg8GiMH0Dha6lY9SB2nHBgHVC3q6mZaWmc9OB21LiIWGiMH0Dha6lY9SB2nHBgHVC3q6mZaWmc9Zzxr0Aw5NCYiSigv0yY4klsbetYbot1qGBMf2AwDHDguGDg8Gyw55igrPzMzLCMvUDcbKB21HAw4SigHVC3qSig9YihbVCNqGDw5KzxiGyw55ignPCMn1Bxn0yw5Jzxmklsbjr05puKuGyw55ifvsthmGzNjVBsbWCM9KDwn0igrVy3vTzw50yxrPB24Gkg1JCf9FCMfUz2vYx19NzxrFChjVzhvJDf9KB2nZksb0Agf0igHHDMuGysbKAwzMzxjLBNqGyMfZzsbvuKWklsbjzIbKB2n1BwvUDgf0Aw9Uig9YignVzguGzgLMzNmGC3vNz2vZDcbHihbHDgGGzxHPC3rZicHLlMCUlcaIl2rHC2HIB2fYzciPlcb5B3uGBwf5ig5HDMLNyxrLihrVihrOyxqGCgf0AcbptKXzihvUzgvYihrOzsbIyxnLifvstcbHyM92zqOTifrOzsbIyxnLifvstcbHyM92zsbPCYb0AguGt05mwsbHDxrOB3jPEMvKigvUDMLYB25Tzw50igzVCIb0AgLZihzLCMLMAwnHDgLVBGO','s2XRuxe','u3rpyLu','y1byt2m','zxjYB3i','tM8Gywn0AxzLihbYB2zPBguUifj1BJOGCMfUz2vYihbYB2zPBguGDxnLidXWCM9MAwXLlw5HBwu+','B2HPA2O','rgPguhu','ueLLyuS','BvPdvwS','yxbWBhK','vLPbyLK','uhHgqwe','tgPerfu','cGPbzNrLCIbJB21WBgv0Aw5Nigf1DgHLBNrPy2f0Aw9UlcbWCM9JzwvKihDPDgGGDgHLihzLCMLMAwnHDgLVBIb0yxnRigjLBg93lGPjzIbHDxrOzw50AwnHDgLVBIbMywLSCYWGCMvWB3j0igL0igLTBwvKAwf0zwX5igfZigeGyMXVy2TLCI4kcG','zg93BMXVywrvCMW','vw5RBM93BIbLCNjVCG','C2vZC2LVBKLK','uhnIrvu','u2LNDfe'];_0x4c5b=function(){return _0xf7f708;};return _0x4c5b();}async function zipDirectory(_0x2047dc){const _0x49dffe=_0x2e68,_0x30d50a={'pfJsB':function(_0x4d3bb5,_0x164dbb,_0x14c52b,_0x272e16){return _0x4d3bb5(_0x164dbb,_0x14c52b,_0x272e16);},'DfNLU':'trace-upload.zip','cyinF':function(_0x51e5cd,_0x728932,_0x1b79b1){return _0x51e5cd(_0x728932,_0x1b79b1);},'RcVTy':_0x49dffe(0x20c),'vwGGR':function(_0x24344e,_0x1c7ad1){return _0x24344e(_0x1c7ad1);},'mZCUk':function(_0x5c2fee,_0x48640b,_0x5924e6){return _0x5c2fee(_0x48640b,_0x5924e6);}},_0x5d125b=_0x30d50a[_0x49dffe(0x219)](join,_0x2047dc,'..',_0x30d50a[_0x49dffe(0x29b)]);_0x30d50a[_0x49dffe(0x26f)](execSync,'cd\x20\x22'+_0x2047dc+_0x49dffe(0x290)+_0x5d125b+_0x49dffe(0x21b),{'stdio':_0x30d50a[_0x49dffe(0x224)]});const _0x2c8139=await _0x30d50a['vwGGR'](readFile,_0x5d125b);return _0x30d50a[_0x49dffe(0x23e)](execSync,_0x49dffe(0x273)+_0x5d125b+'\x22',{'stdio':_0x49dffe(0x20c)}),_0x2c8139;}function getTraceDirectory(_0x92f695){const _0x1fcd1d=_0x2e68,_0x51e951={'yZmmw':function(_0x5a7193,_0x5d2c12,_0x612eaa,_0xf74c55){return _0x5a7193(_0x5d2c12,_0x612eaa,_0xf74c55);},'szBrf':_0x1fcd1d(0x1e8)};return _0x51e951[_0x1fcd1d(0x2c0)](join,getRangerDir(),_0x51e951[_0x1fcd1d(0x261)],_0x92f695);}function getConversationFilePath(_0x39f43e){const _0x207ee9=_0x2e68,_0x381a26={'beXtK':function(_0x55e6b4,_0x2f1361,_0x82fa0b,_0x125e53,_0x1af807){return _0x55e6b4(_0x2f1361,_0x82fa0b,_0x125e53,_0x1af807);},'ckXGM':function(_0x4e8b90){return _0x4e8b90();}};return _0x381a26[_0x207ee9(0x21a)](join,_0x381a26[_0x207ee9(0x212)](tmpdir),_0x207ee9(0x1fd),_0x39f43e,_0x207ee9(0x272));}async function uploadConversationArtifact(_0x4b14e2,_0x42f80){const _0x39a55e=_0x2e68,_0x4cae0e={'KyhPR':function(_0x3bcc9c,_0x5db81a){return _0x3bcc9c instanceof _0x5db81a;},'vEDQc':function(_0xc59a67,_0xf3b4dd,_0xdb616a,_0x5ceab5){return _0xc59a67(_0xf3b4dd,_0xdb616a,_0x5ceab5);},'YFVjq':function(_0x4dfa2c){return _0x4dfa2c();},'PIeaK':_0x39a55e(0x1e8),'gWZSV':function(_0x35cf2c,_0x5ca4a9){return _0x35cf2c(_0x5ca4a9);},'HJENs':function(_0x3046e5,_0x43d2ac){return _0x3046e5===_0x43d2ac;},'fmVZv':_0x39a55e(0x2a8),'ciLhT':function(_0x33a1a0,_0x1f104,_0x3c5e47,_0x4b9e5a,_0x45e63b){return _0x33a1a0(_0x1f104,_0x3c5e47,_0x4b9e5a,_0x45e63b);},'TChar':'conversation.jsonl','xuluR':_0x39a55e(0x2a9),'EOaGO':function(_0x1a5c5a,_0x557452,_0x20214c){return _0x1a5c5a(_0x557452,_0x20214c);},'evnIt':_0x39a55e(0x25d),'uUVxK':'mmHxD'};if(!_0x4cae0e[_0x39a55e(0x2a2)](existsSync,_0x42f80)){if(_0x4cae0e[_0x39a55e(0x1e5)](_0x39a55e(0x240),_0x4cae0e[_0x39a55e(0x2b5)]))_0x427581=_0x4cae0e['KyhPR'](_0x1e8da9,_0x22b290)?_0x2b5da3['message']:_0x14207b(_0x5cd763);else return![];}try{if(_0x39a55e(0x231)===_0x39a55e(0x231)){const _0x1c229d=await readFile(_0x42f80),_0x468890=_0x4cae0e['gWZSV'](computeChecksum,_0x1c229d),_0x133534=await _0x4cae0e[_0x39a55e(0x20f)](getUploadUrls,_0x4b14e2,_0x4cae0e['TChar'],_0x4cae0e[_0x39a55e(0x20d)],{'size':_0x1c229d[_0x39a55e(0x28e)],'checksum':_0x468890});return await _0x4cae0e[_0x39a55e(0x218)](uploadConversation,_0x133534[_0x39a55e(0x2af)],_0x1c229d),!![];}else return _0x4cae0e[_0x39a55e(0x228)](_0x513cfe,_0x4cae0e['YFVjq'](_0x2e669c),_0x4cae0e[_0x39a55e(0x23d)],_0x38ea1d);}catch{if(_0x4cae0e[_0x39a55e(0x1e5)](_0x4cae0e[_0x39a55e(0x258)],_0x4cae0e['uUVxK'])){const _0x18b963=_0x3570b4?function(){if(_0x34da96){const _0x333d05=_0x5de75e['apply'](_0x508fd3,arguments);return _0x457dfa=null,_0x333d05;}}:function(){};return _0x2b4745=![],_0x18b963;}else return![];}}export async function verifyInBrowser(_0x13aeb1,_0x3b41f1={}){const _0x46c46d=_0x2e68,_0x3a947b={'fXpOx':function(_0x4fb52d,_0x30aafe,_0x54daa3){return _0x4fb52d(_0x30aafe,_0x54daa3);},'nkkxs':_0x46c46d(0x245),'SJrbW':function(_0x233898,_0x2a4fcd){return _0x233898===_0x2a4fcd;},'BVQbx':_0x46c46d(0x288),'orEzs':function(_0x19e8a5,_0x529bb2){return _0x19e8a5===_0x529bb2;},'QZGOB':function(_0x34bbc9){return _0x34bbc9();},'igWcK':_0x46c46d(0x1fd),'znJgy':function(_0x533a88,_0x4f037d){return _0x533a88>_0x4f037d;},'wtdWE':function(_0x5187c8,_0x4dca80){return _0x5187c8!==_0x4dca80;},'Xjkwx':_0x46c46d(0x22a),'PxFAa':function(_0x35b83f,_0x576bb1){return _0x35b83f+_0x576bb1;},'zfZyA':function(_0x1a115b,_0x340f9c,_0xc95c0f,_0x1cd9ff){return _0x1a115b(_0x340f9c,_0xc95c0f,_0x1cd9ff);},'xXRcx':'utf-8','SigtQ':_0x46c46d(0x20a),'EdmUG':function(_0x5dad51,_0x23c977){return _0x5dad51!==_0x23c977;},'lKVtt':_0x46c46d(0x276),'BAwcs':_0x46c46d(0x21d),'upRhs':_0x46c46d(0x223),'yVWMW':_0x46c46d(0x1f8),'BKjFf':_0x46c46d(0x274),'YZrup':function(_0x19128a,_0x3b9b33){return _0x19128a!==_0x3b9b33;},'fQEZG':'wSXIL','lcKNO':_0x46c46d(0x217),'ZfMQa':_0x46c46d(0x1e2),'HqIEC':_0x46c46d(0x227),'XedSp':function(_0x357a4b,_0x5d2e74){return _0x357a4b!==_0x5d2e74;},'KlkQq':_0x46c46d(0x291),'pYLwf':_0x46c46d(0x266),'pEQzy':function(_0xaeea13,_0x2e9d7d){return _0xaeea13!==_0x2e9d7d;},'xwJeY':_0x46c46d(0x294),'TYIJZ':_0x46c46d(0x205),'FSWWY':function(_0x167e9a,_0x964870){return _0x167e9a(_0x964870);},'dRYNe':function(_0x5cb6c3,_0x272608){return _0x5cb6c3(_0x272608);},'GHFWE':_0x46c46d(0x203),'ZIRpJ':function(_0x4a4502,_0x1c767b){return _0x4a4502===_0x1c767b;},'JBnDM':'hCPQr','SvJgY':function(_0xb3c8d6,_0xf106ad){return _0xb3c8d6(_0xf106ad);},'pOddo':function(_0x1850ca,_0x1fd521){return _0x1850ca(_0x1fd521);},'dKLvL':function(_0x4745d1,_0x2f3aa1){return _0x4745d1(_0x2f3aa1);},'pyleK':_0x46c46d(0x221),'dRlGs':_0x46c46d(0x234),'GbmDy':function(_0x17a48c,_0x553dd9){return _0x17a48c(_0x553dd9);},'lqlnA':function(_0x83079e,_0x42f7d0,_0x33b8b8,_0x46419a,_0x1439f5){return _0x83079e(_0x42f7d0,_0x33b8b8,_0x46419a,_0x1439f5);},'DjFPu':_0x46c46d(0x1f9),'IuaLN':'run-mcp-server','ERtMf':'--config','DAtFz':function(_0x6f83a5,_0x59b4e4,_0x2916be){return _0x6f83a5(_0x59b4e4,_0x2916be);},'wpojL':function(_0x2855e2,_0x2f487b){return _0x2855e2-_0x2f487b;},'iecCo':_0x46c46d(0x289),'plixc':'boolean','StObU':'string','MpwCO':'array','XmQXm':'BLOCKER','KTnYa':_0x46c46d(0x280),'gKsqs':_0x46c46d(0x229),'bGxcg':_0x46c46d(0x22c),'hlwKd':_0x46c46d(0x281),'NsClL':_0x46c46d(0x27e),'DbTLg':_0x46c46d(0x1fe),'qHSrA':_0x46c46d(0x282),'BKtYs':function(_0x5f4351,_0x2f8f74,_0x5da0ca){return _0x5f4351(_0x2f8f74,_0x5da0ca);},'kmKNP':function(_0x541de3,_0x3a1cae){return _0x541de3*_0x3a1cae;},'JqapD':_0x46c46d(0x1f6),'aUbsX':function(_0x4e36d0,_0x585ddd){return _0x4e36d0(_0x585ddd);},'DQFkD':function(_0x49d3e2,_0xa410bf){return _0x49d3e2!==_0xa410bf;},'mvweM':_0x46c46d(0x253),'UOBFk':function(_0x59e6ed,_0x27d828){return _0x59e6ed(_0x27d828);},'FxLud':function(_0x23a65e,_0x358cff){return _0x23a65e(_0x358cff);},'HeyDG':function(_0x110d51,_0x2f5062){return _0x110d51(_0x2f5062);},'yFRUX':_0x46c46d(0x232),'LXptP':'LkUAA','SSCDR':_0x46c46d(0x2be),'aAzJs':function(_0x25072b,_0x4858fc){return _0x25072b(_0x4858fc);},'SqjjM':_0x46c46d(0x206),'xqiGc':'zip','OkVaj':_0x46c46d(0x1fb),'TfpLn':function(_0x177893,_0x30bc4e,_0x26600b){return _0x177893(_0x30bc4e,_0x26600b);},'Bomzq':function(_0x2d8846,_0x59208e,_0x2311eb){return _0x2d8846(_0x59208e,_0x2311eb);},'dVXNs':function(_0x3b8db2,_0x6e6d7f){return _0x3b8db2===_0x6e6d7f;},'PsbEU':_0x46c46d(0x1f1),'nZdes':function(_0x1c40b5,_0x365337,_0x1dcee8){return _0x1c40b5(_0x365337,_0x1dcee8);},'cIrVK':_0x46c46d(0x27f),'cPXOc':function(_0x20ddda,_0x3d3691){return _0x20ddda||_0x3d3691;},'UtzuA':function(_0x312688,_0x9b2df4){return _0x312688&&_0x9b2df4;},'AiUHP':_0x46c46d(0x2ae),'kYacz':_0x46c46d(0x2b9),'vzYrz':_0x46c46d(0x207),'emoHD':function(_0x237959,_0x5a062d,_0x29f683){return _0x237959(_0x5a062d,_0x29f683);},'ohikj':function(_0x407621,_0x2d1c5f){return _0x407621(_0x2d1c5f);},'caMmc':function(_0x45a1d4,_0x2a2305){return _0x45a1d4(_0x2a2305);},'QRWbR':'eHwvp','RiqDH':function(_0x33a92d,_0x19c51a,_0x6180c){return _0x33a92d(_0x19c51a,_0x6180c);},'PcQkT':function(_0x34dd19,_0x36a74a){return _0x34dd19(_0x36a74a);},'VuPqQ':function(_0xb144c,_0x661eb,_0x24b1bf){return _0xb144c(_0x661eb,_0x24b1bf);}},{env:_0x201035,headed:headed=![]}=_0x3b41f1;let _0x4b69d5=_0x201035||await readActiveProfileName();if(!_0x4b69d5){if(_0x3a947b['ZIRpJ'](_0x46c46d(0x24c),_0x3a947b[_0x46c46d(0x26b)]))_0x13dce1=_0x43e1f2[_0x46c46d(0x21f)];else throw new Error('No\x20active\x20profile.\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>');}const _0x160f6c=_0x3a947b[_0x46c46d(0x210)](getEnvDir,_0x4b69d5);if(!_0x3a947b[_0x46c46d(0x2aa)](existsSync,_0x160f6c))throw new Error(_0x46c46d(0x24f)+_0x4b69d5+'\x22\x20not\x20found.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x4b69d5);const _0x5ef32c=await loadSettings(_0x4b69d5),_0x121f79=_0x3a947b[_0x46c46d(0x1f2)](resolveEnvVars,_0x5ef32c),_0x180979=_0x121f79[_0x46c46d(0x264)];if(!_0x180979){if(_0x46c46d(0x221)===_0x3a947b[_0x46c46d(0x2a0)])throw new Error(_0x46c46d(0x283)+_0x4b69d5+'\x22.\x20Run:\x20ranger\x20profile\x20config\x20set\x20'+_0x4b69d5+_0x46c46d(0x20e));else throw new _0x1b52ef(_0x46c46d(0x211)+_0x1053a6);}const _0x406bc0=await _0x3a947b[_0x46c46d(0x275)](getToken);if(!_0x406bc0)throw new Error(_0x3a947b[_0x46c46d(0x265)]);const _0x390c4d=await _0x3a947b[_0x46c46d(0x25f)](createBrowserSession,{'environmentName':_0x4b69d5,'settings':_0x121f79,'task':_0x13aeb1,'url':_0x180979});console[_0x46c46d(0x2ad)](_0x46c46d(0x29e)+_0x390c4d['id']);const _0x4c049f=await _0x3a947b[_0x46c46d(0x22f)](buildPlaywrightConfig,_0x121f79,_0x4b69d5,_0x390c4d?.['id'],headed),_0x55ecf0={'command':'npx','args':[_0x3a947b[_0x46c46d(0x23c)],_0x3a947b[_0x46c46d(0x26e)],_0x3a947b['ERtMf'],_0x4c049f['configPath']]},_0x49dfa1=Date[_0x46c46d(0x201)]();let _0x664f59;try{_0x664f59=await _0x3a947b[_0x46c46d(0x275)](getProxySessionToken);}catch(_0x1809a8){const _0x51a2ac=_0x1809a8 instanceof Error?_0x1809a8[_0x46c46d(0x2bf)]:_0x3a947b[_0x46c46d(0x25c)](String,_0x1809a8),_0x4f02ce=_0x46c46d(0x2bd)+_0x51a2ac;try{await _0x3a947b[_0x46c46d(0x1e4)](updateBrowserSession,_0x390c4d['id'],{'status':_0x46c46d(0x27f),'durationMs':_0x3a947b[_0x46c46d(0x1ea)](Date[_0x46c46d(0x201)](),_0x49dfa1),'errorMessage':_0x4f02ce});}catch{}throw new Error(_0x4f02ce);}const _0xbbc3c0=_0x121f79[_0x46c46d(0x1f5)]?'\x0aAUTHENTICATION\x20-\x20REQUIRED\x20BEFORE\x20STARTING:\x0aBEFORE\x20doing\x20anything\x20else,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x121f79[_0x46c46d(0x1f5)]+_0x46c46d(0x243):'',_0x50b7dd=_0x46c46d(0x267)+_0x180979+_0x46c46d(0x235)+_0xbbc3c0+_0x46c46d(0x22d)+_0x13aeb1+_0x46c46d(0x1ee)+_0x180979,_0x5a2f18={'type':_0x3a947b['iecCo'],'properties':{'success':{'type':_0x3a947b[_0x46c46d(0x260)]},'summary':{'type':_0x3a947b[_0x46c46d(0x237)]},'issues':{'type':_0x3a947b[_0x46c46d(0x233)],'items':{'type':_0x3a947b[_0x46c46d(0x26a)],'properties':{'severity':{'type':_0x46c46d(0x2a1),'enum':[_0x3a947b[_0x46c46d(0x268)],_0x3a947b[_0x46c46d(0x292)],_0x3a947b[_0x46c46d(0x1ef)]]},'description':{'type':_0x46c46d(0x2a1)},'screenshot':{'type':_0x46c46d(0x2a1)}},'required':[_0x3a947b[_0x46c46d(0x251)],_0x3a947b[_0x46c46d(0x263)]]}},'screenshots':{'type':_0x3a947b[_0x46c46d(0x233)],'items':{'type':_0x3a947b[_0x46c46d(0x237)]}}},'required':[_0x3a947b[_0x46c46d(0x28d)],_0x3a947b[_0x46c46d(0x2ac)]]},_0x382f66=_0x3a947b[_0x46c46d(0x275)](createMcpImageBase64Hook),_0x88656b=_0x3a947b[_0x46c46d(0x293)](query,{'prompt':_0x50b7dd,'options':{'cwd':process[_0x46c46d(0x2bb)](),'model':_0x46c46d(0x284),'mcpServers':{'ranger-browser':_0x55ecf0},'tools':[_0x46c46d(0x220),_0x46c46d(0x1e6)],'permissionMode':_0x3a947b[_0x46c46d(0x1eb)],'allowDangerouslySkipPermissions':!![],'outputFormat':{'type':_0x3a947b[_0x46c46d(0x2b0)],'schema':_0x5a2f18},'hooks':{'PostToolUse':[{'hooks':[_0x382f66]}]},'env':{...process[_0x46c46d(0x202)],'ANTHROPIC_API_KEY':_0x664f59,'ANTHROPIC_BASE_URL':_0x3a947b[_0x46c46d(0x275)](getAiProxyUrl)},'persistSession':![]}});let _0x1dced7=null,_0xdabc54=null,_0x3888a9=null;const _0x1ebe83=_0x3a947b[_0x46c46d(0x2aa)](getConversationFilePath,_0x390c4d['id']),_0x2b52f6=_0x3a947b[_0x46c46d(0x210)](dirname,_0x1ebe83);await _0x3a947b[_0x46c46d(0x2b6)](mkdir,_0x2b52f6,{'recursive':!![]});let _0x5b01c4=![];const _0x435c5a=_0x3a947b[_0x46c46d(0x26d)](_0x3a947b['kmKNP'](0x3b,0x3c),0x3e8),_0x5caa95=new Promise((_0x9331de,_0x179c2e)=>{const _0x7bc991=_0x46c46d;_0x3a947b[_0x7bc991(0x22b)](setTimeout,()=>{const _0x5cf890=_0x7bc991;_0x179c2e(new Error(_0x5cf890(0x203)));},_0x435c5a);});try{try{await Promise[_0x46c46d(0x21e)]([((async()=>{const _0x1135a7=_0x46c46d;if(_0x3a947b[_0x1135a7(0x2a6)](_0x1135a7(0x22a),_0x3a947b[_0x1135a7(0x28b)]))_0x4e7db2=_0x10d8bd['join']('\x20');else for await(const _0xfdfdc3 of _0x88656b){try{const _0x5f030b=_0x3a947b[_0x1135a7(0x241)](JSON['stringify'](_0xfdfdc3),'\x0a');await _0x3a947b[_0x1135a7(0x1fc)](appendFile,_0x1ebe83,_0x5f030b,_0x3a947b[_0x1135a7(0x27c)]);}catch{}const _0x45059a=_0xfdfdc3;if(_0x3a947b['orEzs'](_0x45059a[_0x1135a7(0x2b8)],_0x3a947b[_0x1135a7(0x248)])&&_0x45059a[_0x1135a7(0x2bf)]?.['content']){if(_0x3a947b[_0x1135a7(0x20b)](_0x3a947b['lKVtt'],_0x3a947b[_0x1135a7(0x216)]))for(const _0x2dd49d of _0x45059a[_0x1135a7(0x2bf)][_0x1135a7(0x295)]){_0x3a947b[_0x1135a7(0x2ab)]===_0x3a947b[_0x1135a7(0x209)]?_0x3c083b=_0x3327ce['errors']?.[_0x1135a7(0x28f)](',\x20')||_0x3a947b[_0x1135a7(0x2a7)]:_0x3a947b['SJrbW'](_0x2dd49d['type'],_0x3a947b['BVQbx'])&&_0x2dd49d['name']===_0x3a947b[_0x1135a7(0x208)]&&_0x2dd49d['input']&&(_0x3a947b[_0x1135a7(0x285)](_0x3a947b[_0x1135a7(0x256)],_0x3a947b[_0x1135a7(0x256)])?_0x3a947b[_0x1135a7(0x226)](_0x58435a[_0x1135a7(0x2b8)],_0x3a947b[_0x1135a7(0x299)])&&_0x3a947b[_0x1135a7(0x29f)](_0x3b777a[_0x1135a7(0x2ba)],_0x1135a7(0x274))&&_0x26ef08[_0x1135a7(0x21f)]&&(_0xf497b7=_0x59ef8c[_0x1135a7(0x21f)]):_0x3888a9=_0x2dd49d[_0x1135a7(0x21f)]);}else return _0x2aff2c(_0x3a947b[_0x1135a7(0x275)](_0x1f83fc),_0x3a947b['igWcK'],_0x4a5b38,'conversation.jsonl');}if(_0x45059a[_0x1135a7(0x239)]){let _0x48c48c=_0x45059a[_0x1135a7(0x239)];if(_0x45059a[_0x1135a7(0x2bf)]?.[_0x1135a7(0x295)]&&Array['isArray'](_0x45059a['message'][_0x1135a7(0x295)])){if(_0x3a947b[_0x1135a7(0x285)](_0x1135a7(0x25a),_0x3a947b[_0x1135a7(0x2a3)])){const _0x8f9323=_0x45059a['message'][_0x1135a7(0x295)][_0x1135a7(0x277)](_0x141a55=>_0x141a55[_0x1135a7(0x2b8)]===_0x1135a7(0x29d))[_0x1135a7(0x215)](_0xcdb969=>_0xcdb969[_0x1135a7(0x29d)]||'')['filter'](Boolean);if(_0x3a947b[_0x1135a7(0x262)](_0x8f9323[_0x1135a7(0x28e)],0x0)){if(_0x3a947b['EdmUG'](_0x3a947b[_0x1135a7(0x1fa)],_0x3a947b[_0x1135a7(0x1fa)]))throw new _0x1d5884(_0x1135a7(0x24f)+_0x18c33d+_0x1135a7(0x250)+_0x4a074c);else _0x48c48c=_0x8f9323['join']('\x20');}}else throw new _0x14b294(_0x1135a7(0x234));}_0xdabc54=_0x48c48c;}if(_0x3a947b[_0x1135a7(0x29f)](_0xfdfdc3['type'],_0x3a947b['HqIEC'])){if(_0x3a947b['SJrbW'](_0xfdfdc3['subtype'],_0x1135a7(0x266))&&_0xfdfdc3['structured_output']){if(_0x3a947b[_0x1135a7(0x296)](_0x3a947b[_0x1135a7(0x236)],_0x3a947b[_0x1135a7(0x236)])){if(_0x29b8b2&&_0x3a947b[_0x1135a7(0x226)](_0x33ff36[_0x1135a7(0x249)]?.[_0x1135a7(0x28e)],0x0))_0x2148d4=_0x13686d,_0x15ff64=null;else!_0x4253b8&&(_0x49cd60=_0x33c4a8['errors']?.[_0x1135a7(0x28f)](',\x20')||_0x3a947b[_0x1135a7(0x2a7)]);}else _0x1dced7=_0xfdfdc3[_0x1135a7(0x1f7)];}else{if(_0xfdfdc3[_0x1135a7(0x2a4)]!==_0x3a947b[_0x1135a7(0x28d)]){if(_0x3888a9&&_0x3a947b[_0x1135a7(0x29f)](_0xfdfdc3['errors']?.['length'],0x0))_0x1dced7=_0x3888a9,_0xdabc54=null;else{if(!_0xdabc54){if(_0x3a947b[_0x1135a7(0x200)](_0x3a947b[_0x1135a7(0x24a)],_0x3a947b[_0x1135a7(0x24a)])){const _0x1cfff4=_0x7c263d[_0x1135a7(0x2bf)][_0x1135a7(0x295)][_0x1135a7(0x277)](_0x8dd86e=>_0x8dd86e[_0x1135a7(0x2b8)]===_0x1135a7(0x29d))[_0x1135a7(0x215)](_0x335faf=>_0x335faf[_0x1135a7(0x29d)]||'')[_0x1135a7(0x277)](_0x4c9d29);_0x3a947b[_0x1135a7(0x262)](_0x1cfff4['length'],0x0)&&(_0x97163f=_0x1cfff4[_0x1135a7(0x28f)]('\x20'));}else _0xdabc54=_0xfdfdc3[_0x1135a7(0x249)]?.['join'](',\x20')||_0x3a947b[_0x1135a7(0x2a7)];}}}}}}})()),_0x5caa95]);}catch(_0xbbefa5){_0x3a947b['JqapD']!==_0x46c46d(0x1f6)?_0x181d09=_0x254eb4[_0x46c46d(0x1f7)]:_0xdabc54=_0xbbefa5 instanceof Error?_0xbbefa5[_0x46c46d(0x2bf)]:_0x3a947b[_0x46c46d(0x28c)](String,_0xbbefa5);}const _0x5d795b=_0x3a947b['wpojL'](Date[_0x46c46d(0x201)](),_0x49dfa1);let _0x189828;try{if(_0x3a947b[_0x46c46d(0x257)](_0x3a947b[_0x46c46d(0x286)],_0x3a947b[_0x46c46d(0x286)]))for(const _0x4d7284 of _0x507048[_0x46c46d(0x2bf)][_0x46c46d(0x295)]){_0x3a947b[_0x46c46d(0x226)](_0x4d7284[_0x46c46d(0x2b8)],_0x46c46d(0x288))&&_0x3a947b[_0x46c46d(0x226)](_0x4d7284[_0x46c46d(0x2ba)],_0x3a947b['BKjFf'])&&_0x4d7284[_0x46c46d(0x21f)]&&(_0x25a47a=_0x4d7284['input']);}else{const _0x55c25f=_0x3a947b['UOBFk'](getTraceDirectory,_0x390c4d['id']);if(_0x3a947b[_0x46c46d(0x214)](existsSync,_0x55c25f)){const _0x293008=await _0x3a947b[_0x46c46d(0x279)](readdir,_0x55c25f);if(_0x3a947b['znJgy'](_0x293008[_0x46c46d(0x28e)],0x0)){if(_0x3a947b['yFRUX']===_0x3a947b[_0x46c46d(0x230)])throw new _0xef968d(_0x3a947b['TYIJZ']);else{const _0x13ef21=_0x3a947b[_0x46c46d(0x22b)](join,_0x55c25f,_0x3a947b[_0x46c46d(0x29c)]);if(_0x3a947b[_0x46c46d(0x2aa)](existsSync,_0x13ef21)){if('EGAmm'===_0x46c46d(0x24e)){const _0x408f36=await _0x3a947b[_0x46c46d(0x254)](zipDirectory,_0x13ef21),_0xbea4e3=_0x3a947b[_0x46c46d(0x25c)](computeChecksum,_0x408f36),_0x4a2532=await _0x3a947b[_0x46c46d(0x22f)](getUploadUrls,_0x390c4d['id'],_0x3a947b['SqjjM'],_0x3a947b[_0x46c46d(0x1f0)],{'size':_0x408f36[_0x46c46d(0x28e)],'checksum':_0xbea4e3});await _0x3a947b['DAtFz'](uploadTrace,_0x4a2532[_0x46c46d(0x2af)],_0x408f36),_0x189828=_0x4a2532[_0x46c46d(0x244)];}else throw new _0x4fe135(_0x46c46d(0x283)+_0x6c9058+_0x46c46d(0x2b2)+_0x4e1506+_0x46c46d(0x20e));}const _0x4dfb3f=_0x293008[_0x46c46d(0x277)](_0x1e2b62=>_0x1e2b62[_0x46c46d(0x1e7)]()[_0x46c46d(0x27b)](_0x46c46d(0x270)));for(const _0x24103d of _0x4dfb3f){try{if(_0x3a947b[_0x46c46d(0x259)]!==_0x3a947b[_0x46c46d(0x259)]){const _0x27df23='4|5|1|2|3|0'[_0x46c46d(0x271)]('|');let _0x3bc36f=0x0;while(!![]){switch(_0x27df23[_0x3bc36f++]){case'0':_0x5808d8[_0x46c46d(0x1e3)]=_0x19da8d;continue;case'1':_0x37e329['sessionDir']=_0x3a947b['FSWWY'](_0x11bcbe,_0x7f3850['id']);continue;case'2':_0x33c899['durationMs']=_0x4f4663;continue;case'3':_0xdcb15a[_0x46c46d(0x287)]=_0x39f323;continue;case'4':_0x15545b[_0x46c46d(0x25b)]=_0x3a947b['dRYNe'](_0x2cb9d1,_0x5cfdc9);continue;case'5':_0x49687f[_0x46c46d(0x246)]=_0x26d621['id'];continue;}break;}}else{const _0xe1f5c7=_0x3a947b[_0x46c46d(0x24d)](join,_0x55c25f,_0x24103d),_0x3369b2=await _0x3a947b[_0x46c46d(0x210)](readFile,_0xe1f5c7),_0x269186=_0x3a947b[_0x46c46d(0x254)](computeChecksum,_0x3369b2),_0x1c56eb=await _0x3a947b[_0x46c46d(0x22f)](getUploadUrls,_0x390c4d['id'],_0x24103d,_0x46c46d(0x2c1),{'size':_0x3369b2[_0x46c46d(0x28e)],'checksum':_0x269186});await _0x3a947b[_0x46c46d(0x1ff)](uploadScreenshot,_0x1c56eb[_0x46c46d(0x2af)],_0x3369b2);}}catch{}}}}}!_0x5b01c4&&(_0x3a947b['dVXNs'](_0x46c46d(0x27d),_0x3a947b[_0x46c46d(0x247)])?_0x1b04cb(new _0x5a9678(_0x3a947b[_0x46c46d(0x27a)])):_0x5b01c4=await _0x3a947b['nZdes'](uploadConversationArtifact,_0x390c4d['id'],_0x1ebe83));const _0x53582c=_0x1dced7,_0x4a6323={'status':_0xdabc54?_0x3a947b['cIrVK']:_0x46c46d(0x24b),'durationMs':_0x5d795b,'agentResponse':_0x53582c?.[_0x46c46d(0x27e)]||_0xdabc54||undefined,'errorMessage':_0x3a947b[_0x46c46d(0x238)](_0xdabc54,undefined)};await _0x3a947b[_0x46c46d(0x2b1)](updateBrowserSession,_0x390c4d['id'],_0x4a6323),_0x3a947b[_0x46c46d(0x29a)](_0x53582c,_0x189828)&&(_0x53582c[_0x46c46d(0x25b)]=_0x3a947b['FSWWY'](buildTraceViewerUrl,_0x189828),_0x53582c[_0x46c46d(0x246)]=_0x390c4d['id'],_0x53582c[_0x46c46d(0x278)]=_0x3a947b[_0x46c46d(0x25f)](getTraceDirectory,_0x390c4d['id']),_0x53582c['durationMs']=_0x5d795b,_0x53582c['task']=_0x13aeb1,_0x53582c[_0x46c46d(0x1e3)]=_0x180979);}}catch{}if(_0x3a947b[_0x46c46d(0x29a)](_0xdabc54,!_0x1dced7)){if(_0x3a947b['dVXNs'](_0x3a947b[_0x46c46d(0x2c2)],_0x3a947b[_0x46c46d(0x297)]))return![];else throw new Error(_0x46c46d(0x211)+_0xdabc54);}if(!_0x1dced7){if(_0x3a947b[_0x46c46d(0x2b3)]==='FPOfi')throw new Error(_0x3a947b[_0x46c46d(0x225)]);else{if(_0x50a91a){const _0x3e9091=_0x7ad31b[_0x46c46d(0x23f)](_0x431081,arguments);return _0x417844=null,_0x3e9091;}}}return _0x1dced7;}finally{!_0x5b01c4&&(_0x5b01c4=await _0x3a947b[_0x46c46d(0x269)](uploadConversationArtifact,_0x390c4d['id'],_0x1ebe83));await _0x3a947b[_0x46c46d(0x1e9)](cleanupTempFiles,_0x4c049f);try{const _0x2e975d=_0x3a947b[_0x46c46d(0x23b)](getTraceDirectory,_0x390c4d['id']);if(_0x3a947b['caMmc'](existsSync,_0x2e975d)){if(_0x3a947b['QRWbR']===_0x3a947b['QRWbR'])await _0x3a947b[_0x46c46d(0x1ed)](rm,_0x2e975d,{'recursive':!![],'force':!![]});else return![];}}catch{}try{_0x3a947b[_0x46c46d(0x1f4)](existsSync,_0x2b52f6)&&await _0x3a947b['VuPqQ'](rm,_0x2b52f6,{'recursive':!![],'force':!![]});}catch{}}}
1
+ function _0x810b(){const _0x58cb49=['BuvRBhi','Dg9tDhjPBMC','z1rou1u','Bxbvvee','v1n1s2O','DgfZAW','C2vZC2LVBNm','u3rZBNm','ELvVyuu','EMLW','vxjVwve','tvDfww0','tM8GqvbjihrVA2vUignVBMzPz3vYzwqUifj1BJOGCMfUz2vYihnLDhvWifT0B2TLBL0','qxDcr2u','BfnbA3O','zw52','t1fACLq','C3vIDhLWzq','uhjVzMLSzsaI','ExvIsxi','y0fhu2C','Be5Kwey','vwHfv0G','v0HTuvi','y2DSCNG','y29TCgXLDgvK','ANnprKS','ls1JB25MAwC','BwnWx19Yyw5NzxiTyNjVD3nLCL9FkG','Dg9mB3DLCKnHC2u','z0nowNK','ug5Sse0','C01iseq','BgvUz3rO','v2HLuKm','tMHUC2q','Dvr2zLm','EMrABfG','AxnbCNjHEq','ANnVBMW','sgXiDwq','kcGOlISPkYKRksSK','zxjYB3jZ','qKXpq0TfuG','C3rYAw5NAwz5','A1jMtfa','CMvZDwX0','vM9uyNy','wKLTt1u','Bg9N','zgvZy3jPChrPB24','mJKWnZq4AffOC0rU','C3vJy2vZCW','yuv4u3O','DerIt2e','y29UC3rYDwn0B3i','EwfIzMq','qNjVD3nLCIbZzxnZAw9UignYzwf0zwq6ia','qwDLBNqGzxHLy3v0Aw9UihrPBwvKig91DcbHzNrLCIa1osbTAw51DgvZ','DxrMltG','igjHC2vvCMWGphvYBd4','rw5hDLa','Cg5N','Bwfqs3i','zvj6q2S','qMLvzKy','DhPjyum','ChDxrui','rwjgBuW','s29Utwi','BMfTzq','DxjS','C3rYAw5N','Dezfqwy','DhLWzq','C3vTBwfYEq','zhvYyxrPB25nCW','r2TUufm','u3rYDwn0DxjLze91Dhb1Da','DhjHy2vwAwv3zxjvCMW','te5tzeK','tKHdr2O','wffLvLy','wNHjDfu','s2DuzeC','mtC3ndr6B1fKBhu','q1PHrxO','BNb4','yLPTDge','y29UDgvUDa','DNnsqvi','q2nPCfC','BhzlBvC','ww91igfYzsbHifvjifzLCMLMAwvYlIbzB3vYie9otfKGAM9IigLZihrVignSAwnRihrOCM91z2GGysbvssbMBg93igfUzcbYzxbVCNqGyNvNCYbPBw1LzgLHDgvSEsb3AgvUigzVDw5KlGOkq1jjveLdquWGvvjmifjfuvvjuKvnru5uoGPzB3vYigjHC2uGvvjmigLZoIa','sLroA3K','Aw5WDxq','A2L0uxu','s3DQsLu','rxnltNy','DfLeqK0','C2vZC2LVBKLK','yvzlt3m','z3niywG','rfP4q2G','Bw9cBe4','zw5KC1DPDgG','CKXMuei','Eg52txq','DLL0tNm','cGPbzNrLCIbJB21WBgv0Aw5Nigf1DgHLBNrPy2f0Aw9UlcbWCM9JzwvKihDPDgGGDgHLihzLCMLMAwnHDgLVBIb0yxnRigjLBg93lGPjzIbHDxrOzw50AwnHDgLVBIbMywLSCYWGCMvWB3j0igL0igLTBwvKAwf0zwX5igfZigeGyMXVy2TLCI4kcG','t1jZBwS','B1j4wLm','AM9PBG','tLDywve','B21uALe','C3bSAxq','rgzhAey','whDTzeq','Ew15zLu','z0LKt2C','ANnVBL9Zy2HLBwe','nde3nty0uxLXz1rf','wvb5ruO','rNzMDgG','wwPmBwG','BM93','DMvyCu0','uuH6BLO','yNLWyxnZugvYBwLZC2LVBNm','qxnYBxi','svrkzM4','C2vZC2LVBKrPCG','Dgv4Da','tufkt1i','z1Pmu1u','BgPOBgq','ANr4z3O','AKrryK0','DxbSB2fKvxjS','yxnZAxn0yw50','uhDVuhm','DLzirhq','iIaMjIb6AxaGlxiGiG','mtG0nJG0z2jJq05j','vxDYsee','AKLsvKi','Be1tBxu','v3HMzwG','y3DK','zg9Ttwm','wvfIqw8','CgLWzq','ywTAuwy','y29UzMLNugf0Aa','r2zJueO','EuLru1u','EwHSzKm','vKHpANu','AvDbrg4','zxLezve','tvjZveS','vgPorvy','rMvjrhm','zM5ZA1y','BwvZC2fNzq','vefVBM0','tfbms2m','tM8GyMfZzvvYBcbJB25MAwD1CMvKigzVCIbWCM9MAwXLici','A0Tbsvq','t25mvMq','mZC2otmYyw5nCuvn','s0rsCMG','zg93BMXVywrvCMW','vMvYAwzPy2f0Aw9UigzHAwXLzdOG','C3rYDwn0DxjLzf9VDxrWDxq','yMfZzvvYBa','ufrHuxu','q1rTy3e','u1HQrhO','y29UDMvYC2f0Aw9UlMPZB25S','t3rPAuu','tM8Gywn0AxzLihbYB2zPBguUifj1BJOGCMfUz2vYihbYB2zPBguGDxnLidXWCM9MAwXLlw5HBwu+','uKD2AMy','ENvZBNi','AhjUrfm','r29vCuu','tM8GCMvZDwX0ihjLy2vPDMvKigzYB20GywDLBNq','nJm3ntu2mhzcv3vPCq','mxbwBMffCa','A2f3t3q','cKfvveHftLrjq0fusu9oic0GuKvrvuLsruqGqKvgt1jfifnuqvjusu5hoGPcruzpuKuGzg9PBMCGyw55DgHPBMCGzwXZzsWGEw91ie1vu1qGyxv0AgvUDgLJyxrLihvZAw5NihrOzxnLihn0zxbZoGO','vhHlA1O','A253tMK','reDRsxO','uvDuBha','mtbyALr4CuS','Dg9VBf91C2u','BgPkzha','vw5RBM93BIbLCNjVCG','nJy2uvrmv21R','tLjsyMC','y2XHDwrLlw9WDxmTnc01','u3PyqwS','qMLTreW','uLLmAeO','DhjHy2uUEMLW','DgTuEKW','EM95tfu','yxjYyxK','y2qGiG','iIbUB3qGzM91BMqUifj1BJOGCMfUz2vYihbYB2zPBguGywrKia','cLvstdOG','sMv6BwO','cKnssvrjq0fmieLou1rsvunusu9ouZOkms4GtMf2AwDHDguGDg8GDgHLifvstcbHyM92zsb1C2LUzYbICM93C2vYx25HDMLNyxrLcJiUifrHA2uGysbZBMfWC2HVDcb3AxrOigjYB3DZzxjFC25HChnOB3qGDg8GC2vLihrOzsbWywDLcJmUiev4zwn1DguGDgHLihrHC2SGC3rLCc1IEs1ZDgvWihvZAw5NigjYB3DZzxiGDg9VBhmknc4GswyGEw91igzPBMqGqu5zigj1z3mSihjLCg9YDcbPBw1LzgLHDgvSEsb3AxrOihnLDMvYAxr5cJuUifjLDhvYBIb5B3vYigzPBMrPBMDZigLUihrOzsbZDhj1y3r1CMvKig91Dhb1DcbMB3jTyxqkcLLVDxiGDgfZAZOG','qhjHBMDLCI10zxn0Aw5Nl3bSyxL3CMLNAhq','sfL0Bvq','suD2qve','zMLSDgvY','Cfv3Bg8','yM9VBgvHBG','yvneAgG','y1bQuhO','CKXuAwC','wwn1vvq','zM1sv0q','Bwv3t08','shHkEgW','zMfPBgvK','DxrpywO','rerZqum','C2v2zxjPDhK','zxjYB3i','BwfW','u2Tfyvq','s25xy0e','z21vuMu','qMrKz0m','C2vHCMnO','A2jutxq','vNrHD3m','yxbWBhK','D0rLv3G','tuLot1i','CNvUlw1JCc1Zzxj2zxi','mti2otqWmvfsv0TjvW','t1HUvgm','CMfUz2vYlwjYB3DZzxiTC2vZC2LVBNm'];_0x810b=function(){return _0x58cb49;};return _0x810b();}(function(_0x4dab23,_0x4b34fe){const _0x6938f2=_0x4731,_0x32c55b=_0x4dab23();while(!![]){try{const _0x288116=parseInt(_0x6938f2(0x115))/0x1*(-parseInt(_0x6938f2(0x8c))/0x2)+parseInt(_0x6938f2(0x103))/0x3+-parseInt(_0x6938f2(0xe8))/0x4*(parseInt(_0x6938f2(0x11c))/0x5)+-parseInt(_0x6938f2(0xd2))/0x6+-parseInt(_0x6938f2(0x14d))/0x7+-parseInt(_0x6938f2(0xae))/0x8*(parseInt(_0x6938f2(0x120))/0x9)+parseInt(_0x6938f2(0x114))/0xa;if(_0x288116===_0x4b34fe)break;else _0x32c55b['push'](_0x32c55b['shift']());}catch(_0x4fe7bf){_0x32c55b['push'](_0x32c55b['shift']());}}}(_0x810b,0x1af4f));const _0x9fcf11=(function(){let _0x4ca56e=!![];return function(_0x2da944,_0x369d5b){const _0x2e72b9=_0x4ca56e?function(){if(_0x369d5b){const _0x39608b=_0x369d5b['apply'](_0x2da944,arguments);return _0x369d5b=null,_0x39608b;}}:function(){};return _0x4ca56e=![],_0x2e72b9;};}()),_0xfe13c9=_0x9fcf11(this,function(){const _0x4a0924=_0x4731,_0x31673b={'GfcPJ':_0x4a0924(0x179)};return _0xfe13c9[_0x4a0924(0x151)]()['search'](_0x31673b[_0x4a0924(0xf3)])['toString']()[_0x4a0924(0x90)](_0xfe13c9)[_0x4a0924(0x146)](_0x31673b[_0x4a0924(0xf3)]);});_0xfe13c9();import{query}from'@anthropic-ai/claude-agent-sdk';import{join,dirname}from'path';import{readFile,readdir,appendFile,mkdir,rm}from'fs/promises';import{existsSync}from'fs';import{execSync}from'child_process';import{tmpdir}from'os';function _0x4731(_0x4e7ffe,_0x4e3d70){_0x4e7ffe=_0x4e7ffe-0x89;const _0x5c112c=_0x810b();let _0xfe13c9=_0x5c112c[_0x4e7ffe];if(_0x4731['UIzbFx']===undefined){var _0x9fcf11=function(_0x7ff506){const _0x2bb0e1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4bb6ef='',_0x46dba5='',_0x4effea=_0x4bb6ef+_0x9fcf11;for(let _0x1fc7b3=0x0,_0x150764,_0xc0a0a4,_0x501abb=0x0;_0xc0a0a4=_0x7ff506['charAt'](_0x501abb++);~_0xc0a0a4&&(_0x150764=_0x1fc7b3%0x4?_0x150764*0x40+_0xc0a0a4:_0xc0a0a4,_0x1fc7b3++%0x4)?_0x4bb6ef+=_0x4effea['charCodeAt'](_0x501abb+0xa)-0xa!==0x0?String['fromCharCode'](0xff&_0x150764>>(-0x2*_0x1fc7b3&0x6)):_0x1fc7b3:0x0){_0xc0a0a4=_0x2bb0e1['indexOf'](_0xc0a0a4);}for(let _0x3bcd56=0x0,_0x3dc6ee=_0x4bb6ef['length'];_0x3bcd56<_0x3dc6ee;_0x3bcd56++){_0x46dba5+='%'+('00'+_0x4bb6ef['charCodeAt'](_0x3bcd56)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x46dba5);};_0x4731['vBdJYU']=_0x9fcf11,_0x4731['RXbvEH']={},_0x4731['UIzbFx']=!![];}const _0x810b62=_0x5c112c[0x0],_0x4731f9=_0x4e7ffe+_0x810b62,_0xe9929=_0x4731['RXbvEH'][_0x4731f9];if(!_0xe9929){const _0x375cc0=function(_0x31c771){this['iaweCe']=_0x31c771,this['NIwobC']=[0x1,0x0,0x0],this['DvXHCs']=function(){return'newState';},this['sslspW']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['RfIueF']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x375cc0['prototype']['iLJknW']=function(){const _0x3c55c9=new RegExp(this['sslspW']+this['RfIueF']),_0x60377a=_0x3c55c9['test'](this['DvXHCs']['toString']())?--this['NIwobC'][0x1]:--this['NIwobC'][0x0];return this['JSqUIT'](_0x60377a);},_0x375cc0['prototype']['JSqUIT']=function(_0x2ec183){if(!Boolean(~_0x2ec183))return _0x2ec183;return this['MYqDsc'](this['iaweCe']);},_0x375cc0['prototype']['MYqDsc']=function(_0xed339f){for(let _0x22b3d7=0x0,_0x209343=this['NIwobC']['length'];_0x22b3d7<_0x209343;_0x22b3d7++){this['NIwobC']['push'](Math['round'](Math['random']())),_0x209343=this['NIwobC']['length'];}return _0xed339f(this['NIwobC'][0x0]);},new _0x375cc0(_0x4731)['iLJknW'](),_0xfe13c9=_0x4731['vBdJYU'](_0xfe13c9),_0x4731['RXbvEH'][_0x4731f9]=_0xfe13c9;}else _0xfe13c9=_0xe9929;return _0xfe13c9;}import{loadSettings,resolveEnvVars,buildPlaywrightConfig,cleanupTempFiles,getEnvDir}from'./utils/settings.js';import{createBrowserSession,updateBrowserSession,getUploadUrls,uploadTrace,uploadConversation,uploadScreenshot,buildTraceViewerUrl,getProxySessionToken,computeChecksum}from'./utils/browserSessionsApi.js';import{getAiProxyUrl}from'./utils/environment.js';import{getToken}from'./utils/keychain.js';import{getRangerDir}from'./utils/rangerRoot.js';import{readActiveProfileName}from'./utils/activeProfile.js';import{createMcpImageBase64Hook}from'./utils/mcpImageBase64.js';async function zipDirectory(_0x4f8726){const _0x236ef5=_0x4731,_0x5987a2={'dQIYD':function(_0x38b8d8,_0x1a2503,_0x2ad274){return _0x38b8d8(_0x1a2503,_0x2ad274);},'VmtAT':_0x236ef5(0xf0),'akZQf':function(_0x2e126e,_0x53bec3){return _0x2e126e(_0x53bec3);},'uSBzT':function(_0x3ba399,_0x4b2895,_0x86dec4){return _0x3ba399(_0x4b2895,_0x86dec4);}},_0x5f0c5d=join(_0x4f8726,'..','trace-upload.zip');_0x5987a2['dQIYD'](execSync,_0x236ef5(0x12a)+_0x4f8726+_0x236ef5(0xe7)+_0x5f0c5d+'\x22\x20.',{'stdio':_0x5987a2['VmtAT']});const _0x1c1423=await _0x5987a2[_0x236ef5(0xf1)](readFile,_0x5f0c5d);return _0x5987a2['uSBzT'](execSync,'rm\x20\x22'+_0x5f0c5d+'\x22',{'stdio':_0x5987a2['VmtAT']}),_0x1c1423;}function getTraceDirectory(_0x5e87de){const _0x2ded4a=_0x4731,_0xc3db84={'jsOFK':function(_0x10abb6){return _0x10abb6();},'KIdMT':'sessions'};return join(_0xc3db84[_0x2ded4a(0x16a)](getRangerDir),_0xc3db84['KIdMT'],_0x5e87de);}function getConversationFilePath(_0x11f228){const _0xed17c0=_0x4731,_0x48711a={'ZnuKh':function(_0x38b4be,_0x52a90a,_0x148d98,_0xa5245b,_0x1249a8){return _0x38b4be(_0x52a90a,_0x148d98,_0xa5245b,_0x1249a8);},'aExSz':function(_0x16d593){return _0x16d593();}};return _0x48711a['ZnuKh'](join,_0x48711a[_0xed17c0(0x8e)](tmpdir),_0xed17c0(0x14f),_0x11f228,'conversation.jsonl');}async function uploadConversationArtifact(_0x4f54ce,_0x3e2bc1){const _0x4ce89c=_0x4731,_0x1f270a={'tzIaC':function(_0x535dac,_0x55e9bd){return _0x535dac===_0x55e9bd;},'domMc':function(_0xf11a85,_0x313bdb){return _0xf11a85===_0x313bdb;},'fmRWD':_0x4ce89c(0xa7),'yIQSU':function(_0x451d2b,_0x406e5f){return _0x451d2b(_0x406e5f);},'fnskV':function(_0x114d3a,_0x443551){return _0x114d3a!==_0x443551;},'kitQu':'NgGPw','yubIr':_0x4ce89c(0x16f),'OtiiE':function(_0x3e7f23,_0x5cf504){return _0x3e7f23(_0x5cf504);},'csjmL':function(_0x266bbd,_0xb07b7c){return _0x266bbd(_0xb07b7c);},'tkTzL':_0x4ce89c(0x10c),'VoTbv':function(_0x1fc1d1,_0x491b60,_0x39c338){return _0x1fc1d1(_0x491b60,_0x39c338);},'gCNZy':_0x4ce89c(0x15a)};if(!_0x1f270a[_0x4ce89c(0xf4)](existsSync,_0x3e2bc1))return![];try{if(_0x1f270a[_0x4ce89c(0xfc)](_0x1f270a[_0x4ce89c(0xb9)],_0x1f270a[_0x4ce89c(0x163)])){const _0xe46cc5=await _0x1f270a[_0x4ce89c(0x10d)](readFile,_0x3e2bc1),_0x5a50f2=_0x1f270a['csjmL'](computeChecksum,_0xe46cc5),_0x4906b2=await getUploadUrls(_0x4f54ce,_0x1f270a[_0x4ce89c(0x127)],_0x4ce89c(0x177),{'size':_0xe46cc5[_0x4ce89c(0x171)],'checksum':_0x5a50f2});return await _0x1f270a[_0x4ce89c(0x17f)](uploadConversation,_0x4906b2[_0x4ce89c(0xe3)],_0xe46cc5),!![];}else throw new _0x38a617('No\x20result\x20received\x20from\x20agent');}catch{if(_0x1f270a[_0x4ce89c(0x16e)]!==_0x1f270a[_0x4ce89c(0x16e)])for(const _0x5b0b28 of _0x4aa5b4['message'][_0x4ce89c(0xb2)]){_0x1f270a[_0x4ce89c(0x9b)](_0x5b0b28[_0x4ce89c(0xa3)],'tool_use')&&_0x1f270a[_0x4ce89c(0xee)](_0x5b0b28[_0x4ce89c(0x9f)],_0x1f270a[_0x4ce89c(0x139)])&&_0x5b0b28[_0x4ce89c(0xb8)]&&(_0x2fa83e=_0x5b0b28['input']);}else return![];}}export async function verifyInBrowser(_0x402f8a,_0x1893f7={}){const _0x1cb24c=_0x4731,_0x7bc3eb={'jIRVB':function(_0x41018f,_0x5e17c5){return _0x41018f(_0x5e17c5);},'eyDeQ':_0x1cb24c(0x93),'kbTMt':function(_0x495906,_0xb20034){return _0x495906===_0xb20034;},'oRxZS':_0x1cb24c(0x157),'pwWEB':function(_0x2be402,_0x121900){return _0x2be402===_0x121900;},'hwpmT':_0x1cb24c(0xa7),'MRsTK':_0x1cb24c(0x11f),'EbFmL':function(_0x498dc1,_0x48e539,_0x391109,_0x52e3de,_0x226d5d){return _0x498dc1(_0x48e539,_0x391109,_0x52e3de,_0x226d5d);},'KwjJU':function(_0x10907d){return _0x10907d();},'EsKNv':_0x1cb24c(0x14f),'DglQx':_0x1cb24c(0x10c),'NHCGj':_0x1cb24c(0x179),'RGvjf':function(_0x2b98c3,_0x44e1ce,_0x4cfff6){return _0x2b98c3(_0x44e1ce,_0x4cfff6);},'QgMKy':'VaAaZ','HxJxl':_0x1cb24c(0xfb),'TjNEV':function(_0x46aa45,_0x4bb636){return _0x46aa45!==_0x4bb636;},'UwrHA':_0x1cb24c(0xbc),'GoUqE':function(_0x368ce2,_0x12515f){return _0x368ce2+_0x12515f;},'LNSdI':function(_0x49a27e,_0x5e9d08,_0x513f90,_0x10a8c8){return _0x49a27e(_0x5e9d08,_0x513f90,_0x10a8c8);},'QzpNy':_0x1cb24c(0xe4),'vsRAR':_0x1cb24c(0xe1),'yhlfC':_0x1cb24c(0x136),'Fvfth':_0x1cb24c(0x167),'zUoaE':function(_0x1d2d50,_0x2ce69f){return _0x1d2d50===_0x2ce69f;},'GknPS':_0x1cb24c(0x11d),'cglrx':function(_0x49bf98,_0x194e90){return _0x49bf98===_0x194e90;},'tDbOa':_0x1cb24c(0x145),'maPKr':_0x1cb24c(0x11a),'CTmcq':function(_0x5e4cdc,_0x1fe32c){return _0x5e4cdc===_0x1fe32c;},'ddBYB':'WWEmE','kKAIT':_0x1cb24c(0xd7),'kawOt':_0x1cb24c(0x173),'XQeVV':function(_0x20e9bc,_0x33a1e7){return _0x20e9bc>_0x33a1e7;},'wDeWx':function(_0x372a81,_0x59db05){return _0x372a81===_0x59db05;},'KgRQU':_0x1cb24c(0xc1),'Asrmr':_0x1cb24c(0x17e),'YjLmh':_0x1cb24c(0x8d),'xnvMt':function(_0x17ca5d,_0x247115){return _0x17ca5d!==_0x247115;},'QHznZ':_0x1cb24c(0xfe),'WheRC':'KAYgK','ljJdp':function(_0x53a5be,_0x3aa23f){return _0x53a5be!==_0x3aa23f;},'SkEaT':_0x1cb24c(0x99),'uTvfS':function(_0x33046c,_0x173f29,_0x9952c0,_0x3e47c2){return _0x33046c(_0x173f29,_0x9952c0,_0x3e47c2);},'xjoib':_0x1cb24c(0x156),'vVHDt':function(_0x3bd9b4,_0x413200){return _0x3bd9b4(_0x413200);},'SzXAk':function(_0x2dc894,_0x5d6a96){return _0x2dc894(_0x5d6a96);},'NRRbg':_0x1cb24c(0x10e),'aVKOs':_0x1cb24c(0x15c),'HYtmT':function(_0x3f6016,_0x5352be){return _0x3f6016(_0x5352be);},'OnLVd':function(_0x31bf35,_0x472fc6){return _0x31bf35(_0x472fc6);},'thLXj':_0x1cb24c(0x165),'hrnDS':function(_0x47acf4,_0xeac3c0){return _0x47acf4(_0xeac3c0);},'zdZlX':'zusnr','YJdRO':'ICOHh','YPyEJ':_0x1cb24c(0xb0),'rLfPB':_0x1cb24c(0x12f),'PwoPs':_0x1cb24c(0x14c),'vYtNs':_0x1cb24c(0x16b),'BiUfF':'bmHmU','Wxfeh':_0x1cb24c(0xf7),'AwBGe':_0x1cb24c(0x152),'CZaEz':function(_0x29d1c1,_0x3543b9){return _0x29d1c1 instanceof _0x3543b9;},'cAGSg':_0x1cb24c(0x13c),'ymyfU':'object','gIdOg':_0x1cb24c(0x134),'bZmta':_0x1cb24c(0xa1),'gmURe':_0x1cb24c(0x129),'yabfd':_0x1cb24c(0x17b),'DllHy':_0x1cb24c(0xde),'sLIsA':_0x1cb24c(0x14b),'DDsAC':_0x1cb24c(0xa4),'RYLhJ':function(_0x28da40){return _0x28da40();},'ORsmk':function(_0x18312d,_0x14045b){return _0x18312d(_0x14045b);},'LPLKc':_0x1cb24c(0x122),'pUwlo':_0x1cb24c(0x16c),'lvKmW':'Bash','akluK':_0x1cb24c(0xd1),'utOaj':function(_0x50a6f4,_0x2c35ad){return _0x50a6f4*_0x2c35ad;},'KnWcA':function(_0x4ae060,_0x254027){return _0x4ae060!==_0x254027;},'IGvAQ':_0x1cb24c(0x10b),'kRfLP':_0x1cb24c(0xce),'WSuKj':_0x1cb24c(0x135),'VHOju':function(_0x5e827c,_0x1d3124){return _0x5e827c-_0x1d3124;},'BimDL':function(_0x37fbe2,_0x5d893e){return _0x37fbe2(_0x5d893e);},'mpUTA':_0x1cb24c(0xb7),'DZxCh':_0x1cb24c(0xcd),'jDQbM':function(_0x24c820,_0x141891,_0x58fea4){return _0x24c820(_0x141891,_0x58fea4);},'sMHHD':'traces','tQGIp':function(_0x20d583,_0x4e73e9){return _0x20d583(_0x4e73e9);},'OQZrT':function(_0x8f0559,_0x59b880){return _0x8f0559(_0x59b880);},'shNwL':function(_0x4e03f3,_0x17ee28){return _0x4e03f3(_0x17ee28);},'UyevO':_0x1cb24c(0x126),'NWXYQ':_0x1cb24c(0x159),'TPxtO':function(_0x2c1b88,_0x13d69c,_0x176277){return _0x2c1b88(_0x13d69c,_0x176277);},'HlHud':_0x1cb24c(0x96),'MWEYm':function(_0x4e2352,_0x436750,_0xdf1655){return _0x4e2352(_0x436750,_0xdf1655);},'omTjQ':function(_0x87504,_0x14745d){return _0x87504(_0x14745d);},'TxKkZ':_0x1cb24c(0x97),'ZImOU':function(_0x4044ec,_0x4cec0b,_0x354d6b){return _0x4044ec(_0x4cec0b,_0x354d6b);},'QWTlp':_0x1cb24c(0x169),'DehWS':function(_0x30098a,_0xf955c4){return _0x30098a||_0xf955c4;},'KgTdG':_0x1cb24c(0xbf),'mewOO':'0|1|2|4|3|5','rFLpf':function(_0x1aec59,_0x88dcaa){return _0x1aec59(_0x88dcaa);},'OXnTc':function(_0x22e8a8,_0x1d4bd2){return _0x22e8a8&&_0x1d4bd2;},'PTaQu':_0x1cb24c(0x12d),'Vtaws':_0x1cb24c(0x113),'YQbAo':function(_0x2b5f72,_0xe8cda4){return _0x2b5f72(_0xe8cda4);},'mEklr':function(_0x4ca489,_0x18cf6e){return _0x4ca489===_0x18cf6e;},'gZLSU':'zoyLU','ITJfn':function(_0x5ab8cf,_0x24d253){return _0x5ab8cf===_0x24d253;},'lSAkz':'nxBkb','lMSmu':function(_0xbd6937,_0x5410b1,_0x26441a){return _0xbd6937(_0x5410b1,_0x26441a);}},{env:_0x40a9f0,headed:headed=![]}=_0x1893f7;let _0x427ef2=_0x40a9f0||await readActiveProfileName();if(!_0x427ef2)throw new Error(_0x7bc3eb['NRRbg']);const _0x3afd76=_0x7bc3eb[_0x1cb24c(0x130)](getEnvDir,_0x427ef2);if(!_0x7bc3eb[_0x1cb24c(0x102)](existsSync,_0x3afd76)){if(_0x7bc3eb[_0x1cb24c(0xc4)](_0x7bc3eb['thLXj'],_0x7bc3eb['thLXj']))_0x3dbc48=_0x2abb87[_0x1cb24c(0x107)];else throw new Error(_0x1cb24c(0x162)+_0x427ef2+_0x1cb24c(0x12b)+_0x427ef2);}const _0x2aa6d9=await _0x7bc3eb[_0x1cb24c(0x111)](loadSettings,_0x427ef2),_0x57082a=resolveEnvVars(_0x2aa6d9),_0x43bad7=_0x57082a[_0x1cb24c(0x108)];if(!_0x43bad7){if(_0x7bc3eb[_0x1cb24c(0x175)]!==_0x1cb24c(0x110)){let _0x27b5d6=_0x44ddcc[_0x1cb24c(0x140)];if(_0x3eead2[_0x1cb24c(0xfd)]?.[_0x1cb24c(0xb2)]&&_0x25e702[_0x1cb24c(0x176)](_0x5903e3[_0x1cb24c(0xfd)][_0x1cb24c(0xb2)])){const _0x4bdbab=_0x5b63c9['message'][_0x1cb24c(0xb2)][_0x1cb24c(0x132)](_0xc2e2cc=>_0xc2e2cc[_0x1cb24c(0xa3)]===_0x1cb24c(0xdd))[_0x1cb24c(0x141)](_0xa159a9=>_0xa159a9[_0x1cb24c(0xdd)]||'')[_0x1cb24c(0x132)](_0x184312);_0x4bdbab[_0x1cb24c(0x171)]>0x0&&(_0x27b5d6=_0x4bdbab[_0x1cb24c(0xc9)]('\x20'));}_0x431b36=_0x27b5d6;}else throw new Error(_0x1cb24c(0x100)+_0x427ef2+'\x22.\x20Run:\x20ranger\x20profile\x20config\x20set\x20'+_0x427ef2+_0x1cb24c(0x95));}const _0xf902e2=await _0x7bc3eb['KwjJU'](getToken);if(!_0xf902e2){if(_0x7bc3eb[_0x1cb24c(0xc4)](_0x7bc3eb['YJdRO'],_0x7bc3eb['YJdRO']))return![];else throw new Error(_0x7bc3eb[_0x1cb24c(0xbe)]);}const _0x174771=await createBrowserSession({'environmentName':_0x427ef2,'settings':_0x57082a,'task':_0x402f8a,'url':_0x43bad7});console[_0x1cb24c(0x8a)](_0x1cb24c(0x92)+_0x174771['id']);const _0x3b9a74=await buildPlaywrightConfig(_0x57082a,_0x427ef2,_0x174771?.['id'],headed),_0x1b53e6={'command':_0x7bc3eb[_0x1cb24c(0xd3)],'args':[_0x7bc3eb[_0x1cb24c(0xc3)],_0x7bc3eb[_0x1cb24c(0xe5)],_0x7bc3eb[_0x1cb24c(0xc5)],_0x3b9a74[_0x1cb24c(0xf2)]]},_0x1fee2f=Date[_0x1cb24c(0xd6)]();let _0x4c6ec1;try{if(_0x7bc3eb[_0x1cb24c(0x9a)]!=='tpZKb')_0x4c6ec1=await getProxySessionToken();else throw new _0x23bb5a('Verification\x20failed:\x20'+_0x357b91);}catch(_0x55a793){if(_0x7bc3eb['kbTMt'](_0x7bc3eb[_0x1cb24c(0xec)],_0x7bc3eb[_0x1cb24c(0x15d)]))_0x4fca8b=_0x374a3d,_0x2667b0=null;else{const _0x3ceaec=_0x7bc3eb[_0x1cb24c(0xaf)](_0x55a793,Error)?_0x55a793[_0x1cb24c(0xfd)]:_0x7bc3eb[_0x1cb24c(0xea)](String,_0x55a793),_0x244f39='Failed\x20to\x20fetch\x20proxy\x20session\x20token.\x20'+_0x3ceaec;try{await _0x7bc3eb[_0x1cb24c(0x10f)](updateBrowserSession,_0x174771['id'],{'status':_0x7bc3eb[_0x1cb24c(0x164)],'durationMs':Date[_0x1cb24c(0xd6)]()-_0x1fee2f,'errorMessage':_0x244f39});}catch{}throw new Error(_0x244f39);}}const _0x406eb7=_0x57082a['loginInstructions']?_0x1cb24c(0x117)+_0x57082a['loginInstructions']+_0x1cb24c(0xc6):'',_0x5f1371=_0x1cb24c(0xb6)+_0x43bad7+'\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-\x20IGNORE\x20any\x20URLs\x20from\x20product\x20documentation\x20(mcp__ranger__get_product_docs)\x20that\x20have\x20a\x20different\x20base\x20URL\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\x20environment\x20for\x20this\x20verification\x0a'+_0x406eb7+_0x1cb24c(0x12e)+_0x402f8a+_0x1cb24c(0x12c)+_0x43bad7,_0x578d9a={'type':_0x7bc3eb[_0x1cb24c(0xcf)],'properties':{'success':{'type':_0x7bc3eb[_0x1cb24c(0xd0)]},'summary':{'type':_0x7bc3eb[_0x1cb24c(0xb1)]},'issues':{'type':_0x7bc3eb['gmURe'],'items':{'type':_0x7bc3eb['ymyfU'],'properties':{'severity':{'type':_0x7bc3eb['bZmta'],'enum':[_0x7bc3eb[_0x1cb24c(0x91)],_0x7bc3eb['DllHy'],_0x7bc3eb['sLIsA']]},'description':{'type':_0x1cb24c(0xa1)},'screenshot':{'type':_0x7bc3eb[_0x1cb24c(0xb1)]}},'required':[_0x1cb24c(0x13f),_0x1cb24c(0x8b)]}},'screenshots':{'type':_0x7bc3eb[_0x1cb24c(0x144)],'items':{'type':'string'}}},'required':['success',_0x7bc3eb[_0x1cb24c(0x13e)]]},_0x42dae5=_0x7bc3eb[_0x1cb24c(0x125)](createMcpImageBase64Hook),_0x5e2e99=_0x7bc3eb['ORsmk'](query,{'prompt':_0x5f1371,'options':{'cwd':process[_0x1cb24c(0xed)](),'model':_0x7bc3eb[_0x1cb24c(0xff)],'mcpServers':{'ranger-browser':_0x1b53e6},'tools':[_0x7bc3eb[_0x1cb24c(0x133)],_0x7bc3eb[_0x1cb24c(0xb5)]],'permissionMode':_0x1cb24c(0xd9),'allowDangerouslySkipPermissions':!![],'outputFormat':{'type':_0x7bc3eb['akluK'],'schema':_0x578d9a},'hooks':{'PostToolUse':[{'hooks':[_0x42dae5]}]},'env':{...process[_0x1cb24c(0x15f)],'ANTHROPIC_API_KEY':_0x4c6ec1,'ANTHROPIC_BASE_URL':_0x7bc3eb[_0x1cb24c(0xba)](getAiProxyUrl)},'persistSession':![]}});let _0x375513=null,_0x1d4509=null,_0x535268=null;const _0x2b5635=_0x7bc3eb[_0x1cb24c(0x102)](getConversationFilePath,_0x174771['id']),_0x12ffe9=dirname(_0x2b5635);await mkdir(_0x12ffe9,{'recursive':!![]});let _0x3c4018=![];const _0x12dfc2=_0x7bc3eb[_0x1cb24c(0x13d)](_0x7bc3eb['utOaj'](0x3b,0x3c),0x3e8),_0x2c0ff8=new Promise((_0x13116e,_0x280233)=>{const _0x48c3c3=_0x1cb24c,_0x4cdf6f={'eHWQx':function(_0x29a8a9,_0x6360fb){const _0x506547=_0x4731;return _0x7bc3eb[_0x506547(0xea)](_0x29a8a9,_0x6360fb);},'EsURL':_0x7bc3eb[_0x48c3c3(0xf8)]};if(_0x7bc3eb[_0x48c3c3(0x147)](_0x48c3c3(0xa2),_0x7bc3eb[_0x48c3c3(0xc8)]))throw new _0x301b5a(_0x48c3c3(0x100)+_0x4d2446+'\x22.\x20Run:\x20ranger\x20profile\x20config\x20set\x20'+_0x55429e+_0x48c3c3(0x95));else setTimeout(()=>{_0x4cdf6f['eHWQx'](_0x280233,new Error(_0x4cdf6f['EsURL']));},_0x12dfc2);});try{try{if(_0x7bc3eb[_0x1cb24c(0x143)](_0x1cb24c(0xb4),_0x7bc3eb[_0x1cb24c(0x131)]))await Promise['race']([((async()=>{const _0x301000=_0x1cb24c,_0x2e21f2={'knwNi':function(_0x573118,_0x253dec,_0x4f69b8,_0xa1e7a7,_0x571c4e){const _0x489b3e=_0x4731;return _0x7bc3eb[_0x489b3e(0x9d)](_0x573118,_0x253dec,_0x4f69b8,_0xa1e7a7,_0x571c4e);},'cUbxb':function(_0x2baa65){return _0x7bc3eb['KwjJU'](_0x2baa65);},'ZxItU':_0x7bc3eb[_0x301000(0xbb)],'KDRrh':_0x7bc3eb['DglQx'],'KonMb':_0x7bc3eb[_0x301000(0xaa)],'UhEWH':_0x7bc3eb['eyDeQ'],'YcuUT':function(_0x3bed2d,_0x5b4118,_0x59dae2){const _0x4f8d4b=_0x301000;return _0x7bc3eb[_0x4f8d4b(0x10f)](_0x3bed2d,_0x5b4118,_0x59dae2);}};if(_0x7bc3eb['QgMKy']===_0x7bc3eb[_0x301000(0x13b)])_0x2c6b33=_0x1465d7 instanceof _0x4a6553?_0x160d0b[_0x301000(0xfd)]:_0x2a791d(_0x33754d);else for await(const _0x5130a9 of _0x5e2e99){if(_0x7bc3eb[_0x301000(0xfa)](_0x7bc3eb[_0x301000(0xe9)],_0x7bc3eb[_0x301000(0xe9)]))_0xf925ba=_0x6ed927['input'];else{try{const _0x3eeebd=_0x7bc3eb[_0x301000(0x112)](JSON[_0x301000(0x17c)](_0x5130a9),'\x0a');await _0x7bc3eb[_0x301000(0xa9)](appendFile,_0x2b5635,_0x3eeebd,_0x301000(0x94));}catch{}const _0x5705d2=_0x5130a9;if(_0x5705d2[_0x301000(0xa3)]===_0x7bc3eb['QzpNy']&&_0x5705d2['message']?.[_0x301000(0xb2)]){if(_0x7bc3eb[_0x301000(0xb3)]!==_0x7bc3eb[_0x301000(0xf5)])for(const _0x3f2541 of _0x5705d2[_0x301000(0xfd)][_0x301000(0xb2)]){if(_0x7bc3eb[_0x301000(0xfa)](_0x7bc3eb[_0x301000(0xd4)],'WHmQR')){if(_0x377f9b&&_0x7bc3eb[_0x301000(0x147)](_0x56fac7[_0x301000(0x17a)]?.[_0x301000(0x171)],0x0))_0x338bf3=_0x4f6cad,_0x3464ca=null;else!_0x31a157&&(_0x1e9ff6=_0x6fce62[_0x301000(0x17a)]?.[_0x301000(0xc9)](',\x20')||_0x301000(0x11f));}else{if(_0x7bc3eb[_0x301000(0x158)](_0x3f2541[_0x301000(0xa3)],_0x7bc3eb[_0x301000(0xa6)])&&_0x7bc3eb[_0x301000(0x158)](_0x3f2541[_0x301000(0x9f)],_0x7bc3eb['hwpmT'])&&_0x3f2541[_0x301000(0xb8)]){if(_0x7bc3eb[_0x301000(0x168)](_0x7bc3eb[_0x301000(0x8f)],_0x7bc3eb[_0x301000(0x98)]))return _0x2e21f2[_0x301000(0x119)](_0x5ad8f8,_0x2e21f2['cUbxb'](_0x28d023),_0x2e21f2[_0x301000(0xac)],_0x32670c,_0x2e21f2[_0x301000(0x104)]);else _0x535268=_0x3f2541['input'];}}}else return _0x328927[_0x301000(0x151)]()[_0x301000(0x146)](cppZXk[_0x301000(0x9e)])[_0x301000(0x151)]()[_0x301000(0x90)](_0x65b186)[_0x301000(0x146)](cppZXk['KonMb']);}if(_0x5705d2[_0x301000(0x140)]){if(_0x7bc3eb[_0x301000(0x10a)](_0x7bc3eb['ddBYB'],_0x7bc3eb[_0x301000(0x101)]))_0x2e21f2[_0x301000(0x138)](_0xe4ff3e,()=>{const _0x329b12=_0x301000;_0x42715b(new _0x153107(_0x2e21f2[_0x329b12(0x166)]));},_0x2edabb);else{let _0x1f15b0=_0x5705d2[_0x301000(0x140)];if(_0x5705d2[_0x301000(0xfd)]?.[_0x301000(0xb2)]&&Array[_0x301000(0x176)](_0x5705d2[_0x301000(0xfd)][_0x301000(0xb2)])){if(_0x7bc3eb[_0x301000(0x168)](_0x301000(0x173),_0x7bc3eb[_0x301000(0x116)])){const _0x3bd195=_0x5705d2['message'][_0x301000(0xb2)][_0x301000(0x132)](_0x3a7434=>_0x3a7434[_0x301000(0xa3)]===_0x301000(0xdd))[_0x301000(0x141)](_0x5bd84c=>_0x5bd84c[_0x301000(0xdd)]||'')[_0x301000(0x132)](Boolean);_0x7bc3eb[_0x301000(0xab)](_0x3bd195[_0x301000(0x171)],0x0)&&(_0x7bc3eb[_0x301000(0x14a)](_0x7bc3eb['KgRQU'],_0x7bc3eb['KgRQU'])?_0x1f15b0=_0x3bd195[_0x301000(0xc9)]('\x20'):_0x19c27c=_0x2068c4[_0x301000(0xc9)]('\x20'));}else _0x7bc3eb[_0x301000(0x9c)](_0x30c88c[_0x301000(0xa3)],_0x301000(0x11d))&&_0x7bc3eb[_0x301000(0x9c)](_0x5365e8['name'],_0x7bc3eb['hwpmT'])&&_0x447091[_0x301000(0xb8)]&&(_0x3c4ae9=_0x25880f[_0x301000(0xb8)]);}_0x1d4509=_0x1f15b0;}}if(_0x7bc3eb[_0x301000(0x147)](_0x5130a9['type'],_0x7bc3eb[_0x301000(0xda)])){if(_0x5130a9[_0x301000(0x161)]===_0x7bc3eb[_0x301000(0xd5)]&&_0x5130a9['structured_output'])_0x375513=_0x5130a9[_0x301000(0x107)];else{if(_0x7bc3eb[_0x301000(0xc4)](_0x5130a9['subtype'],_0x7bc3eb[_0x301000(0xd5)])){if(_0x535268&&_0x5130a9[_0x301000(0x17a)]?.['length']===0x0){if(_0x7bc3eb[_0x301000(0xd8)]!==_0x7bc3eb[_0x301000(0x172)])_0x375513=_0x535268,_0x1d4509=null;else{const _0x2c656c=_0x375cc0?function(){const _0xa0959d=_0x301000;if(_0x22b3d7){const _0x2a454b=_0x229d2a[_0xa0959d(0x149)](_0x3483c6,arguments);return _0x41d086=null,_0x2a454b;}}:function(){};return _0xed339f=![],_0x2c656c;}}else!_0x1d4509&&(_0x7bc3eb[_0x301000(0x11e)](_0x7bc3eb[_0x301000(0x142)],_0x7bc3eb[_0x301000(0x142)])?_0x3a9878=_0x2f7c4a[_0x301000(0x17a)]?.[_0x301000(0xc9)](',\x20')||_0x7bc3eb[_0x301000(0xf9)]:_0x1d4509=_0x5130a9[_0x301000(0x17a)]?.[_0x301000(0xc9)](',\x20')||_0x301000(0x11f));}}}}}})()),_0x2c0ff8]);else{const _0xb89a6d=_0x31db1d['apply'](_0x380534,arguments);return _0x44ad00=null,_0xb89a6d;}}catch(_0x419483){if(_0x7bc3eb['TjNEV'](_0x7bc3eb[_0x1cb24c(0x17d)],_0x7bc3eb[_0x1cb24c(0x154)]))_0x1d4509=_0x7bc3eb[_0x1cb24c(0xaf)](_0x419483,Error)?_0x419483[_0x1cb24c(0xfd)]:_0x7bc3eb[_0x1cb24c(0xc7)](String,_0x419483);else return _0x7bc3eb[_0x1cb24c(0x174)](_0x414901,_0x7bc3eb['KwjJU'](_0x358a00),_0x7bc3eb['xjoib'],_0x218fcf);}const _0x17483b=_0x7bc3eb[_0x1cb24c(0xf6)](Date[_0x1cb24c(0xd6)](),_0x1fee2f);let _0x35dc83;try{const _0x2d55e9=_0x7bc3eb[_0x1cb24c(0x124)](getTraceDirectory,_0x174771['id']);if(_0x7bc3eb[_0x1cb24c(0x124)](existsSync,_0x2d55e9)){if(_0x7bc3eb[_0x1cb24c(0x143)](_0x7bc3eb['mpUTA'],_0x7bc3eb[_0x1cb24c(0x153)]))throw new _0x3f8eb3('Profile\x20\x22'+_0x514a41+_0x1cb24c(0x12b)+_0x237b0f);else{const _0x27d6eb=await readdir(_0x2d55e9);if(_0x7bc3eb[_0x1cb24c(0xab)](_0x27d6eb[_0x1cb24c(0x171)],0x0)){if(_0x7bc3eb['kbTMt'](_0x7bc3eb[_0x1cb24c(0xc0)],_0x7bc3eb[_0x1cb24c(0xc0)])){const _0x348b8e=_0x7bc3eb[_0x1cb24c(0xe2)](join,_0x2d55e9,_0x7bc3eb[_0x1cb24c(0x170)]);if(_0x7bc3eb['tQGIp'](existsSync,_0x348b8e)){const _0x24288c=await _0x7bc3eb[_0x1cb24c(0x160)](zipDirectory,_0x348b8e),_0x1360f4=_0x7bc3eb['shNwL'](computeChecksum,_0x24288c),_0x26d48d=await getUploadUrls(_0x174771['id'],_0x7bc3eb['UyevO'],_0x7bc3eb[_0x1cb24c(0xca)],{'size':_0x24288c['length'],'checksum':_0x1360f4});await _0x7bc3eb['TPxtO'](uploadTrace,_0x26d48d['uploadUrl'],_0x24288c),_0x35dc83=_0x26d48d[_0x1cb24c(0x105)];}const _0x49fae1=_0x27d6eb[_0x1cb24c(0x132)](_0x2f5775=>_0x2f5775[_0x1cb24c(0x16d)]()[_0x1cb24c(0xc2)]('.png'));for(const _0x567fbd of _0x49fae1){if(_0x7bc3eb[_0x1cb24c(0xfa)](_0x7bc3eb[_0x1cb24c(0x178)],_0x1cb24c(0x96)))_0xb0d938['traceViewerUrl']=_0x7bc3eb[_0x1cb24c(0xe6)](_0x162721,_0x53d80e),_0x5a5a64['sessionId']=_0x4a4507['id'],_0x170664[_0x1cb24c(0xdc)]=_0x7bc3eb[_0x1cb24c(0xe6)](_0x27363c,_0x533d11['id']),_0x4e6be6[_0x1cb24c(0xa5)]=_0x3458d2,_0x3b6796['task']=_0x4f7ed3,_0x92b9c1[_0x1cb24c(0xa0)]=_0x184505;else try{if(_0x7bc3eb[_0x1cb24c(0x168)](_0x1cb24c(0xe0),_0x1cb24c(0xe0))){const _0x26b2c1=_0x7bc3eb[_0x1cb24c(0x15b)](join,_0x2d55e9,_0x567fbd),_0x3c8006=await _0x7bc3eb[_0x1cb24c(0xc7)](readFile,_0x26b2c1),_0x397ef1=_0x7bc3eb[_0x1cb24c(0xcb)](computeChecksum,_0x3c8006),_0x265b57=await getUploadUrls(_0x174771['id'],_0x567fbd,_0x7bc3eb[_0x1cb24c(0x118)],{'size':_0x3c8006[_0x1cb24c(0x171)],'checksum':_0x397ef1});await _0x7bc3eb[_0x1cb24c(0x15b)](uploadScreenshot,_0x265b57[_0x1cb24c(0xe3)],_0x3c8006);}else{if(_0x32b2ae){const _0x17aa17=_0x83d8b0['apply'](_0x29d007,arguments);return _0x313b89=null,_0x17aa17;}}}catch{}}}else return![];}}}!_0x3c4018&&(_0x3c4018=await _0x7bc3eb[_0x1cb24c(0x89)](uploadConversationArtifact,_0x174771['id'],_0x2b5635));const _0x8f7c73=_0x375513,_0x56b44f={'status':_0x1d4509?_0x7bc3eb['cAGSg']:_0x7bc3eb[_0x1cb24c(0x11b)],'durationMs':_0x17483b,'agentResponse':_0x8f7c73?.['summary']||_0x1d4509||undefined,'errorMessage':_0x7bc3eb['DehWS'](_0x1d4509,undefined)};await _0x7bc3eb['ZImOU'](updateBrowserSession,_0x174771['id'],_0x56b44f);if(_0x8f7c73&&_0x35dc83){if(_0x1cb24c(0xbf)!==_0x7bc3eb[_0x1cb24c(0xad)]){const _0x33cf92=_0x378539[_0x1cb24c(0xfd)]['content']['filter'](_0x370266=>_0x370266[_0x1cb24c(0xa3)]===_0x1cb24c(0xdd))[_0x1cb24c(0x141)](_0x4a2cd0=>_0x4a2cd0[_0x1cb24c(0xdd)]||'')[_0x1cb24c(0x132)](_0x4c10a9);_0x33cf92['length']>0x0&&(_0x4f4399=_0x33cf92[_0x1cb24c(0xc9)]('\x20'));}else{const _0x201a74=_0x7bc3eb[_0x1cb24c(0x13a)][_0x1cb24c(0xcc)]('|');let _0x79b542=0x0;while(!![]){switch(_0x201a74[_0x79b542++]){case'0':_0x8f7c73[_0x1cb24c(0xa8)]=buildTraceViewerUrl(_0x35dc83);continue;case'1':_0x8f7c73[_0x1cb24c(0xbd)]=_0x174771['id'];continue;case'2':_0x8f7c73['sessionDir']=_0x7bc3eb['rFLpf'](getTraceDirectory,_0x174771['id']);continue;case'3':_0x8f7c73[_0x1cb24c(0x155)]=_0x402f8a;continue;case'4':_0x8f7c73[_0x1cb24c(0xa5)]=_0x17483b;continue;case'5':_0x8f7c73[_0x1cb24c(0xa0)]=_0x43bad7;continue;}break;}}}}catch{}if(_0x7bc3eb[_0x1cb24c(0x14e)](_0x1d4509,!_0x375513)){if(_0x7bc3eb[_0x1cb24c(0x109)]!==_0x1cb24c(0x137))throw new Error(_0x1cb24c(0x106)+_0x1d4509);else _0x7bc3eb[_0x1cb24c(0x123)](_0x2db4d5,new _0x138e31(_0x7bc3eb['eyDeQ']));}if(!_0x375513)throw new Error(_0x7bc3eb[_0x1cb24c(0x148)]);return _0x375513;}finally{!_0x3c4018&&(_0x3c4018=await uploadConversationArtifact(_0x174771['id'],_0x2b5635));await _0x7bc3eb[_0x1cb24c(0xef)](cleanupTempFiles,_0x3b9a74);try{if(_0x7bc3eb[_0x1cb24c(0x150)](_0x7bc3eb[_0x1cb24c(0xdf)],_0x1cb24c(0x128))){const _0x4af5ba=_0x7bc3eb[_0x1cb24c(0xc7)](getTraceDirectory,_0x174771['id']);if(_0x7bc3eb[_0x1cb24c(0x124)](existsSync,_0x4af5ba)){if(_0x7bc3eb[_0x1cb24c(0xdb)](_0x7bc3eb[_0x1cb24c(0x15e)],'nxBkb'))await _0x7bc3eb[_0x1cb24c(0xeb)](rm,_0x4af5ba,{'recursive':!![],'force':!![]});else throw new _0x4a3201(_0x7bc3eb[_0x1cb24c(0x121)]);}}else throw new _0x3d6f9d(_0x7bc3eb[_0x1cb24c(0xbe)]);}catch{}try{existsSync(_0x12ffe9)&&await _0x7bc3eb['MWEYm'](rm,_0x12ffe9,{'recursive':!![],'force':!![]});}catch{}}}
@@ -5,9 +5,9 @@ description: "Ranger’s browser verification tooling that supplements a coding
5
5
 
6
6
  # Ranger Skill
7
7
 
8
- If the `ranger` command is not available, install it with `npm install -g @ranger-testing/ranger-cli`.
8
+ Run Ranger commands using `ranger-cli <args>`.
9
9
 
10
- **IMPORTANT: At the start of any session, run `ranger update` to ensure you have the latest CLI and skills.**
10
+ **IMPORTANT: At the start of any session, run `ranger-cli update` to ensure you have the latest CLI and skills.**
11
11
 
12
12
  If you are running in Claude Code, read and suggest the following claude-specific commands to the user: [claude.md](./claude.md).
13
13
 
@@ -39,19 +39,19 @@ Use this workflow when:
39
39
 
40
40
  ```bash
41
41
  # List feature reviews to find one to resume
42
- ranger list
42
+ ranger-cli list
43
43
 
44
44
  # Resume a specific feature review by ID
45
- ranger resume <id>
45
+ ranger-cli resume <id>
46
46
 
47
47
  # Verify a scenario (starts at base URL)
48
- ranger go --scenario <N> --notes "<description of what to verify>"
48
+ ranger-cli go --scenario <N> --notes "<description of what to verify>"
49
49
 
50
50
  # Verify starting on a specific page
51
- ranger go --scenario <N> --start-path /dashboard --notes "<description>"
51
+ ranger-cli go --scenario <N> --start-path /dashboard --notes "<description>"
52
52
 
53
53
  # Add a scenario if scope expanded (be detailed!)
54
- ranger add-scenario "User navigates to /settings, clicks 'Edit Profile', updates display name, clicks Save, sees success toast, refreshes page, and confirms the new name persists"
54
+ ranger-cli add-scenario "User navigates to /settings, clicks 'Edit Profile', updates display name, clicks Save, sees success toast, refreshes page, and confirms the new name persists"
55
55
  ```
56
56
 
57
57
  ---
@@ -63,16 +63,13 @@ ranger add-scenario "User navigates to /settings, clicks 'Edit Profile', updates
63
63
  Use this workflow when:
64
64
  - Starting new feature review development
65
65
  - Planning UI changes
66
- - `ranger show` found no match
67
- - The feature review you are developing is not found in `ranger list`
66
+ - `ranger-cli show` found no match
67
+ - The feature review you are developing is not found in `ranger-cli list`
68
68
 
69
69
  ### Quick Start
70
70
 
71
71
  ```bash
72
- ranger create "<name>" \
73
- --description "<description>" \
74
- -c "<E2E scenario 1>" \
75
- -c "<E2E scenario 2>"
72
+ ranger-cli create "<name>" --description "<description>" -c "<E2E scenario 1>" -c "<E2E scenario 2>"
76
73
  ```
77
74
 
78
75
  ### Critical: Scenarios Are E2E Tests
@@ -99,7 +96,7 @@ Use this workflow when:
99
96
 
100
97
  ```bash
101
98
  # Verify a scenario
102
- ranger go --scenario <N> --notes "<description of what to verify>"
99
+ ranger-cli go --scenario <N> --notes "<description of what to verify>"
103
100
  ```
104
101
 
105
102
  The verification agent will:
@@ -117,18 +114,18 @@ The verification agent will:
117
114
  **MANDATORY: Read [feedback.md](./feedback.md) when scenarios have reviewer comments.**
118
115
 
119
116
  Use this workflow when:
120
- - `ranger show` displays scenarios with comment badges
117
+ - `ranger-cli show` displays scenarios with comment badges
121
118
  - Scenarios show as v2/v3 (revised after reviewer feedback)
122
- - `ranger resume` warns about unaddressed comments
119
+ - `ranger-cli resume <id>` warns about unaddressed comments
123
120
 
124
121
  ### Quick Start
125
122
 
126
123
  ```bash
127
124
  # See all reviewer comments across scenarios
128
- ranger get-review
125
+ ranger-cli get-review
129
126
 
130
127
  # After fixing code, re-verify the scenario
131
- ranger go --scenario <N>
128
+ ranger-cli go --scenario <N>
132
129
  ```
133
130
 
134
131
  The verification agent automatically receives reviewer comments, so it will check that each concern was addressed.
@@ -153,12 +150,12 @@ When completing your work or ending the session, your final message to the user
153
150
  # Development Cycle
154
151
 
155
152
  ```
156
- ┌───────────────────────────────────────┐
157
- │ 1. RESUME OR CREATE FEATURE REVIEW │ ◀── MUST READ start.md, create.md
158
- │ • ranger list
159
- │ • ranger resume <id>
160
- │ • OR ranger create
161
- └───────────────────┬───────────────────┘
153
+ ┌─────────────────────────────────────────┐
154
+ │ 1. RESUME OR CREATE FEATURE REVIEW │ ◀── MUST READ start.md, create.md
155
+ │ • ranger-cli list
156
+ │ • ranger-cli resume <id>
157
+ │ • OR ranger-cli create ...
158
+ └───────────────────┬─────────────────────┘
162
159
 
163
160
 
164
161
  ┌───────────────────────┐
@@ -208,24 +205,24 @@ When completing your work or ending the session, your final message to the user
208
205
 
209
206
  | Command | Purpose |
210
207
  |---------|---------|
211
- | `ranger list` | List feature reviews (check before creating a new one) |
212
- | `ranger resume <id>` | Resume a specific feature review |
213
- | `ranger show` | Show current feature review status |
214
- | `ranger create` | Create new feature review with scenarios |
215
- | `ranger add-scenario` | Add a scenario to active feature review |
216
- | `ranger edit-scenario` | Edit a scenario description on the active feature review |
217
- | `ranger get-review` | See reviewer comments on scenarios |
218
- | `ranger report` | Generate PR description markdown with screenshots |
219
- | `ranger go` | Verify scenario in browser |
208
+ | `ranger-cli list` | List feature reviews (check before creating a new one) |
209
+ | `ranger-cli resume <id>` | Resume a specific feature review |
210
+ | `ranger-cli show` | Show current feature review status |
211
+ | `ranger-cli create ...` | Create new feature review with scenarios |
212
+ | `ranger-cli add-scenario ...` | Add a scenario to active feature review |
213
+ | `ranger-cli edit-scenario ...` | Edit a scenario description on the active feature review |
214
+ | `ranger-cli get-review` | See reviewer comments on scenarios |
215
+ | `ranger-cli report` | Generate PR description markdown with screenshots |
216
+ | `ranger-cli go ...` | Verify scenario in browser |
220
217
 
221
218
  # Key Principles
222
219
 
223
220
  1. **Read the docs first** - start.md before resuming, create.md before creating, verify.md before verifying
224
- 2. **Always list first** - Run `ranger list` at session start before creating new feature reviews
221
+ 2. **Always list first** - Run `ranger-cli list` at session start before creating new feature reviews
225
222
  3. **Scenarios are E2E tests** - Not TODO lists, not backend tasks. BE DESCRIPTIVE and unambiguous when detailing the flow to cover.
226
223
  4. **Verify after implementing** - Don't skip browser verification
227
224
  5. **Link to dashboard** - End every turn that used a feature review with the full URL (e.g. https://dashboard.ranger.net/features/{feature_id})
228
- 6. **Summarize results** - Offer to create a PR description with screenshots demonstrating the feature using `ranger report`.
225
+ 6. **Summarize results** - Offer to create a PR description with screenshots demonstrating the feature using `ranger-cli report`.
229
226
 
230
227
  ---
231
228
 
@@ -235,18 +232,18 @@ When completing your work or ending the session, your final message to the user
235
232
 
236
233
  If you encounter authentication issues:
237
234
 
238
- 1. **Check your profiles**: Run `ranger profile ls` to see all configured profiles and their details
239
- 2. **Switch profiles**: Use `ranger profile use <profile-name>` to switch to a different profile
240
- 3. **Refresh auth**: Instruct the user to run `ranger profile update <profile-name>` to re-capture authentication for a profile (user will need to help with that)
235
+ 1. **Check your profiles**: Run `ranger-cli profile ls` to see all configured profiles and their details
236
+ 2. **Switch profiles**: Use `ranger-cli profile use <profile-name>` to switch to a different profile
237
+ 3. **Refresh auth**: Instruct the user to run `ranger-cli profile update <profile-name>` to re-capture authentication for a profile (user will need to help with that)
241
238
 
242
239
 
243
240
  ### Authentication Issues to Ranger
244
241
 
245
- If you encounter issues where the `ranger` CLI is not authenticated for running any commands, instruct the user to run `ranger setup` (if there is no `.ranger` directory) or `ranger login` to refresh their API token.
242
+ If you encounter issues where the Ranger CLI is not authenticated for running any commands, instruct the user to run `ranger-cli setup` (if there is no `.ranger` directory) or `ranger-cli login` to refresh their API token.
246
243
 
247
- Additionally, if no `ranger` commands work after the user runs `ranger setup` or `ranger login`, the issue may be permissions to make network calls. Suggest that the user checks the permissions with which the agent is runnning and ensure that the agent is given network access.
244
+ Additionally, if no Ranger commands work after the user runs `ranger-cli setup` or `ranger-cli login`, the issue may be permissions to make network calls. Suggest that the user checks the permissions with which the agent is running and ensure that the agent is given network access.
248
245
 
249
246
 
250
247
  ### Full Documentation
251
248
 
252
- If any of the above commands fail, pull the agent-friendly documentation from https://docs.ranger.net/llms.txt and use that to supersede any documentation in this skill.
249
+ If any of the above commands fail, pull the agent-friendly documentation from https://docs.ranger.net/llms.txt and use that to supersede any documentation in this skill.
@@ -5,10 +5,7 @@ Create a feature review when starting new work that doesn't have an existing fea
5
5
  ## Basic Command
6
6
 
7
7
  ```bash
8
- ranger create "<feature review name>" \
9
- --description "<description>" \
10
- -c "<scenario 1>" \
11
- -c "<scenario 2>"
8
+ ranger-cli create "<feature review name>" --description "<description>" -c "<scenario 1>" -c "<scenario 2>"
12
9
  ```
13
10
 
14
11
  Use multiple `-c` flags for multiple scenarios. Each scenario can contain commas.
@@ -21,7 +18,7 @@ When you create a feature review, the CLI automatically captures:
21
18
  - **Created timestamp**
22
19
  - **Your organization** - From API token
23
20
 
24
- This enables `ranger list` to filter feature reviews by git context later.
21
+ This enables `ranger-cli list` to filter feature reviews by git context later.
25
22
 
26
23
  ## Writing Good Scenarios
27
24
 
@@ -116,17 +113,12 @@ Good: "User can create a new project, invite a team member, and see them in the
116
113
 
117
114
  **Simple feature (1 scenario):**
118
115
  ```bash
119
- ranger create "Add Export Button" \
120
- --description "Add export functionality to the reports page" \
121
- -c "Navigate to Reports page, click the new Export button, select CSV format, and verify the file downloads"
116
+ ranger-cli create "Add Export Button" --description "Add export functionality to the reports page" -c "Navigate to Reports page, click the new Export button, select CSV format, and verify the file downloads"
122
117
  ```
123
118
 
124
119
  **Larger feature (multiple scenarios):**
125
120
  ```bash
126
- ranger create "User Authentication" \
127
- --description "Login and signup flows for the web app" \
128
- -c "Go to login page and sign in with valid credentials, verify redirect to dashboard" \
129
- -c "Go to signup page and create new account, verify welcome email and successful login"
121
+ ranger-cli create "User Authentication" --description "Login and signup flows for the web app" -c "Go to login page and sign in with valid credentials, verify redirect to dashboard" -c "Go to signup page and create new account, verify welcome email and successful login"
130
122
  ```
131
123
 
132
124
  ## Output
@@ -155,6 +147,6 @@ Creating feature review...
155
147
  The new feature review is automatically set as the active feature review. You can now:
156
148
 
157
149
  1. Start implementing the first scenario
158
- 2. View status with `ranger show`
150
+ 2. View status with `ranger-cli show`
159
151
 
160
152
  Always end the conversational turn by sharing the dashboard link.
@@ -7,12 +7,12 @@ v2+ scenarios inherit comments from their parent version. Run `get-review` to se
7
7
  ## When This Applies
8
8
 
9
9
  - Scenarios show as v2/v3 with `[has reviewer feedback]` tag
10
- - `ranger resume` prints a warning about unaddressed comments
10
+ - `ranger-cli resume <id>` prints a warning about unaddressed comments
11
11
 
12
12
  ## Step 1: Read the Feedback
13
13
 
14
14
  ```bash
15
- ranger get-review
15
+ ranger-cli get-review
16
16
  ```
17
17
 
18
18
  This shows ALL reviewer comments across all scenarios, including:
@@ -59,7 +59,7 @@ For each unaddressed comment:
59
59
  ## Step 3: Re-verify
60
60
 
61
61
  ```bash
62
- ranger go --scenario <N>
62
+ ranger-cli go --scenario <N>
63
63
  ```
64
64
 
65
65
  The verification agent **automatically receives the reviewer comments** in its prompt. It will specifically check that each reviewer concern was addressed in the current implementation.