@ranger-testing/ranger-cli 2.5.4-alpha.5f9facb-17 → 2.5.4-alpha.816b7e2-24

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 (80) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/deleteProfile.js +1 -0
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/opencodeConfig.js +1 -1
  58. package/build/commands/utils/playwrightCli.js +1 -1
  59. package/build/commands/utils/profileMessages.js +1 -1
  60. package/build/commands/utils/profileSetupBanner.js +1 -1
  61. package/build/commands/utils/projectsConfig.js +1 -1
  62. package/build/commands/utils/rangerConfig.js +1 -1
  63. package/build/commands/utils/rangerRoot.js +1 -1
  64. package/build/commands/utils/resolveProfileContext.js +1 -1
  65. package/build/commands/utils/resolveProfileUrl.js +1 -1
  66. package/build/commands/utils/retry.js +1 -1
  67. package/build/commands/utils/sessionCache.js +1 -1
  68. package/build/commands/utils/settings.js +1 -1
  69. package/build/commands/utils/skillContent.js +1 -1
  70. package/build/commands/utils/skills.js +1 -1
  71. package/build/commands/utils/stitchWebmFiles.js +1 -1
  72. package/build/commands/utils/telemetry.js +1 -1
  73. package/build/commands/utils/tokenRefresh.js +1 -1
  74. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  75. package/build/commands/utils/userApi.js +1 -1
  76. package/build/commands/utils/version.js +1 -1
  77. package/build/commands/verifyFeature.js +1 -1
  78. package/build/commands/verifyFeatureCli.js +1 -1
  79. package/build/skills/ranger/SKILL.md +1 -1
  80. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x2cb33e,_0x1fb4ea){const _0x2c3762=_0x26be,_0x39ada3=_0x2cb33e();while(!![]){try{const _0x280535=-parseInt(_0x2c3762(0x104))/0x1+parseInt(_0x2c3762(0x135))/0x2*(parseInt(_0x2c3762(0xe3))/0x3)+-parseInt(_0x2c3762(0x12f))/0x4+-parseInt(_0x2c3762(0x11d))/0x5*(parseInt(_0x2c3762(0x109))/0x6)+parseInt(_0x2c3762(0x132))/0x7+parseInt(_0x2c3762(0x12a))/0x8*(parseInt(_0x2c3762(0xf0))/0x9)+parseInt(_0x2c3762(0x14f))/0xa;if(_0x280535===_0x1fb4ea)break;else _0x39ada3['push'](_0x39ada3['shift']());}catch(_0x17ff81){_0x39ada3['push'](_0x39ada3['shift']());}}}(_0x3317,0x86116));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';function _0x3317(){const _0x2cd8c7=['.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','uDHrb','tool_call','selector','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','length','`\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`','open\x20browser','3837430iXjIPj','Reviewer','`\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`','en-US','unaddressedComments','03_result-visible.png','check\x20','MeoVM','\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.','**\x20(','capture\x20snapshot','PqDtP','):\x20\x22','\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','subcommand','01_mozilla-homepage.png','authorName','akubl','ref\x20','get','slice','DEBUG','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','QHadb','`:\x20\x22','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','run\x20custom\x20Playwright\x20code','JNown','\x20(on\x20element:\x20<','kzRBX','1454721kBgnpQ','wmoLi','domRef','afbTD','toELz','YVqsS','test','auSGs','string','tab-new','tracing-stop','push','notes','8055wakdpF','playwright_cli_close','tracing-start','AexjV','\x20tracing-start`\x0a3.\x20Run\x20`','check','xeBvW','phase','stop\x20video\x20recording','snapshot','[ranger-verification-agent]\x20','\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','fill\x20','KPctA','set','video-start','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','NvMjh','authorEmail','TBWHC','384958LBVqVc','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','toLocaleDateString','replace','open\x20new\x20tab','4469502AsubAU','playwright-cli','session-recording.webm','[playwright-cli]\x20','\x0a\x0a##\x20Additional\x20Notes\x0a','`\x0a9.\x20Run\x20`','key_04_success-state.png','yogAD','trim','tool_input','stdout','IiHWv','VIybw','map','commandArgs','oQCXF','stop\x20tracing','name','\x20>\x20','description','5wlPCWS','capture\x20step\x20`','You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a','run-code','invocation','HgUlj','tCPni','press','Bash','tab-select','keys','CDWbE','env','4616aPdWAF','yGmQk','error','(?:^|\x5cs)','03_learn-more.png','129164HOuexP','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','video-stop','2283701SdQPgs','mtimeMs','log','2mQRlOT','canonicalFlow','yAGEA','stderr','\x20snapshot\x20--filename\x20','00_mozilla-homepage.yml','hook_event_name','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','capture\x20key\x20step\x20`','split','`\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`','screenshot','`\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','aFQZJ','TAOsn'];_0x3317=function(){return _0x2cd8c7;};return _0x3317();}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(_0x166d93,_0x138b2e=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x16bf20=_0x26be,_0xfc93b4={'afbTD':function(_0x321b6e,_0x598967){return _0x321b6e+_0x598967;},'LCIDl':'...'};return _0x166d93[_0x16bf20(0x14c)]>_0x138b2e?_0xfc93b4[_0x16bf20(0xe6)](_0x166d93['slice'](0x0,_0x138b2e),_0xfc93b4['LCIDl']):_0x166d93;}function buildCliArtifactPath(_0x5ddcc6,_0x1d661a){return join(_0x5ddcc6,_0x1d661a);}function toStepDisplayName(_0x2093d5){const _0x742bc3=_0x26be,_0x1f5801={'IiHWv':function(_0x565597,_0x1a870c){return _0x565597(_0x1a870c);}},_0x2bd040=_0x1f5801[_0x742bc3(0x114)](basename,_0x2093d5)[_0x742bc3(0x107)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x2bd040,'isKeyStep':/^key_/i['test'](basename(_0x2093d5))};}function extractShellValue(_0x1333e7){if(!_0x1333e7)return null;return _0x1333e7[0x1]??_0x1333e7[0x2]??_0x1333e7[0x3]??null;}function extractFilenameOption(_0x3bb504){const _0x266912={'yZFOY':function(_0x1af7a0,_0x34e82a){return _0x1af7a0(_0x34e82a);}};return _0x266912['yZFOY'](extractShellValue,_0x3bb504['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x322f1f,_0x4721c2){const _0x353fd5=_0x26be,_0x504f91={'TBWHC':'\x5c$&'},_0x24bebb=_0x4721c2[_0x353fd5(0x107)](/[.*+?^${}()|[\]\\]/g,_0x504f91[_0x353fd5(0x103)]);return extractShellValue(_0x322f1f['match'](new RegExp(_0x353fd5(0x12d)+_0x24bebb+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x15ace3){const _0x388c25=_0x26be,_0x369469={'kBJTr':function(_0x3270ff,_0x476dbc,_0x376b79){return _0x3270ff(_0x476dbc,_0x376b79);}};if(!_0x15ace3)return'target';if(/^e\d+$/i[_0x388c25(0xe9)](_0x15ace3))return _0x388c25(0xd6)+_0x15ace3;return JSON['stringify'](_0x369469['kBJTr'](truncatePreview,_0x15ace3,0x78));}function formatPlaywrightCliLog(_0x571fd8,_0x3abc74){const _0x143a37=_0x26be,_0x3868e8={'NPUQz':function(_0x43054e,_0x3c78ba,_0x41432f){return _0x43054e(_0x3c78ba,_0x41432f);},'Fzduh':_0x143a37(0x14e),'VIybw':'start\x20tracing','wcWNO':_0x143a37(0xed),'kzRBX':_0x143a37(0x119),'kIBFP':_0x143a37(0xff),'uDHrb':'start\x20video\x20recording','LXOtH':_0x143a37(0xf8),'FuRLP':function(_0xf28318,_0x472d8d){return _0xf28318(_0x472d8d);},'OAkAW':_0x143a37(0x142),'KPctA':'click','aFQZJ':_0x143a37(0xf5),'auSGs':function(_0x121367,_0x55df9e,_0x5a0b80){return _0x121367(_0x55df9e,_0x5a0b80);},'jzgOb':'fill','BjFiN':function(_0x2fe057,_0x422db2,_0x8d6e2e){return _0x2fe057(_0x422db2,_0x8d6e2e);},'LAtkY':'select\x20tab'};switch(_0x3abc74){case'open':{const _0x5f2c8b=_0x3868e8['NPUQz'](extractFirstCommandArgument,_0x571fd8,_0x3abc74);return _0x5f2c8b?'open\x20'+_0x5f2c8b:_0x3868e8['Fzduh'];}case _0x143a37(0xf2):return _0x3868e8[_0x143a37(0x115)];case _0x3868e8['wcWNO']:return _0x3868e8[_0x143a37(0xe2)];case _0x3868e8['kIBFP']:return _0x3868e8[_0x143a37(0x148)];case _0x143a37(0x131):return _0x3868e8['LXOtH'];case'snapshot':{const _0x10acb5=_0x3868e8['FuRLP'](extractFilenameOption,_0x571fd8);if(!_0x10acb5)return _0x143a37(0x159);const {name:_0x116209}=toStepDisplayName(_0x10acb5);return'capture\x20snapshot\x20`'+_0x116209+'`';}case _0x3868e8['OAkAW']:{const _0x31e280=extractFilenameOption(_0x571fd8);if(!_0x31e280)return'capture\x20screenshot';const {name:_0x29f70a,isKeyStep:_0x44903b}=_0x3868e8['FuRLP'](toStepDisplayName,_0x31e280);return _0x44903b?_0x143a37(0x13f)+_0x29f70a+'`':_0x143a37(0x11e)+_0x29f70a+'`';}case _0x3868e8[_0x143a37(0xfd)]:return'click\x20'+formatCommandTarget(extractFirstCommandArgument(_0x571fd8,_0x3abc74));case _0x3868e8[_0x143a37(0x144)]:return _0x143a37(0x155)+formatCommandTarget(_0x3868e8[_0x143a37(0xea)](extractFirstCommandArgument,_0x571fd8,_0x3abc74));case _0x3868e8['jzgOb']:return _0x143a37(0xfc)+formatCommandTarget(_0x3868e8['BjFiN'](extractFirstCommandArgument,_0x571fd8,_0x3abc74));case _0x143a37(0x124):return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x571fd8,_0x3abc74));case _0x143a37(0x120):return _0x143a37(0xdf);case _0x143a37(0xec):{const _0x49dfb7=extractFirstCommandArgument(_0x571fd8,_0x3abc74);return _0x49dfb7?'open\x20new\x20tab\x20'+_0x49dfb7:_0x143a37(0x108);}case _0x143a37(0x126):{const _0x3c8f60=extractFirstCommandArgument(_0x571fd8,_0x3abc74);return _0x3c8f60?'select\x20tab\x20'+_0x3c8f60:_0x3868e8['LAtkY'];}default:return _0x3abc74;}}function extractPlaywrightCliToolDescription(_0x2ae9df){const _0x5a8188=_0x26be,_0x20618f={'FHOLC':function(_0x409f45,_0x1baea1){return _0x409f45>_0x1baea1;}},_0x35f90d=_0x2ae9df[_0x5a8188(0x11c)];if(typeof _0x35f90d!==_0x5a8188(0xeb))return null;const _0x54d67d=_0x35f90d[_0x5a8188(0x111)]()[_0x5a8188(0x107)](/\s+/g,'\x20');return _0x20618f['FHOLC'](_0x54d67d['length'],0x0)?_0x54d67d:null;}export function formatPlaywrightCliConsoleLogMessage(_0x2db66e,_0x279a75,_0x91ba80){const _0x5517b8=_0x26be,_0x5763dc={'CDWbE':function(_0x222295,_0x1cf333,_0x5daf41){return _0x222295(_0x1cf333,_0x5daf41);}},_0x7d4b55=_0x5763dc[_0x5517b8(0x128)](formatPlaywrightCliLog,_0x279a75,_0x91ba80),_0x27b499=extractPlaywrightCliToolDescription(_0x2db66e);if(!_0x27b499)return _0x5517b8(0x10c)+_0x7d4b55;if(process[_0x5517b8(0x129)][_0x5517b8(0xd9)])return'[ranger-verification-agent]\x20'+_0x27b499+'\x20('+_0x7d4b55+')';return _0x5517b8(0xfa)+_0x27b499;}export function buildVerifyFeatureCliDebugPrompt(_0x446c14,_0x4e8642){const _0x387820=_0x26be,_0xb1c2cb={'NvMjh':_0x387820(0x13a),'fFjhd':function(_0x5f561b,_0x28e11a,_0x1926da){return _0x5f561b(_0x28e11a,_0x1926da);},'QcsZt':_0x387820(0xd3),'HgUlj':'02_learn-more.yml','tCPni':function(_0x3d45da,_0x57c7cf,_0x3e08be){return _0x3d45da(_0x57c7cf,_0x3e08be);},'lRZJT':_0x387820(0x12e),'wmoLi':function(_0x291ea5,_0x3fc43f){return _0x291ea5(_0x3fc43f);},'MeoVM':function(_0x5e7e06,_0x8ecee2){return _0x5e7e06(_0x8ecee2);}},_0x29a9ec=buildCliArtifactPath(_0x4e8642,_0xb1c2cb[_0x387820(0x101)]),_0x2c5edd=_0xb1c2cb['fFjhd'](buildCliArtifactPath,_0x4e8642,_0xb1c2cb['QcsZt']),_0x37ff51=buildCliArtifactPath(_0x4e8642,_0xb1c2cb[_0x387820(0x122)]),_0x58b430=_0xb1c2cb[_0x387820(0x123)](buildCliArtifactPath,_0x4e8642,_0xb1c2cb['lRZJT']),_0x2b8e2b=quoteShellArg(_0x29a9ec),_0x532a52=_0xb1c2cb[_0x387820(0xe4)](quoteShellArg,_0x2c5edd),_0x352b46=quoteShellArg(_0x37ff51),_0x3392b7=_0xb1c2cb[_0x387820(0x156)](quoteShellArg,_0x58b430);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x446c14+'\x0a\x0a1.\x20Run\x20`'+_0x446c14+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x446c14+_0x387820(0xf4)+_0x446c14+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x4e8642+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x446c14+'\x20snapshot\x20--filename\x20'+_0x2b8e2b+_0x387820(0xda)+_0x446c14+'\x20screenshot\x20--filename\x20'+_0x532a52+_0x387820(0x100)+_0x446c14+_0x387820(0x139)+_0x352b46+_0x387820(0x10e)+_0x446c14+'\x20screenshot\x20--filename\x20'+_0x3392b7+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x2076c5){const _0x580922=_0x26be,_0x397e3d={'mBrkO':_0x580922(0x152),'XvIRW':_0x580922(0x150),'BPPMl':'element','TAOsn':function(_0x2cebfe,_0x2355f6,_0x2f6cc5){return _0x2cebfe(_0x2355f6,_0x2f6cc5);},'akubl':'01_initial.yml','eFnSG':'02_state.yml','yogAD':'key_03_success-state.png','yGmQk':'01_initial-state.png','xvkGT':function(_0x186b0c,_0x170fe1){return _0x186b0c(_0x170fe1);},'yAGEA':function(_0xe55b1c,_0x198698){return _0xe55b1c>_0x198698;},'toELz':function(_0x975a39,_0x495c8f,_0x1c943e){return _0x975a39(_0x495c8f,_0x1c943e);},'MqyIY':_0x580922(0x154),'NSxaV':_0x580922(0x10f)},{checklistItem:_0x44c832,itemFeedback:_0x4a6546,taskDescription:_0x519100,cliCommandPrefix:_0x230385,cliArtifactDir:_0x9464d6,isCdpMode:_0x152792,url:_0x125434,cdpEndpoint:_0x263187,loginInstructions:_0xb985e1}=_0x2076c5,_0x273660=_0x397e3d[_0x580922(0x145)](buildCliArtifactPath,_0x9464d6,_0x397e3d[_0x580922(0xd5)]),_0x1520cd=_0x397e3d[_0x580922(0x145)](buildCliArtifactPath,_0x9464d6,_0x397e3d['eFnSG']),_0x450c8b=buildCliArtifactPath(_0x9464d6,_0x397e3d[_0x580922(0x110)]),_0x12dd2e=buildCliArtifactPath(_0x9464d6,_0x397e3d[_0x580922(0x12b)]),_0x1a489b=quoteShellArg(_0x273660),_0x2e8746=_0x397e3d['xvkGT'](quoteShellArg,_0x1520cd),_0x1dba3e=quoteShellArg(_0x450c8b),_0x5ff42d=_0x397e3d['xvkGT'](quoteShellArg,_0x12dd2e),_0x366b8c=_0x44c832[_0x580922(0xef)]?_0x580922(0x10d)+_0x44c832[_0x580922(0xef)]:'';let _0x2c0ee6='';if(_0x4a6546&&_0x397e3d[_0x580922(0x137)](_0x4a6546[_0x580922(0x153)][_0x580922(0x14c)],0x0)){const _0x3db5ba=_0x4a6546[_0x580922(0x153)][_0x580922(0x116)](_0x1ffc97=>{const _0x1a77fe=_0x580922,_0x52da55=new Date(_0x1ffc97['createdAt'])[_0x1a77fe(0x106)](_0x397e3d['mBrkO'],{'month':'short','day':'numeric'}),_0x3d7cd3=_0x1ffc97[_0x1a77fe(0xd4)]||_0x1ffc97[_0x1a77fe(0x102)]||_0x397e3d['XvIRW'],_0x3d9fd7=_0x1ffc97[_0x1a77fe(0xe5)]?_0x1a77fe(0xe1)+(_0x1ffc97['domRef'][_0x1a77fe(0x14a)][_0x1a77fe(0x140)](_0x1a77fe(0x11b))['pop']()?.['split'](':')[0x0]||_0x397e3d['BPPMl'])+'>\x20\x22'+(_0x1ffc97['domRef']['textContent']||'')[_0x1a77fe(0xd8)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x1ffc97['id']+']\x20**'+_0x3d7cd3+_0x1a77fe(0x158)+_0x52da55+_0x1a77fe(0x15b)+_0x1ffc97['content']+'\x22'+_0x3d9fd7;})['join']('\x0a');_0x2c0ee6='\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'+_0x3db5ba;}const _0x34cc45=_0x4a6546?.[_0x580922(0x136)]?_0x580922(0x14b)+_0x4a6546['canonicalFlow']:'',_0x3946ff=_0x152792?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x263187+_0x580922(0x146):_0x580922(0x13c)+_0x125434+_0x580922(0xfb),_0x1b9d5e=_0x125434?_0x397e3d['xvkGT'](quoteShellArg,_0x125434):'',_0x3140d2=_0x152792?_0x580922(0x105)+_0x230385+'\x20open`,\x20then\x20`'+_0x230385+'\x20tracing-start`,\x20then\x20`'+_0x230385+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x9464d6+_0x580922(0xde)+_0x230385+'\x20snapshot\x20--filename\x20'+_0x1a489b+_0x580922(0x151)+_0x230385+'\x20screenshot\x20--filename\x20'+_0x5ff42d+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x230385+'\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':_0x580922(0x105)+_0x230385+'\x20open\x20'+_0x1b9d5e+'`,\x20then\x20`'+_0x230385+'\x20tracing-start`,\x20then\x20`'+_0x230385+_0x580922(0xdd)+_0x9464d6+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x230385+'\x20snapshot\x20--filename\x20'+_0x1a489b+_0x580922(0x141)+_0x230385+'\x20screenshot\x20--filename\x20'+_0x5ff42d+_0x580922(0x130)+_0x230385+'\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',_0x2bc6c3=_0x152792?'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.':'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0xfd4a11=_0xb985e1?_0x580922(0x13d)+_0xb985e1+_0x580922(0x13e):'';return _0x580922(0x11f)+_0x44c832[_0x580922(0x11c)]+_0x366b8c+_0x2c0ee6+_0x34cc45+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x519100+'\x0a\x0a'+_0x3946ff+_0xfd4a11+'\x0a\x0a'+_0x3140d2+_0x580922(0x147)+_0x230385+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x9464d6+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x2e8746+_0x580922(0x143)+_0x1dba3e+_0x580922(0x14d)+_0x9464d6+_0x580922(0xdc)+_0x12dd2e+'\x22,\x20\x22'+buildCliArtifactPath(_0x9464d6,'02_button-clicked.png')+'\x22,\x20\x22'+_0x397e3d[_0x580922(0xe7)](buildCliArtifactPath,_0x9464d6,_0x397e3d['MqyIY'])+_0x580922(0x15c)+buildCliArtifactPath(_0x9464d6,_0x397e3d['NSxaV'])+'\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'+_0x2bc6c3+_0x580922(0x157);}export function summarizeVerifyFeatureCliCommandAvailability(_0x5a300d){const _0x4e8728=_0x26be,_0xdb7dbc={'QHadb':function(_0x238b00,_0x45c66a){return _0x238b00===_0x45c66a;}},_0x4e9675=[..._0x5a300d[_0x4e8728(0x127)]()]['sort']();let _0xe841a8=0x0;for(const _0x2fa4a2 of _0x5a300d['values']()){_0xe841a8+=_0x2fa4a2;}return{'cliCommandCount':_0xe841a8,'cliCommandsSeen':_0x4e9675,'noCliCommandsCalled':_0xdb7dbc[_0x4e8728(0xdb)](_0xe841a8,0x0)};}export function createVerifyFeatureCliHooks(_0x32f160){const _0x1ca55f=_0x26be,_0x417351={'oQCXF':function(_0x3a8dae,_0x55423b){return _0x3a8dae!==_0x55423b;},'HyWeN':'Bash','xeBvW':function(_0x104df7,_0x558e87){return _0x104df7+_0x558e87;},'JNown':_0x1ca55f(0x10a),'YVqsS':_0x1ca55f(0xf9),'llnEq':function(_0x4f444c,_0x3d6fc3,_0x1cbebb,_0x4e022e){return _0x4f444c(_0x3d6fc3,_0x1cbebb,_0x4e022e);},'lsUmE':'PostToolUseFailure','asESe':'tool_failure'},_0x391c0b=new Map(),_0x2dc6b2=async _0x528ea7=>{const _0x2d229=_0x1ca55f;if(_0x417351['oQCXF'](_0x528ea7[_0x2d229(0x13b)],'PostToolUse'))return{};const _0x296fea=_0x528ea7;if(_0x296fea['tool_name']!==_0x417351['HyWeN'])return{};const _0xcaf76b=_0x296fea[_0x2d229(0x112)],_0x43413b=extractBashCommand(_0xcaf76b);if(!_0x43413b)return{};const _0x19810d=parsePlaywrightCliCommand(_0x43413b);if(!_0x19810d)return{};return _0x391c0b[_0x2d229(0xfe)](_0x19810d,_0x417351[_0x2d229(0xf6)](_0x391c0b[_0x2d229(0xd7)](_0x19810d)||0x0,0x1)),_0x32f160['trackPhaseStart'](_0x2d229(0x149),{'transport':_0x2d229(0x10a),'toolName':_0x19810d}),_0x32f160['trackPhaseEnd']('tool_call',{'transport':_0x417351[_0x2d229(0xe0)],'toolName':_0x19810d,'bashCommandPreview':truncatePreview(_0x43413b)}),_0x19810d!==_0x417351[_0x2d229(0xe8)]&&console[_0x2d229(0x134)](_0x417351['llnEq'](formatPlaywrightCliConsoleLogMessage,_0xcaf76b,_0x43413b,_0x19810d)),{};},_0x2983f3=async _0x8f9f0f=>{const _0x1b5c39=_0x1ca55f;if(_0x8f9f0f['hook_event_name']!==_0x417351['lsUmE'])return{};const _0x29bee7=_0x8f9f0f;if(_0x417351[_0x1b5c39(0x118)](_0x29bee7['tool_name'],_0x1b5c39(0x125)))return{};return await _0x32f160['trackPhaseError'](_0x417351['asESe'],_0x29bee7[_0x1b5c39(0x12c)],{'transport':_0x1b5c39(0x10a),'toolName':_0x1b5c39(0x125)}),{};};return{'postToolUseHook':_0x2dc6b2,'postToolUseFailureHook':_0x2983f3,'commandCounts':_0x391c0b};}function _0x26be(_0x2d59ca,_0x45574b){_0x2d59ca=_0x2d59ca-0xd3;const _0x3317ff=_0x3317();let _0x26be7e=_0x3317ff[_0x2d59ca];return _0x26be7e;}async function runPlaywrightCliLifecycleCommand(_0x4c9486){const _0x103fcb=_0x26be,_0x331eb7={'udHYL':function(_0x5230db,_0x401890,_0x2516fe){return _0x5230db(_0x401890,_0x2516fe);}},{sessionId:_0x57c0d4,configPath:_0x3b1cae,commandArgs:_0x295904,env:_0x10e269,telemetry:_0x1a5f48,phase:_0x2e0fbd,metadata:_0x480c44,timeoutMs:_0x12ca9e}=_0x4c9486;_0x1a5f48['trackPhaseStart'](_0x2e0fbd,_0x480c44);try{const _0x2d6779=await runPlaywrightCliCommand({'sessionId':_0x57c0d4,'configPath':_0x3b1cae,'commandArgs':_0x295904,'cwd':process['cwd'](),'env':_0x10e269,'timeoutMs':_0x12ca9e??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x1a5f48['trackPhaseEnd'](_0x2e0fbd,{..._0x480c44,'subcommand':_0x2d6779[_0x103fcb(0x121)][_0x103fcb(0x15d)],'stdoutPreview':_0x331eb7['udHYL'](truncatePreview,_0x2d6779[_0x103fcb(0x113)],0x7d0),'stderrPreview':truncatePreview(_0x2d6779[_0x103fcb(0x138)],0x7d0)});}catch(_0x3000db){await _0x1a5f48['trackPhaseError'](_0x2e0fbd,_0x3000db,_0x480c44);throw _0x3000db;}}export async function finalizeVerifyFeatureCliSession(_0x418d7d){const _0x51a955=_0x26be,_0x50a749={'PqDtP':'video-stop','nbFPj':function(_0x209c2a,_0xb2b38b,_0x36ede7){return _0x209c2a(_0xb2b38b,_0x36ede7);},'KYwtG':_0x51a955(0x10b),'AOCWk':_0x51a955(0xf1),'HYcaM':'close'},{telemetry:_0x318ae9,sessionId:_0x2a0bac,configPath:_0x46c353,cliArtifactDir:_0x11e584,env:_0x2527a3,transportMetadata:_0x226391}=_0x418d7d,_0x1520f5=[{'phase':'playwright_cli_tracing_stop','commandArgs':['tracing-stop']},{'phase':'playwright_cli_video_stop','commandArgs':[_0x50a749[_0x51a955(0x15a)],'--filename='+_0x50a749['nbFPj'](buildCliArtifactPath,_0x11e584,_0x50a749['KYwtG'])]},{'phase':_0x50a749['AOCWk'],'commandArgs':[_0x50a749['HYcaM']]}];for(const _0x19c89f of _0x1520f5){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x2a0bac,'configPath':_0x46c353,'commandArgs':[..._0x19c89f[_0x51a955(0x117)]],'env':_0x2527a3,'telemetry':_0x318ae9,'phase':_0x19c89f[_0x51a955(0xf7)],'metadata':_0x226391});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x25eb95){const _0x54bc10={'mbjaP':'trace.zip','KNqYR':function(_0x511ac7,_0x116522,_0x48af02){return _0x511ac7(_0x116522,_0x48af02);}},_0x255f4b=[_0x54bc10['mbjaP'],'trace.trace.zip'];for(const _0x251c1a of _0x255f4b){const _0x3dc3c5=_0x54bc10['KNqYR'](join,_0x25eb95,_0x251c1a);try{return{'buffer':await readFile(_0x3dc3c5),'source':_0x3dc3c5};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x40908f){const _0x569864=_0x26be,_0x4403ab={'AexjV':function(_0x5a1f6f,_0x1f27ab,_0x19b7fa){return _0x5a1f6f(_0x1f27ab,_0x19b7fa);},'gngtM':function(_0x44cf38,_0x4c7484){return _0x44cf38(_0x4c7484);},'qarFW':function(_0x72d43f,_0x18956a){return _0x72d43f<_0x18956a;},'CttUJ':function(_0x56f222,_0x47cb15){return _0x56f222+_0x47cb15;},'JDQkk':function(_0x259780,_0x437b3f,_0xac52e3){return _0x259780(_0x437b3f,_0xac52e3);}},{cwd:_0x1503a7,cliArtifactDir:_0x514ef2,startTime:_0x156186}=_0x40908f,_0x3e59cc=[];await mkdir(_0x514ef2,{'recursive':!![]});const _0x3e74ea=await _0x4403ab[_0x569864(0xf3)](readdir,_0x1503a7,{'withFileTypes':!![]});for(const _0x3e4150 of _0x3e74ea){if(!_0x3e4150['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x3e4150[_0x569864(0x11a)]))continue;const _0x2141b5=join(_0x1503a7,_0x3e4150['name']),_0x439be0=await _0x4403ab['gngtM'](stat,_0x2141b5);if(_0x4403ab['qarFW'](_0x4403ab['CttUJ'](_0x439be0[_0x569864(0x133)],0x7d0),_0x156186))continue;const _0x17edd1=_0x4403ab[_0x569864(0xf3)](buildCliArtifactPath,_0x514ef2,_0x3e4150[_0x569864(0x11a)]);if(_0x2141b5===_0x17edd1)continue;await _0x4403ab['JDQkk'](rename,_0x2141b5,_0x17edd1),_0x3e59cc[_0x569864(0xee)](_0x3e4150['name']);}return _0x3e59cc['sort']();}
1
+ function _0x4561(_0x34d36f,_0x242927){_0x34d36f=_0x34d36f-0x1ab;const _0x5a72e0=_0x5a72();let _0x45618e=_0x5a72e0[_0x34d36f];return _0x45618e;}(function(_0x44039c,_0x48c0e1){const _0x1c9b30=_0x4561,_0x1829e3=_0x44039c();while(!![]){try{const _0x150326=parseInt(_0x1c9b30(0x1c2))/0x1+parseInt(_0x1c9b30(0x1bf))/0x2*(parseInt(_0x1c9b30(0x216))/0x3)+-parseInt(_0x1c9b30(0x1c1))/0x4+parseInt(_0x1c9b30(0x1b7))/0x5*(parseInt(_0x1c9b30(0x1fa))/0x6)+parseInt(_0x1c9b30(0x1b5))/0x7*(-parseInt(_0x1c9b30(0x1c8))/0x8)+parseInt(_0x1c9b30(0x1f7))/0x9*(-parseInt(_0x1c9b30(0x1f5))/0xa)+parseInt(_0x1c9b30(0x1c7))/0xb*(parseInt(_0x1c9b30(0x1ca))/0xc);if(_0x150326===_0x48c0e1)break;else _0x1829e3['push'](_0x1829e3['shift']());}catch(_0x59ada4){_0x1829e3['push'](_0x1829e3['shift']());}}}(_0x5a72,0x8cb89));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(_0x19bf62,_0x696e4c=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x1d996f=_0x4561,_0x1f3c8e={'ZGZbk':function(_0x4a2a8a,_0x5f52c8){return _0x4a2a8a+_0x5f52c8;},'UlnMi':_0x1d996f(0x1f9)};return _0x19bf62['length']>_0x696e4c?_0x1f3c8e[_0x1d996f(0x223)](_0x19bf62[_0x1d996f(0x1d8)](0x0,_0x696e4c),_0x1f3c8e[_0x1d996f(0x214)]):_0x19bf62;}function buildCliArtifactPath(_0x591d74,_0x3ce449){const _0x4f9a7e=_0x4561,_0x524f3a={'VKDcR':function(_0x1b4d15,_0x46df39,_0x7ae1d8){return _0x1b4d15(_0x46df39,_0x7ae1d8);}};return _0x524f3a[_0x4f9a7e(0x210)](join,_0x591d74,_0x3ce449);}function toStepDisplayName(_0x33cc30){const _0xac9383=_0x4561,_0x55da68={'ofhrr':function(_0x51978f,_0x13433c){return _0x51978f(_0x13433c);}},_0x3b21d7=_0x55da68[_0xac9383(0x1c3)](basename,_0x33cc30)[_0xac9383(0x1c4)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0xac9383(0x1c4)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x3b21d7,'isKeyStep':/^key_/i['test'](basename(_0x33cc30))};}function extractShellValue(_0x5fe6ef){if(!_0x5fe6ef)return null;return _0x5fe6ef[0x1]??_0x5fe6ef[0x2]??_0x5fe6ef[0x3]??null;}function extractFilenameOption(_0x2b0016){return extractShellValue(_0x2b0016['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x497ade,_0x371a9e){const _0xf73305=_0x4561,_0xa0fb29={'cJadm':'\x5c$&','razVB':function(_0x1e0e01,_0x57a399){return _0x1e0e01(_0x57a399);}},_0x54d03e=_0x371a9e['replace'](/[.*+?^${}()|[\]\\]/g,_0xa0fb29[_0xf73305(0x1ba)]);return _0xa0fb29[_0xf73305(0x1d1)](extractShellValue,_0x497ade['match'](new RegExp('(?:^|\x5cs)'+_0x54d03e+_0xf73305(0x1c0))));}function _0x5a72(){const _0xbb516d=['check\x20','unaddressedComments','razVB','>\x20\x22','close','snapshot','sXUoK','Reviewer','YVxZg','slice','sort','target','hook_event_name','\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','UeVbI','\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.','UARRb','capture\x20snapshot','click\x20','tzAfV','split','sDqSR','press','commandArgs','EZfQV','domRef','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','yTWiX','vfIyn','name','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','capture\x20key\x20step\x20`','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','03_result-visible.png','\x0a\x0a1.\x20Run\x20`','`,\x20then\x20`','get','\x20tracing-start`\x0a3.\x20Run\x20`','58310jcYpuO','):\x20\x22','738Ezkfph','playwright_cli_close','...','858522ArduKK','GtUJU','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','open\x20new\x20tab\x20','pwAbf','authorName','UOEVX','stop\x20video\x20recording','mtimeMs','DEBUG','dRMiO','oBDjl','\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.','phase','DcfaF','en-US','01_initial-state.png','\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','01_initial.yml','playwright-cli','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','oevVt','VKDcR','\x20snapshot\x20--filename\x20','set','fill','UlnMi','subcommand','135897kOgpPM','stop\x20tracing','\x20tracing-start`,\x20then\x20`','**\x20(','`\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`','02_state.yml','\x20open`,\x20then\x20`','PIwBA','invocation','trackPhaseError','key_03_success-state.png','SddDt','tool_call','ZGZbk','open\x20','dqXLI','\x0a\x0a##\x20Additional\x20Notes\x0a','authorEmail','\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.','xTxCu','\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.','content',']\x20**','select\x20tab','YGiXS','iOilr','[ranger-verification-agent]\x20','SMfec','02_learn-more.yml','map','JOfQF','capture\x20screenshot','stderr','RTPLF','ufYVG','test','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','PostToolUse','selector','\x20screenshot\x20--filename\x20','455UJCQFA','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','5IxREsn','playwright_cli_video_stop','algKt','cJadm','string','createdAt','`:\x20\x22','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','10zjKJqa','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','1974420BQIImb','88472HXUcpd','ofhrr','replace','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','video-start','583oFDLaG','40504nWitnb','trace.zip','321324jSOdSD','click','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','oerTA','fcUZt'];_0x5a72=function(){return _0xbb516d;};return _0x5a72();}function formatCommandTarget(_0x365d62){const _0x3743ab=_0x4561,_0x217a32={'dRMiO':_0x3743ab(0x1da),'aiAeJ':function(_0x903399,_0x5171a3,_0x14ca97){return _0x903399(_0x5171a3,_0x14ca97);}};if(!_0x365d62)return _0x217a32[_0x3743ab(0x204)];if(/^e\d+$/i[_0x3743ab(0x1b0)](_0x365d62))return'ref\x20'+_0x365d62;return JSON['stringify'](_0x217a32['aiAeJ'](truncatePreview,_0x365d62,0x78));}function formatPlaywrightCliLog(_0x20d94b,_0x495329){const _0x5a017e=_0x4561,_0x304b6b={'DmuBF':'open','HBzOe':function(_0x3cf8ba,_0x13fb0f,_0x27790b){return _0x3cf8ba(_0x13fb0f,_0x27790b);},'YGiXS':'open\x20browser','dgdmU':'tracing-start','oRSYu':'tracing-stop','SMfec':_0x5a017e(0x217),'xBWlr':'start\x20video\x20recording','YVxZg':'video-stop','bnaGK':'snapshot','UeVbI':'screenshot','DWgES':function(_0x48d7d6,_0x2cdd45){return _0x48d7d6(_0x2cdd45);},'tzAfV':function(_0x3dd84d,_0x1780b9){return _0x3dd84d(_0x1780b9);},'lwzfx':function(_0x43bee4,_0x146967){return _0x43bee4(_0x146967);},'iQbRC':_0x5a017e(0x213),'POfIB':function(_0x2cfec8,_0x579a73,_0x1f7a63){return _0x2cfec8(_0x579a73,_0x1f7a63);},'rNuOe':'run\x20custom\x20Playwright\x20code','woKFZ':'tab-select','RSFnY':function(_0xdfaca2,_0x50acd0,_0x52c395){return _0xdfaca2(_0x50acd0,_0x52c395);},'iOilr':_0x5a017e(0x22d)};switch(_0x495329){case _0x304b6b['DmuBF']:{const _0x69dd1=_0x304b6b['HBzOe'](extractFirstCommandArgument,_0x20d94b,_0x495329);return _0x69dd1?_0x5a017e(0x224)+_0x69dd1:_0x304b6b[_0x5a017e(0x22e)];}case _0x304b6b['dgdmU']:return'start\x20tracing';case _0x304b6b['oRSYu']:return _0x304b6b[_0x5a017e(0x231)];case _0x5a017e(0x1c6):return _0x304b6b['xBWlr'];case _0x304b6b[_0x5a017e(0x1d7)]:return _0x5a017e(0x201);case _0x304b6b['bnaGK']:{const _0x17c0a9=extractFilenameOption(_0x20d94b);if(!_0x17c0a9)return _0x5a017e(0x1e0);const {name:_0x3795ee}=toStepDisplayName(_0x17c0a9);return'capture\x20snapshot\x20`'+_0x3795ee+'`';}case _0x304b6b[_0x5a017e(0x1dd)]:{const _0xa6b851=_0x304b6b['DWgES'](extractFilenameOption,_0x20d94b);if(!_0xa6b851)return _0x5a017e(0x1ac);const {name:_0x1792e5,isKeyStep:_0x4b8ed6}=_0x304b6b['DWgES'](toStepDisplayName,_0xa6b851);return _0x4b8ed6?_0x5a017e(0x1ee)+_0x1792e5+'`':'capture\x20step\x20`'+_0x1792e5+'`';}case _0x5a017e(0x1cb):return _0x5a017e(0x1e1)+_0x304b6b['tzAfV'](formatCommandTarget,extractFirstCommandArgument(_0x20d94b,_0x495329));case'check':return _0x5a017e(0x1cf)+_0x304b6b['lwzfx'](formatCommandTarget,_0x304b6b['HBzOe'](extractFirstCommandArgument,_0x20d94b,_0x495329));case _0x304b6b['iQbRC']:return'fill\x20'+formatCommandTarget(extractFirstCommandArgument(_0x20d94b,_0x495329));case _0x5a017e(0x1e5):return'press\x20'+_0x304b6b[_0x5a017e(0x1e2)](formatCommandTarget,_0x304b6b['POfIB'](extractFirstCommandArgument,_0x20d94b,_0x495329));case'run-code':return _0x304b6b['rNuOe'];case'tab-new':{const _0x2b76ba=extractFirstCommandArgument(_0x20d94b,_0x495329);return _0x2b76ba?_0x5a017e(0x1fd)+_0x2b76ba:'open\x20new\x20tab';}case _0x304b6b['woKFZ']:{const _0x4de45f=_0x304b6b['RSFnY'](extractFirstCommandArgument,_0x20d94b,_0x495329);return _0x4de45f?'select\x20tab\x20'+_0x4de45f:_0x304b6b[_0x5a017e(0x22f)];}default:return _0x495329;}}function extractPlaywrightCliToolDescription(_0x1e2f52){const _0x3aecd1=_0x4561,_0x146a57={'FmeZf':function(_0x503364,_0x489b70){return _0x503364!==_0x489b70;},'pwAbf':_0x3aecd1(0x1bb)},_0xf05ee3=_0x1e2f52['description'];if(_0x146a57['FmeZf'](typeof _0xf05ee3,_0x146a57[_0x3aecd1(0x1fe)]))return null;const _0x3d1f53=_0xf05ee3['trim']()[_0x3aecd1(0x1c4)](/\s+/g,'\x20');return _0x3d1f53['length']>0x0?_0x3d1f53:null;}export function formatPlaywrightCliConsoleLogMessage(_0x50e015,_0x4ee1d1,_0x41307b){const _0x3cfb6f=_0x4561,_0x545d28=formatPlaywrightCliLog(_0x4ee1d1,_0x41307b),_0x41bd9c=extractPlaywrightCliToolDescription(_0x50e015);if(!_0x41bd9c)return'[playwright-cli]\x20'+_0x545d28;if(process['env'][_0x3cfb6f(0x203)])return'[ranger-verification-agent]\x20'+_0x41bd9c+'\x20('+_0x545d28+')';return _0x3cfb6f(0x230)+_0x41bd9c;}export function buildVerifyFeatureCliDebugPrompt(_0x15e282,_0x57d1a7){const _0x3cb62a=_0x4561,_0x101efc={'sDqSR':function(_0x822651,_0x595928,_0x4ca745){return _0x822651(_0x595928,_0x4ca745);},'ZWpWD':'00_mozilla-homepage.yml','xTxCu':'03_learn-more.png','sqGmH':function(_0x400f78,_0x2260eb){return _0x400f78(_0x2260eb);},'FpXMP':function(_0x326ab8,_0x2dcae9){return _0x326ab8(_0x2dcae9);}},_0x4e0b21=_0x101efc[_0x3cb62a(0x1e4)](buildCliArtifactPath,_0x57d1a7,_0x101efc['ZWpWD']),_0x2d0fe2=_0x101efc[_0x3cb62a(0x1e4)](buildCliArtifactPath,_0x57d1a7,'01_mozilla-homepage.png'),_0x218936=buildCliArtifactPath(_0x57d1a7,_0x3cb62a(0x232)),_0x4dfdd9=buildCliArtifactPath(_0x57d1a7,_0x101efc[_0x3cb62a(0x229)]),_0x56327e=_0x101efc['sqGmH'](quoteShellArg,_0x4e0b21),_0x2d0174=quoteShellArg(_0x2d0fe2),_0x23cbf1=quoteShellArg(_0x218936),_0x5544d8=_0x101efc['FpXMP'](quoteShellArg,_0x4dfdd9);return _0x3cb62a(0x1ef)+_0x15e282+_0x3cb62a(0x1f1)+_0x15e282+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x15e282+_0x3cb62a(0x1f4)+_0x15e282+_0x3cb62a(0x1c5)+_0x57d1a7+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x15e282+_0x3cb62a(0x211)+_0x56327e+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x15e282+'\x20screenshot\x20--filename\x20'+_0x2d0174+_0x3cb62a(0x1b6)+_0x15e282+'\x20snapshot\x20--filename\x20'+_0x23cbf1+'`\x0a9.\x20Run\x20`'+_0x15e282+'\x20screenshot\x20--filename\x20'+_0x5544d8+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x598ebb){const _0x39e4fd=_0x4561,_0x17e24c={'sXUoK':'short','yTWiX':'\x20>\x20','zNPPW':_0x39e4fd(0x20c),'fcUZt':function(_0x5673bf,_0x4b9828,_0x1a82cf){return _0x5673bf(_0x4b9828,_0x1a82cf);},'rlodj':_0x39e4fd(0x21b),'vfIyn':function(_0x2b4441,_0x3306e3,_0x185a6c){return _0x2b4441(_0x3306e3,_0x185a6c);},'oBDjl':_0x39e4fd(0x20a),'dqXLI':function(_0x467efe,_0x3276d6){return _0x467efe(_0x3276d6);},'GtUJU':function(_0x1e3ada,_0x3840af){return _0x1e3ada>_0x3840af;},'Tnmqu':function(_0x15deb6,_0x452355,_0x47f6a5){return _0x15deb6(_0x452355,_0x47f6a5);},'AfazC':'02_button-clicked.png','EZfQV':_0x39e4fd(0x1f0)},{checklistItem:_0x574021,itemFeedback:_0x38ca78,taskDescription:_0x23096d,cliCommandPrefix:_0x320f62,cliArtifactDir:_0x3462af,isCdpMode:_0x2c005a,url:_0x1d2fa7,cdpEndpoint:_0xd38554,loginInstructions:_0x2626d2}=_0x598ebb,_0x5329b8=buildCliArtifactPath(_0x3462af,_0x17e24c['zNPPW']),_0x3a8639=_0x17e24c['fcUZt'](buildCliArtifactPath,_0x3462af,_0x17e24c['rlodj']),_0x3d6ca8=_0x17e24c[_0x39e4fd(0x1ce)](buildCliArtifactPath,_0x3462af,_0x39e4fd(0x220)),_0x23f1a4=_0x17e24c[_0x39e4fd(0x1eb)](buildCliArtifactPath,_0x3462af,_0x17e24c[_0x39e4fd(0x205)]),_0x419918=quoteShellArg(_0x5329b8),_0x3296e5=_0x17e24c[_0x39e4fd(0x225)](quoteShellArg,_0x3a8639),_0x186388=quoteShellArg(_0x3d6ca8),_0xe1b055=quoteShellArg(_0x23f1a4),_0x61a17f=_0x574021['notes']?_0x39e4fd(0x226)+_0x574021['notes']:'';let _0x414e9a='';if(_0x38ca78&&_0x17e24c[_0x39e4fd(0x1fb)](_0x38ca78[_0x39e4fd(0x1d0)]['length'],0x0)){const _0x35865b=_0x38ca78['unaddressedComments'][_0x39e4fd(0x233)](_0x34bc41=>{const _0x420d32=_0x39e4fd,_0x100288=new Date(_0x34bc41[_0x420d32(0x1bc)])['toLocaleDateString'](_0x420d32(0x209),{'month':_0x17e24c[_0x420d32(0x1d5)],'day':'numeric'}),_0x1a141c=_0x34bc41[_0x420d32(0x1ff)]||_0x34bc41[_0x420d32(0x227)]||_0x420d32(0x1d6),_0x4bc942=_0x34bc41[_0x420d32(0x1e8)]?'\x20(on\x20element:\x20<'+(_0x34bc41[_0x420d32(0x1e8)][_0x420d32(0x1b3)]['split'](_0x17e24c[_0x420d32(0x1ea)])['pop']()?.[_0x420d32(0x1e3)](':')[0x0]||'element')+_0x420d32(0x1d2)+(_0x34bc41[_0x420d32(0x1e8)]['textContent']||'')[_0x420d32(0x1d8)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x34bc41['id']+_0x420d32(0x22c)+_0x1a141c+_0x420d32(0x219)+_0x100288+_0x420d32(0x1f6)+_0x34bc41[_0x420d32(0x22b)]+'\x22'+_0x4bc942;})['join']('\x0a');_0x414e9a=_0x39e4fd(0x20b)+_0x35865b;}const _0x282f5c=_0x38ca78?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x38ca78['canonicalFlow']:'',_0x16955b=_0x2c005a?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0xd38554+_0x39e4fd(0x1ed):_0x39e4fd(0x1fc)+_0x1d2fa7+'\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',_0x55abdf=_0x1d2fa7?_0x17e24c['dqXLI'](quoteShellArg,_0x1d2fa7):'',_0xb626ad=_0x2c005a?_0x39e4fd(0x1be)+_0x320f62+_0x39e4fd(0x21c)+_0x320f62+_0x39e4fd(0x218)+_0x320f62+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x3462af+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x320f62+_0x39e4fd(0x211)+_0x419918+'`\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`'+_0x320f62+_0x39e4fd(0x1b4)+_0xe1b055+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x320f62+_0x39e4fd(0x1dc):_0x39e4fd(0x1be)+_0x320f62+'\x20open\x20'+_0x55abdf+_0x39e4fd(0x1f2)+_0x320f62+'\x20tracing-start`,\x20then\x20`'+_0x320f62+_0x39e4fd(0x1cc)+_0x3462af+_0x39e4fd(0x1e9)+_0x320f62+'\x20snapshot\x20--filename\x20'+_0x419918+'`\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`'+_0x320f62+'\x20screenshot\x20--filename\x20'+_0xe1b055+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x320f62+'\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',_0x2a0996=_0x2c005a?_0x39e4fd(0x228):_0x39e4fd(0x22a),_0x587e9b=_0x2626d2?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x2626d2+_0x39e4fd(0x1de):'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x574021['description']+_0x61a17f+_0x414e9a+_0x282f5c+_0x39e4fd(0x1b1)+_0x23096d+'\x0a\x0a'+_0x16955b+_0x587e9b+'\x0a\x0a'+_0xb626ad+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x320f62+_0x39e4fd(0x20e)+_0x3462af+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x3296e5+'`\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'+_0x186388+_0x39e4fd(0x21a)+_0x3462af+_0x39e4fd(0x1bd)+_0x23f1a4+'\x22,\x20\x22'+_0x17e24c['Tnmqu'](buildCliArtifactPath,_0x3462af,_0x17e24c['AfazC'])+'\x22,\x20\x22'+buildCliArtifactPath(_0x3462af,_0x17e24c[_0x39e4fd(0x1e7)])+'\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'+_0x17e24c['fcUZt'](buildCliArtifactPath,_0x3462af,'key_04_success-state.png')+'\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a'+_0x2a0996+_0x39e4fd(0x206);}export function summarizeVerifyFeatureCliCommandAvailability(_0x31f12e){const _0x21da00=_0x4561,_0x288abe={'PIwBA':function(_0x51f86c,_0x128141){return _0x51f86c===_0x128141;}},_0x497e9b=[..._0x31f12e['keys']()]['sort']();let _0x25eab1=0x0;for(const _0x11edf8 of _0x31f12e['values']()){_0x25eab1+=_0x11edf8;}return{'cliCommandCount':_0x25eab1,'cliCommandsSeen':_0x497e9b,'noCliCommandsCalled':_0x288abe[_0x21da00(0x21d)](_0x25eab1,0x0)};}export function createVerifyFeatureCliHooks(_0x198bb0){const _0x2bdaee=_0x4561,_0x4ce10e={'DcfaF':function(_0xe6fb40,_0x26ccb){return _0xe6fb40!==_0x26ccb;},'JOfQF':'Bash','UOEVX':function(_0x5819ca,_0x41efa9){return _0x5819ca(_0x41efa9);},'DLreE':_0x2bdaee(0x222),'SddDt':function(_0x4bf0ab,_0x1fa208,_0x20f267,_0x562605){return _0x4bf0ab(_0x1fa208,_0x20f267,_0x562605);}},_0x560d9d=new Map(),_0xcf9d4b=async _0x2e76c9=>{const _0xb979d1=_0x2bdaee;if(_0x2e76c9[_0xb979d1(0x1db)]!==_0xb979d1(0x1b2))return{};const _0x486a91=_0x2e76c9;if(_0x4ce10e[_0xb979d1(0x208)](_0x486a91['tool_name'],_0x4ce10e['JOfQF']))return{};const _0xba8397=_0x486a91['tool_input'],_0x3bf26e=_0x4ce10e[_0xb979d1(0x200)](extractBashCommand,_0xba8397);if(!_0x3bf26e)return{};const _0x2551d6=_0x4ce10e['UOEVX'](parsePlaywrightCliCommand,_0x3bf26e);if(!_0x2551d6)return{};return _0x560d9d[_0xb979d1(0x212)](_0x2551d6,(_0x560d9d[_0xb979d1(0x1f3)](_0x2551d6)||0x0)+0x1),_0x198bb0['trackPhaseStart'](_0x4ce10e['DLreE'],{'transport':_0xb979d1(0x20d),'toolName':_0x2551d6}),_0x198bb0['trackPhaseEnd'](_0xb979d1(0x222),{'transport':'playwright-cli','toolName':_0x2551d6,'bashCommandPreview':truncatePreview(_0x3bf26e)}),_0x2551d6!==_0xb979d1(0x1d4)&&console['log'](_0x4ce10e[_0xb979d1(0x221)](formatPlaywrightCliConsoleLogMessage,_0xba8397,_0x3bf26e,_0x2551d6)),{};},_0x5d5c5e=async _0x4b0b4a=>{const _0x14a50b=_0x2bdaee;if(_0x4b0b4a['hook_event_name']!=='PostToolUseFailure')return{};const _0x41cc04=_0x4b0b4a;if(_0x41cc04['tool_name']!==_0x4ce10e[_0x14a50b(0x1ab)])return{};return await _0x198bb0[_0x14a50b(0x21f)]('tool_failure',_0x41cc04['error'],{'transport':'playwright-cli','toolName':'Bash'}),{};};return{'postToolUseHook':_0xcf9d4b,'postToolUseFailureHook':_0x5d5c5e,'commandCounts':_0x560d9d};}async function runPlaywrightCliLifecycleCommand(_0x2c474e){const _0x4322ed=_0x4561,_0x2b237d={'HgAcM':function(_0x363b95,_0x6d99dd){return _0x363b95??_0x6d99dd;},'algKt':function(_0x361bf7,_0x58897f,_0x3c0643){return _0x361bf7(_0x58897f,_0x3c0643);},'bSOIY':function(_0x165fc7,_0x37e767,_0x373d92){return _0x165fc7(_0x37e767,_0x373d92);}},{sessionId:_0x1f2d10,configPath:_0x367567,commandArgs:_0x194835,env:_0xcff7e4,telemetry:_0x2f3866,phase:_0x4c383b,metadata:_0x2e7798,timeoutMs:_0x34f80e}=_0x2c474e;_0x2f3866['trackPhaseStart'](_0x4c383b,_0x2e7798);try{const _0x39afb6=await runPlaywrightCliCommand({'sessionId':_0x1f2d10,'configPath':_0x367567,'commandArgs':_0x194835,'cwd':process['cwd'](),'env':_0xcff7e4,'timeoutMs':_0x2b237d['HgAcM'](_0x34f80e,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x2f3866['trackPhaseEnd'](_0x4c383b,{..._0x2e7798,'subcommand':_0x39afb6[_0x4322ed(0x21e)][_0x4322ed(0x215)],'stdoutPreview':_0x2b237d[_0x4322ed(0x1b9)](truncatePreview,_0x39afb6['stdout'],0x7d0),'stderrPreview':_0x2b237d['bSOIY'](truncatePreview,_0x39afb6[_0x4322ed(0x1ad)],0x7d0)});}catch(_0x48f239){await _0x2f3866['trackPhaseError'](_0x4c383b,_0x48f239,_0x2e7798);throw _0x48f239;}}export async function finalizeVerifyFeatureCliSession(_0x1b0261){const _0x344a1a=_0x4561,_0x515c31={'ufYVG':'tracing-stop','pKjSR':'video-stop','oerTA':function(_0x277cfe,_0x47c085,_0x21ff51){return _0x277cfe(_0x47c085,_0x21ff51);}},{telemetry:_0x172647,sessionId:_0x174943,configPath:_0x22302c,cliArtifactDir:_0x1996a9,env:_0x16a5f2,transportMetadata:_0x4f7085}=_0x1b0261,_0x254dd3=[{'phase':'playwright_cli_tracing_stop','commandArgs':[_0x515c31[_0x344a1a(0x1af)]]},{'phase':_0x344a1a(0x1b8),'commandArgs':[_0x515c31['pKjSR'],'--filename='+_0x515c31[_0x344a1a(0x1cd)](buildCliArtifactPath,_0x1996a9,'session-recording.webm')]},{'phase':_0x344a1a(0x1f8),'commandArgs':[_0x344a1a(0x1d3)]}];for(const _0x16ac40 of _0x254dd3){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x174943,'configPath':_0x22302c,'commandArgs':[..._0x16ac40[_0x344a1a(0x1e6)]],'env':_0x16a5f2,'telemetry':_0x172647,'phase':_0x16ac40[_0x344a1a(0x207)],'metadata':_0x4f7085});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x1c1feb){const _0x630481=_0x4561,_0x846e8={'BhjnV':_0x630481(0x1c9),'zmwVN':'trace.trace.zip','RTPLF':function(_0x2435b4,_0x30c150){return _0x2435b4(_0x30c150);}},_0x3f2041=[_0x846e8['BhjnV'],_0x846e8['zmwVN']];for(const _0x40e42a of _0x3f2041){const _0xf10fd6=join(_0x1c1feb,_0x40e42a);try{return{'buffer':await _0x846e8[_0x630481(0x1ae)](readFile,_0xf10fd6),'source':_0xf10fd6};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x382b9d){const _0x1cdd6e=_0x4561,_0x309617={'AImao':function(_0x4ff5ac,_0x1d8162,_0x32fbd4){return _0x4ff5ac(_0x1d8162,_0x32fbd4);},'mlaDN':function(_0x5b8e11,_0x132b27){return _0x5b8e11<_0x132b27;},'UARRb':function(_0x157b4c,_0x4a8631){return _0x157b4c+_0x4a8631;},'oevVt':function(_0x208e83,_0x194784,_0x5cc2d8){return _0x208e83(_0x194784,_0x5cc2d8);}},{cwd:_0xb7104e,cliArtifactDir:_0x2d887a,startTime:_0x202a2f}=_0x382b9d,_0x366773=[];await _0x309617['AImao'](mkdir,_0x2d887a,{'recursive':!![]});const _0x25ccf0=await _0x309617['AImao'](readdir,_0xb7104e,{'withFileTypes':!![]});for(const _0x4c6669 of _0x25ccf0){if(!_0x4c6669['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x4c6669['name']))continue;const _0x42a87d=join(_0xb7104e,_0x4c6669[_0x1cdd6e(0x1ec)]),_0x38e3d8=await stat(_0x42a87d);if(_0x309617['mlaDN'](_0x309617[_0x1cdd6e(0x1df)](_0x38e3d8[_0x1cdd6e(0x202)],0x7d0),_0x202a2f))continue;const _0x58f22b=_0x309617['AImao'](buildCliArtifactPath,_0x2d887a,_0x4c6669['name']);if(_0x42a87d===_0x58f22b)continue;await _0x309617[_0x1cdd6e(0x20f)](rename,_0x42a87d,_0x58f22b),_0x366773['push'](_0x4c6669[_0x1cdd6e(0x1ec)]);}return _0x366773[_0x1cdd6e(0x1d9)]();}
@@ -264,7 +264,7 @@ If you encounter authentication issues:
264
264
  1. **Log in with provided credentials**: Set `RANGER_TEST_USERNAME` and `RANGER_TEST_PASSWORD` and re-run `ranger-cli go ...`. The CLI uses those credentials to log in and reuses the same profile on subsequent runs.
265
265
  2. **Check existing profiles**: Run `ranger-cli profile ls` to see all configured profiles.
266
266
  3. **Pin a specific profile**: Use `ranger-cli profile use <profile-name>` (or pass `--profile <name>` / set `RANGER_PROFILE`).
267
- 4. **Refresh auth**: For server-side relogin (headless, no human needed), set `RANGER_TEST_USERNAME` / `RANGER_TEST_PASSWORD` and re-run `ranger-cli go ...`. For SSO/OAuth profiles, ask the user to run `ranger-cli profile add <account-email>` to re-capture session in a headed browser. (Note: `ranger-cli profile update` is deprecated under cloud profiles and will exit non-zero.)
267
+ 4. **Refresh auth**: For server-side relogin (headless, no human needed), set `RANGER_TEST_USERNAME` / `RANGER_TEST_PASSWORD` and re-run `ranger-cli go ...`. For SSO/OAuth profiles, run `ranger-cli profile update <account-email>` to re-capture the session (server-side login when configured, headed browser otherwise).
268
268
 
269
269
 
270
270
  ### Authentication Issues to Ranger
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ranger-testing/ranger-cli",
3
- "version": "2.5.4-alpha.5f9facb-17",
3
+ "version": "2.5.4-alpha.816b7e2-24",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "ranger": "./build/cli.js",