@ranger-testing/ranger-cli 2.5.4-alpha.0e8b82c-9 → 2.5.4-alpha.27e3ee8-11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x4672dc,_0x5f2ced){const _0x442b53=_0x3ff2,_0x4a7578=_0x4672dc();while(!![]){try{const _0x5f2f5d=parseInt(_0x442b53(0x186))/0x1+-parseInt(_0x442b53(0x1c0))/0x2+parseInt(_0x442b53(0x176))/0x3+parseInt(_0x442b53(0x1c9))/0x4*(-parseInt(_0x442b53(0x17e))/0x5)+parseInt(_0x442b53(0x1b0))/0x6*(parseInt(_0x442b53(0x17d))/0x7)+-parseInt(_0x442b53(0x1c8))/0x8+parseInt(_0x442b53(0x1df))/0x9;if(_0x5f2f5d===_0x5f2ced)break;else _0x4a7578['push'](_0x4a7578['shift']());}catch(_0x28303b){_0x4a7578['push'](_0x4a7578['shift']());}}}(_0x12e1,0xd78bc));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(_0x4c70e0,_0x5a68a4=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x50a598=_0x3ff2,_0x2062d0={'skzFf':'...'};return _0x4c70e0[_0x50a598(0x1a6)]>_0x5a68a4?_0x4c70e0['slice'](0x0,_0x5a68a4)+_0x2062d0['skzFf']:_0x4c70e0;}function _0x12e1(){const _0x29c67b=['target','75414ZiNBWo','bYwcq','open\x20new\x20tab\x20','authorEmail','trim','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','ABUzo','7yKUKTK','5ZBSygp','authorName','hook_event_name','trackPhaseStart','map','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','-\x20[','01_initial-state.png','1413524eLYaOr','GHovm','name','02_state.yml','[playwright-cli]\x20','phase','qiWSC','tool_failure','test','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','close','unaddressedComments','\x20snapshot\x20--filename\x20','stdout','toLocaleDateString','content','\x20(on\x20element:\x20<','mtimeMs','trace.trace.zip','video-stop','IslIs','invocation','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','\x20screenshot\x20--filename\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.','PostToolUse','createdAt','Reviewer','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','\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','snapshot','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','length','DMgpM','\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','vaPmy','FJwEV','kfOyf','\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','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20','match','7634286YtESEw','EAddq','select\x20tab','BrRzw','00_mozilla-homepage.yml','pjHca','`\x0a-\x20`snapshot\x20--filename\x20','gQCSC','MDswe','open','WiLHh','Bash','values','XtMEB','tab-new','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','3080854rYRGro','key_04_success-state.png','run-code','trackPhaseEnd','dZGhq','`\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`','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','11424744poawBJ','1497196kgAlvV','sAZMj','open\x20new\x20tab','vYaqq','cwd','--filename=','domRef','fill','Vzbee','tracing-start','replace','tool_call','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','sort','capture\x20step\x20`','nOSMx','02_button-clicked.png','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','`\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`','keys','MZcFZ','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','13631868pqPqGQ','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','\x20tracing-start`\x0a3.\x20Run\x20`','dOIqJ','`\x0a9.\x20Run\x20`','fmxeg','HrIrm',']\x20**','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','get','short','playwright_cli_tracing_stop','open\x20browser','\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.','prlby','[ranger-verification-agent]\x20','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','check','01_mozilla-homepage.png','capture\x20key\x20step\x20`','tqpAf','Audce','error','\x20open\x20','run\x20custom\x20Playwright\x20code','pop','WJKJz','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','SKLac','subcommand','start\x20tracing','MlyLS','select\x20tab\x20','split','trackPhaseError','02_learn-more.yml'];_0x12e1=function(){return _0x29c67b;};return _0x12e1();}function buildCliArtifactPath(_0x36b67a,_0x29c404){return join(_0x36b67a,_0x29c404);}function toStepDisplayName(_0x1e193e){const _0x4fc715=_0x3ff2,_0x5e04fb=basename(_0x1e193e)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x4fc715(0x1d3)](/-/g,'\x20');return{'name':_0x5e04fb,'isKeyStep':/^key_/i[_0x4fc715(0x18e)](basename(_0x1e193e))};}function extractShellValue(_0x4d72e8){if(!_0x4d72e8)return null;return _0x4d72e8[0x1]??_0x4d72e8[0x2]??_0x4d72e8[0x3]??null;}function extractFilenameOption(_0x371187){const _0x2935cc=_0x3ff2,_0x150db9={'MDswe':function(_0x2b6e07,_0x3e03a6){return _0x2b6e07(_0x3e03a6);}};return _0x150db9[_0x2935cc(0x1b8)](extractShellValue,_0x371187['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x280781,_0x41dadb){const _0x3a3d75=_0x3ff2,_0x3417ad=_0x41dadb[_0x3a3d75(0x1d3)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return extractShellValue(_0x280781[_0x3a3d75(0x1af)](new RegExp('(?:^|\x5cs)'+_0x3417ad+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x502f77){const _0x5a7793=_0x3ff2,_0x464b37={'bYwcq':_0x5a7793(0x175),'tqpAf':function(_0x2c78c0,_0x23cf91,_0x4aa7fd){return _0x2c78c0(_0x23cf91,_0x4aa7fd);}};if(!_0x502f77)return _0x464b37[_0x5a7793(0x177)];if(/^e\d+$/i['test'](_0x502f77))return'ref\x20'+_0x502f77;return JSON['stringify'](_0x464b37[_0x5a7793(0x1f3)](truncatePreview,_0x502f77,0x78));}function formatPlaywrightCliLog(_0x4752a8,_0x5c4a87){const _0x248a8c=_0x3ff2,_0x53122d={'nOSMx':function(_0x4f2871,_0x56ca67,_0x227b53){return _0x4f2871(_0x56ca67,_0x227b53);},'tEMgD':_0x248a8c(0x1eb),'XtMEB':_0x248a8c(0x16f),'GHovm':'stop\x20tracing','qiWSC':'video-start','FJwEV':'start\x20video\x20recording','MlyLS':'video-stop','NTzcZ':'stop\x20video\x20recording','PxdoE':function(_0x7b5dd5,_0x5aec79){return _0x7b5dd5(_0x5aec79);},'yUMjW':'capture\x20snapshot','fmxeg':function(_0x5033f8,_0x23ef9b){return _0x5033f8(_0x23ef9b);},'EAddq':'capture\x20screenshot','sAZMj':'click','vYaqq':function(_0xefe5d4,_0x40d314){return _0xefe5d4(_0x40d314);},'ABUzo':_0x248a8c(0x1f0),'LKssV':function(_0xaec9aa,_0x5b1797,_0x338111){return _0xaec9aa(_0x5b1797,_0x338111);},'roddT':_0x248a8c(0x1c2),'fkLmx':function(_0x347120,_0x5380d8,_0x2cb0bf){return _0x347120(_0x5380d8,_0x2cb0bf);},'ULzcc':_0x248a8c(0x1b2)};switch(_0x5c4a87){case _0x248a8c(0x1b9):{const _0x1ff048=_0x53122d['nOSMx'](extractFirstCommandArgument,_0x4752a8,_0x5c4a87);return _0x1ff048?'open\x20'+_0x1ff048:_0x53122d['tEMgD'];}case _0x248a8c(0x1d2):return _0x53122d[_0x248a8c(0x1bd)];case'tracing-stop':return _0x53122d[_0x248a8c(0x187)];case _0x53122d[_0x248a8c(0x18c)]:return _0x53122d[_0x248a8c(0x1aa)];case _0x53122d[_0x248a8c(0x170)]:return _0x53122d['NTzcZ'];case _0x248a8c(0x1a4):{const _0x1db52b=_0x53122d['PxdoE'](extractFilenameOption,_0x4752a8);if(!_0x1db52b)return _0x53122d['yUMjW'];const {name:_0x32748b}=toStepDisplayName(_0x1db52b);return'capture\x20snapshot\x20`'+_0x32748b+'`';}case'screenshot':{const _0x56ca80=_0x53122d[_0x248a8c(0x1e4)](extractFilenameOption,_0x4752a8);if(!_0x56ca80)return _0x53122d[_0x248a8c(0x1b1)];const {name:_0x1aae33,isKeyStep:_0x48a18f}=toStepDisplayName(_0x56ca80);return _0x48a18f?_0x248a8c(0x1f2)+_0x1aae33+'`':_0x248a8c(0x1d7)+_0x1aae33+'`';}case _0x53122d[_0x248a8c(0x1ca)]:return'click\x20'+_0x53122d[_0x248a8c(0x1cc)](formatCommandTarget,extractFirstCommandArgument(_0x4752a8,_0x5c4a87));case _0x53122d[_0x248a8c(0x17c)]:return'check\x20'+formatCommandTarget(_0x53122d[_0x248a8c(0x1d8)](extractFirstCommandArgument,_0x4752a8,_0x5c4a87));case _0x248a8c(0x1d0):return'fill\x20'+_0x53122d['fmxeg'](formatCommandTarget,_0x53122d['LKssV'](extractFirstCommandArgument,_0x4752a8,_0x5c4a87));case'press':return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x4752a8,_0x5c4a87));case _0x53122d['roddT']:return _0x248a8c(0x1f7);case _0x248a8c(0x1be):{const _0x40bac2=_0x53122d['fkLmx'](extractFirstCommandArgument,_0x4752a8,_0x5c4a87);return _0x40bac2?_0x248a8c(0x178)+_0x40bac2:_0x248a8c(0x1cb);}case'tab-select':{const _0x3a6f56=extractFirstCommandArgument(_0x4752a8,_0x5c4a87);return _0x3a6f56?_0x248a8c(0x171)+_0x3a6f56:_0x53122d['ULzcc'];}default:return _0x5c4a87;}}function extractPlaywrightCliToolDescription(_0x3cdb81){const _0x41f390=_0x3ff2,_0x50a9e4=_0x3cdb81['description'];if(typeof _0x50a9e4!=='string')return null;const _0x1d0606=_0x50a9e4[_0x41f390(0x17a)]()[_0x41f390(0x1d3)](/\s+/g,'\x20');return _0x1d0606[_0x41f390(0x1a6)]>0x0?_0x1d0606:null;}export function formatPlaywrightCliConsoleLogMessage(_0x45d30b,_0x396d47,_0x38fe15){const _0x5718f8=_0x3ff2,_0x2a81d9={'clBbe':function(_0x2d15a0,_0x56185f){return _0x2d15a0(_0x56185f);}},_0x557b42=formatPlaywrightCliLog(_0x396d47,_0x38fe15),_0x22661e=_0x2a81d9['clBbe'](extractPlaywrightCliToolDescription,_0x45d30b);if(!_0x22661e)return _0x5718f8(0x18a)+_0x557b42;if(process['env']['DEBUG'])return _0x5718f8(0x1ee)+_0x22661e+'\x20('+_0x557b42+')';return'[ranger-verification-agent]\x20'+_0x22661e;}export function buildVerifyFeatureCliDebugPrompt(_0x550fb5,_0x309c8a){const _0x503b38=_0x3ff2,_0xa7e87a={'CWQGt':function(_0x1eb94d,_0x23b85f,_0x3a9264){return _0x1eb94d(_0x23b85f,_0x3a9264);},'WiLHh':function(_0x368b26,_0x1bf8a9,_0x5efd94){return _0x368b26(_0x1bf8a9,_0x5efd94);},'lAvlG':function(_0x33de5d,_0x1f5bd7){return _0x33de5d(_0x1f5bd7);},'IslIs':function(_0x365725,_0x4fb09f){return _0x365725(_0x4fb09f);}},_0x55a531=_0xa7e87a['CWQGt'](buildCliArtifactPath,_0x309c8a,_0x503b38(0x1b4)),_0x47bdeb=buildCliArtifactPath(_0x309c8a,_0x503b38(0x1f1)),_0x2240e8=buildCliArtifactPath(_0x309c8a,_0x503b38(0x174)),_0x967502=_0xa7e87a[_0x503b38(0x1ba)](buildCliArtifactPath,_0x309c8a,'03_learn-more.png'),_0x8f1495=_0xa7e87a['lAvlG'](quoteShellArg,_0x55a531),_0x47f732=quoteShellArg(_0x47bdeb),_0x3bebd1=_0xa7e87a['lAvlG'](quoteShellArg,_0x2240e8),_0x4ec230=_0xa7e87a[_0x503b38(0x19a)](quoteShellArg,_0x967502);return _0x503b38(0x1de)+_0x550fb5+'\x0a\x0a1.\x20Run\x20`'+_0x550fb5+_0x503b38(0x1c7)+_0x550fb5+_0x503b38(0x1e1)+_0x550fb5+_0x503b38(0x183)+_0x309c8a+_0x503b38(0x1e7)+_0x550fb5+'\x20snapshot\x20--filename\x20'+_0x8f1495+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x550fb5+_0x503b38(0x19d)+_0x47f732+_0x503b38(0x19c)+_0x550fb5+'\x20snapshot\x20--filename\x20'+_0x3bebd1+_0x503b38(0x1e3)+_0x550fb5+'\x20screenshot\x20--filename\x20'+_0x4ec230+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0xe881bf){const _0x4eb70f=_0x3ff2,_0x112374={'rSQii':'en-US','jpOjl':_0x4eb70f(0x1e9),'DNFTe':'numeric','prlby':'\x20>\x20','dZGhq':'element','HrIrm':function(_0x463f54,_0x496899,_0x51fe90){return _0x463f54(_0x496899,_0x51fe90);},'dOIqJ':'key_03_success-state.png','dmLBI':function(_0x3eafce,_0x4160e4,_0x3e4058){return _0x3eafce(_0x4160e4,_0x3e4058);},'SKLac':function(_0x2ac1b8,_0x3937bd){return _0x2ac1b8(_0x3937bd);},'cFWae':function(_0x3a0862,_0x3cda1c,_0x323224){return _0x3a0862(_0x3cda1c,_0x323224);},'RJhAj':'03_result-visible.png','pjHca':_0x4eb70f(0x1c1)},{checklistItem:_0x11a516,itemFeedback:_0x1e256b,taskDescription:_0x2fd2c3,cliCommandPrefix:_0x35e128,cliArtifactDir:_0x55a450,isCdpMode:_0x3b6a1e,url:_0x37104d,cdpEndpoint:_0x3bfbcf,loginInstructions:_0xb4cc81}=_0xe881bf,_0x4808f5=_0x112374[_0x4eb70f(0x1e5)](buildCliArtifactPath,_0x55a450,'01_initial.yml'),_0x26103d=buildCliArtifactPath(_0x55a450,_0x4eb70f(0x189)),_0x2ffa7f=buildCliArtifactPath(_0x55a450,_0x112374[_0x4eb70f(0x1e2)]),_0xc3b9b2=_0x112374['dmLBI'](buildCliArtifactPath,_0x55a450,_0x4eb70f(0x185)),_0x2efcae=quoteShellArg(_0x4808f5),_0x390390=_0x112374[_0x4eb70f(0x16d)](quoteShellArg,_0x26103d),_0x526e4a=quoteShellArg(_0x2ffa7f),_0x3a28ec=_0x112374['SKLac'](quoteShellArg,_0xc3b9b2),_0x2d4918=_0x11a516['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x11a516['notes']:'';let _0x379751='';if(_0x1e256b&&_0x1e256b['unaddressedComments']['length']>0x0){const _0x3314db=_0x1e256b[_0x4eb70f(0x191)][_0x4eb70f(0x182)](_0x5ee17b=>{const _0x2a1b84=_0x4eb70f,_0x446858=new Date(_0x5ee17b[_0x2a1b84(0x1a0)])[_0x2a1b84(0x194)](_0x112374['rSQii'],{'month':_0x112374['jpOjl'],'day':_0x112374['DNFTe']}),_0x334e0a=_0x5ee17b[_0x2a1b84(0x17f)]||_0x5ee17b[_0x2a1b84(0x179)]||_0x2a1b84(0x1a1),_0x59b71d=_0x5ee17b[_0x2a1b84(0x1cf)]?_0x2a1b84(0x196)+(_0x5ee17b['domRef']['selector'][_0x2a1b84(0x172)](_0x112374[_0x2a1b84(0x1ed)])[_0x2a1b84(0x16a)]()?.['split'](':')[0x0]||_0x112374[_0x2a1b84(0x1c4)])+'>\x20\x22'+(_0x5ee17b[_0x2a1b84(0x1cf)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return _0x2a1b84(0x184)+_0x5ee17b['id']+_0x2a1b84(0x1e6)+_0x334e0a+'**\x20('+_0x446858+'):\x20\x22'+_0x5ee17b[_0x2a1b84(0x195)]+'\x22'+_0x59b71d;})['join']('\x0a');_0x379751=_0x4eb70f(0x1a8)+_0x3314db;}const _0x3fdde6=_0x1e256b?.['canonicalFlow']?_0x4eb70f(0x1da)+_0x1e256b['canonicalFlow']:'',_0x1cf0c2=_0x3b6a1e?_0x4eb70f(0x16c)+_0x3bfbcf+'.\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'+_0x37104d+_0x4eb70f(0x1a3),_0x3b8b9d=_0x37104d?quoteShellArg(_0x37104d):'',_0x123534=_0x3b6a1e?_0x4eb70f(0x1a5)+_0x35e128+'\x20open`,\x20then\x20`'+_0x35e128+'\x20tracing-start`,\x20then\x20`'+_0x35e128+_0x4eb70f(0x1ad)+_0x55a450+_0x4eb70f(0x17b)+_0x35e128+'\x20snapshot\x20--filename\x20'+_0x2efcae+_0x4eb70f(0x1c5)+_0x35e128+'\x20screenshot\x20--filename\x20'+_0x3a28ec+_0x4eb70f(0x1bf)+_0x35e128+_0x4eb70f(0x1ac):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x35e128+_0x4eb70f(0x1f6)+_0x3b8b9d+'`,\x20then\x20`'+_0x35e128+'\x20tracing-start`,\x20then\x20`'+_0x35e128+_0x4eb70f(0x1ad)+_0x55a450+_0x4eb70f(0x17b)+_0x35e128+_0x4eb70f(0x192)+_0x2efcae+'`\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`'+_0x35e128+_0x4eb70f(0x19d)+_0x3a28ec+_0x4eb70f(0x1e0)+_0x35e128+'\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',_0x112a27=_0x3b6a1e?'\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.':_0x4eb70f(0x1ec),_0x126ce1=_0xb4cc81?_0x4eb70f(0x1a2)+_0xb4cc81+'\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 _0x4eb70f(0x1d5)+_0x11a516['description']+_0x2d4918+_0x379751+_0x3fdde6+_0x4eb70f(0x1c6)+_0x2fd2c3+'\x0a\x0a'+_0x1cf0c2+_0x126ce1+'\x0a\x0a'+_0x123534+_0x4eb70f(0x1ef)+_0x35e128+_0x4eb70f(0x18f)+_0x55a450+_0x4eb70f(0x1b6)+_0x390390+_0x4eb70f(0x1ae)+_0x526e4a+_0x4eb70f(0x1db)+_0x55a450+'`:\x20\x22'+_0xc3b9b2+'\x22,\x20\x22'+buildCliArtifactPath(_0x55a450,_0x4eb70f(0x1d9))+'\x22,\x20\x22'+_0x112374['cFWae'](buildCliArtifactPath,_0x55a450,_0x112374['RJhAj'])+'\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'+_0x112374[_0x4eb70f(0x1e5)](buildCliArtifactPath,_0x55a450,_0x112374[_0x4eb70f(0x1b5)])+'\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'+_0x112a27+_0x4eb70f(0x19e);}export function summarizeVerifyFeatureCliCommandAvailability(_0x3683cf){const _0x477e69=_0x3ff2,_0x4f8f95={'dgFDX':function(_0x396c7b,_0x3ceffc){return _0x396c7b===_0x3ceffc;}},_0x34378d=[..._0x3683cf[_0x477e69(0x1dc)]()]['sort']();let _0x1e42ab=0x0;for(const _0x3f7081 of _0x3683cf[_0x477e69(0x1bc)]()){_0x1e42ab+=_0x3f7081;}return{'cliCommandCount':_0x1e42ab,'cliCommandsSeen':_0x34378d,'noCliCommandsCalled':_0x4f8f95['dgFDX'](_0x1e42ab,0x0)};}export function createVerifyFeatureCliHooks(_0x9955c8){const _0x17119f={'oNXkI':function(_0x80e5ae,_0x353140){return _0x80e5ae!==_0x353140;},'lkMYR':function(_0x5e2d60,_0x16b7af){return _0x5e2d60(_0x16b7af);},'DMgpM':function(_0x939e3e,_0x5a884d){return _0x939e3e+_0x5a884d;},'MZcFZ':'tool_call','Hckdq':'PostToolUseFailure','gQCSC':function(_0xfa45a3,_0x4b0612){return _0xfa45a3!==_0x4b0612;},'Isgtd':'playwright-cli'},_0x61d940=new Map(),_0x8f7c5=async _0x45d6e2=>{const _0x1eb3ef=_0x3ff2;if(_0x17119f['oNXkI'](_0x45d6e2[_0x1eb3ef(0x180)],_0x1eb3ef(0x19f)))return{};const _0x5b13bf=_0x45d6e2;if(_0x5b13bf['tool_name']!=='Bash')return{};const _0x40f213=_0x5b13bf['tool_input'],_0x94912e=extractBashCommand(_0x40f213);if(!_0x94912e)return{};const _0x67dd67=_0x17119f['lkMYR'](parsePlaywrightCliCommand,_0x94912e);if(!_0x67dd67)return{};return _0x61d940['set'](_0x67dd67,_0x17119f[_0x1eb3ef(0x1a7)](_0x61d940[_0x1eb3ef(0x1e8)](_0x67dd67)||0x0,0x1)),_0x9955c8[_0x1eb3ef(0x181)](_0x1eb3ef(0x1d4),{'transport':'playwright-cli','toolName':_0x67dd67}),_0x9955c8[_0x1eb3ef(0x1c3)](_0x17119f[_0x1eb3ef(0x1dd)],{'transport':'playwright-cli','toolName':_0x67dd67,'bashCommandPreview':truncatePreview(_0x94912e)}),_0x67dd67!==_0x1eb3ef(0x1a4)&&console['log'](formatPlaywrightCliConsoleLogMessage(_0x40f213,_0x94912e,_0x67dd67)),{};},_0x53b621=async _0x5d4ec2=>{const _0x54f9f3=_0x3ff2;if(_0x17119f['oNXkI'](_0x5d4ec2['hook_event_name'],_0x17119f['Hckdq']))return{};const _0x488c76=_0x5d4ec2;if(_0x17119f[_0x54f9f3(0x1b7)](_0x488c76['tool_name'],_0x54f9f3(0x1bb)))return{};return await _0x9955c8[_0x54f9f3(0x173)](_0x54f9f3(0x18d),_0x488c76[_0x54f9f3(0x1f5)],{'transport':_0x17119f['Isgtd'],'toolName':_0x54f9f3(0x1bb)}),{};};return{'postToolUseHook':_0x8f7c5,'postToolUseFailureHook':_0x53b621,'commandCounts':_0x61d940};}function _0x3ff2(_0x31a6cf,_0x12ace3){_0x31a6cf=_0x31a6cf-0x16a;const _0x12e1d0=_0x12e1();let _0x3ff22f=_0x12e1d0[_0x31a6cf];return _0x3ff22f;}async function runPlaywrightCliLifecycleCommand(_0x3a583b){const _0x4ae655=_0x3ff2,_0x23c811={'TvXtA':function(_0x5b11d4,_0x3b1219){return _0x5b11d4(_0x3b1219);},'Vzbee':function(_0x45c927,_0x2b6398){return _0x45c927??_0x2b6398;},'pvcxB':function(_0x58a5d1,_0x54bd4,_0x4114ea){return _0x58a5d1(_0x54bd4,_0x4114ea);}},{sessionId:_0x3a1abb,configPath:_0x1beed8,commandArgs:_0x3b72d9,env:_0x52efa5,telemetry:_0x5279ef,phase:_0x55dbb8,metadata:_0x24a5b8,timeoutMs:_0x33473b}=_0x3a583b;_0x5279ef[_0x4ae655(0x181)](_0x55dbb8,_0x24a5b8);try{const _0x2a7850=await _0x23c811['TvXtA'](runPlaywrightCliCommand,{'sessionId':_0x3a1abb,'configPath':_0x1beed8,'commandArgs':_0x3b72d9,'cwd':process[_0x4ae655(0x1cd)](),'env':_0x52efa5,'timeoutMs':_0x23c811[_0x4ae655(0x1d1)](_0x33473b,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x5279ef[_0x4ae655(0x1c3)](_0x55dbb8,{..._0x24a5b8,'subcommand':_0x2a7850[_0x4ae655(0x19b)][_0x4ae655(0x16e)],'stdoutPreview':truncatePreview(_0x2a7850[_0x4ae655(0x193)],0x7d0),'stderrPreview':_0x23c811['pvcxB'](truncatePreview,_0x2a7850['stderr'],0x7d0)});}catch(_0x55cde3){await _0x5279ef['trackPhaseError'](_0x55dbb8,_0x55cde3,_0x24a5b8);throw _0x55cde3;}}export async function finalizeVerifyFeatureCliSession(_0x559847){const _0x555a2a=_0x3ff2,_0x16efa5={'WJKJz':_0x555a2a(0x1ea),'hlBwA':'tracing-stop','kfOyf':'playwright_cli_video_stop','vaPmy':'session-recording.webm'},{telemetry:_0x390b9e,sessionId:_0x521f87,configPath:_0xf9ced4,cliArtifactDir:_0x2c25bf,env:_0x5b14b2,transportMetadata:_0x1be6d0}=_0x559847,_0x545c83=[{'phase':_0x16efa5[_0x555a2a(0x16b)],'commandArgs':[_0x16efa5['hlBwA']]},{'phase':_0x16efa5[_0x555a2a(0x1ab)],'commandArgs':[_0x555a2a(0x199),_0x555a2a(0x1ce)+buildCliArtifactPath(_0x2c25bf,_0x16efa5[_0x555a2a(0x1a9)])]},{'phase':'playwright_cli_close','commandArgs':[_0x555a2a(0x190)]}];for(const _0x3d2fcb of _0x545c83){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x521f87,'configPath':_0xf9ced4,'commandArgs':[..._0x3d2fcb['commandArgs']],'env':_0x5b14b2,'telemetry':_0x390b9e,'phase':_0x3d2fcb[_0x555a2a(0x18b)],'metadata':_0x1be6d0});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x1c4140){const _0x4f4017=_0x3ff2,_0xee2628={'vPlAX':'trace.zip','xTtPu':function(_0x45d98f,_0x1a7387,_0x583569){return _0x45d98f(_0x1a7387,_0x583569);}},_0x3c62dc=[_0xee2628['vPlAX'],_0x4f4017(0x198)];for(const _0x248f59 of _0x3c62dc){const _0x2bb5c4=_0xee2628['xTtPu'](join,_0x1c4140,_0x248f59);try{return{'buffer':await readFile(_0x2bb5c4),'source':_0x2bb5c4};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x2c1741){const _0x383ca6=_0x3ff2,_0x5f5be1={'Audce':function(_0x347178,_0xf97771,_0x20dca1){return _0x347178(_0xf97771,_0x20dca1);},'PZPsN':function(_0x18728e,_0x2f9222){return _0x18728e+_0x2f9222;},'BrRzw':function(_0x4659bb,_0x16d379,_0x4fd2b6){return _0x4659bb(_0x16d379,_0x4fd2b6);},'XAcGB':function(_0x291337,_0x3262f8){return _0x291337===_0x3262f8;}},{cwd:_0x6d7d9,cliArtifactDir:_0x215b8a,startTime:_0x537e3f}=_0x2c1741,_0x4f7ef8=[];await _0x5f5be1[_0x383ca6(0x1f4)](mkdir,_0x215b8a,{'recursive':!![]});const _0x3a67dd=await _0x5f5be1['Audce'](readdir,_0x6d7d9,{'withFileTypes':!![]});for(const _0x4678f5 of _0x3a67dd){if(!_0x4678f5['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x4678f5[_0x383ca6(0x188)]))continue;const _0x49d012=join(_0x6d7d9,_0x4678f5['name']),_0x3cb95f=await stat(_0x49d012);if(_0x5f5be1['PZPsN'](_0x3cb95f[_0x383ca6(0x197)],0x7d0)<_0x537e3f)continue;const _0x4c06eb=_0x5f5be1[_0x383ca6(0x1b3)](buildCliArtifactPath,_0x215b8a,_0x4678f5['name']);if(_0x5f5be1['XAcGB'](_0x49d012,_0x4c06eb))continue;await rename(_0x49d012,_0x4c06eb),_0x4f7ef8['push'](_0x4678f5['name']);}return _0x4f7ef8[_0x383ca6(0x1d6)]();}
|
|
1
|
+
function _0x3113(_0x3e3c53,_0x53fa0b){_0x3e3c53=_0x3e3c53-0x10a;const _0x58185d=_0x5818();let _0x31133d=_0x58185d[_0x3e3c53];return _0x31133d;}(function(_0x2b303a,_0x1b08a4){const _0x4ea188=_0x3113,_0x1e70da=_0x2b303a();while(!![]){try{const _0x75fa45=-parseInt(_0x4ea188(0x135))/0x1+-parseInt(_0x4ea188(0x141))/0x2*(-parseInt(_0x4ea188(0x161))/0x3)+-parseInt(_0x4ea188(0x142))/0x4*(parseInt(_0x4ea188(0x140))/0x5)+parseInt(_0x4ea188(0x16c))/0x6*(-parseInt(_0x4ea188(0x181))/0x7)+parseInt(_0x4ea188(0x132))/0x8+-parseInt(_0x4ea188(0x194))/0x9+parseInt(_0x4ea188(0x189))/0xa*(parseInt(_0x4ea188(0x185))/0xb);if(_0x75fa45===_0x1b08a4)break;else _0x1e70da['push'](_0x1e70da['shift']());}catch(_0x4542d4){_0x1e70da['push'](_0x1e70da['shift']());}}}(_0x5818,0x9bdea));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(_0x57b73b,_0x451484=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0xabe00a=_0x3113,_0x11532f={'frSjC':function(_0x1fa18e,_0x48ce3a){return _0x1fa18e>_0x48ce3a;},'yNqgy':function(_0x436078,_0x305680){return _0x436078+_0x305680;},'JpDrD':_0xabe00a(0x115)};return _0x11532f[_0xabe00a(0x13e)](_0x57b73b['length'],_0x451484)?_0x11532f[_0xabe00a(0x12e)](_0x57b73b['slice'](0x0,_0x451484),_0x11532f[_0xabe00a(0x160)]):_0x57b73b;}function buildCliArtifactPath(_0x41a81c,_0x38058d){const _0x2a30d9={'fAHHh':function(_0x29ac1a,_0x45e808,_0x4325bf){return _0x29ac1a(_0x45e808,_0x4325bf);}};return _0x2a30d9['fAHHh'](join,_0x41a81c,_0x38058d);}function toStepDisplayName(_0x43c644){const _0x15fcc0=_0x3113,_0x13e9f3=basename(_0x43c644)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x15fcc0(0x113)](/-/g,'\x20');return{'name':_0x13e9f3,'isKeyStep':/^key_/i[_0x15fcc0(0x184)](basename(_0x43c644))};}function extractShellValue(_0xf85638){if(!_0xf85638)return null;return _0xf85638[0x1]??_0xf85638[0x2]??_0xf85638[0x3]??null;}function extractFilenameOption(_0x1d5997){const _0x27f79b=_0x3113,_0x2a5a95={'BRRgi':function(_0xbd5f0a,_0x11f8d7){return _0xbd5f0a(_0x11f8d7);}};return _0x2a5a95['BRRgi'](extractShellValue,_0x1d5997[_0x27f79b(0x11c)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x3f5a48,_0x109cc6){const _0x29e90f=_0x3113,_0x5bb579={'ewnMl':'\x5c$&'},_0x2a591d=_0x109cc6[_0x29e90f(0x113)](/[.*+?^${}()|[\]\\]/g,_0x5bb579[_0x29e90f(0x120)]);return extractShellValue(_0x3f5a48[_0x29e90f(0x11c)](new RegExp('(?:^|\x5cs)'+_0x2a591d+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x33a450){const _0x4929d6=_0x3113,_0x3d911f={'WlUuJ':_0x4929d6(0x11d),'kyHkj':function(_0x2ddd37,_0x47b7f3,_0x49b86e){return _0x2ddd37(_0x47b7f3,_0x49b86e);}};if(!_0x33a450)return _0x3d911f[_0x4929d6(0x172)];if(/^e\d+$/i[_0x4929d6(0x184)](_0x33a450))return _0x4929d6(0x169)+_0x33a450;return JSON[_0x4929d6(0x179)](_0x3d911f[_0x4929d6(0x149)](truncatePreview,_0x33a450,0x78));}function formatPlaywrightCliLog(_0x3eac7b,_0x5385c2){const _0x9a6938=_0x3113,_0x26f5b2={'UxKkV':function(_0xabdb8b,_0xcce35c,_0x297915){return _0xabdb8b(_0xcce35c,_0x297915);},'cclGB':_0x9a6938(0x131),'Wxvuy':_0x9a6938(0x15d),'LURIn':'tracing-stop','mtgwW':'video-start','KrlMb':_0x9a6938(0x10a),'pqnSW':_0x9a6938(0x168),'yJQzj':function(_0x25c33e,_0x5a0fde){return _0x25c33e(_0x5a0fde);},'Amqfv':_0x9a6938(0x190),'klmmi':_0x9a6938(0x122),'uKydz':'fill','lzpkP':function(_0xde73b,_0x20150c){return _0xde73b(_0x20150c);},'tCKiq':_0x9a6938(0x18a),'cvRTU':'tab-new'};switch(_0x5385c2){case _0x9a6938(0x112):{const _0x2d7ce8=_0x26f5b2['UxKkV'](extractFirstCommandArgument,_0x3eac7b,_0x5385c2);return _0x2d7ce8?_0x9a6938(0x110)+_0x2d7ce8:_0x26f5b2['cclGB'];}case'tracing-start':return _0x26f5b2[_0x9a6938(0x193)];case _0x26f5b2['LURIn']:return'stop\x20tracing';case _0x26f5b2['mtgwW']:return _0x26f5b2[_0x9a6938(0x14f)];case _0x26f5b2['pqnSW']:return'stop\x20video\x20recording';case _0x9a6938(0x10b):{const _0x3d4c1c=_0x26f5b2[_0x9a6938(0x12f)](extractFilenameOption,_0x3eac7b);if(!_0x3d4c1c)return _0x9a6938(0x145);const {name:_0x4a0ca9}=_0x26f5b2['yJQzj'](toStepDisplayName,_0x3d4c1c);return'capture\x20snapshot\x20`'+_0x4a0ca9+'`';}case _0x26f5b2['Amqfv']:{const _0x398139=_0x26f5b2[_0x9a6938(0x12f)](extractFilenameOption,_0x3eac7b);if(!_0x398139)return _0x9a6938(0x18d);const {name:_0x1bfc9e,isKeyStep:_0x66c2de}=_0x26f5b2[_0x9a6938(0x12f)](toStepDisplayName,_0x398139);return _0x66c2de?'capture\x20key\x20step\x20`'+_0x1bfc9e+'`':_0x9a6938(0x19a)+_0x1bfc9e+'`';}case _0x26f5b2['klmmi']:return _0x9a6938(0x144)+formatCommandTarget(extractFirstCommandArgument(_0x3eac7b,_0x5385c2));case _0x9a6938(0x175):return'check\x20'+_0x26f5b2[_0x9a6938(0x12f)](formatCommandTarget,_0x26f5b2[_0x9a6938(0x15b)](extractFirstCommandArgument,_0x3eac7b,_0x5385c2));case _0x26f5b2[_0x9a6938(0x13f)]:return'fill\x20'+_0x26f5b2['lzpkP'](formatCommandTarget,_0x26f5b2[_0x9a6938(0x15b)](extractFirstCommandArgument,_0x3eac7b,_0x5385c2));case _0x26f5b2[_0x9a6938(0x118)]:return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x3eac7b,_0x5385c2));case _0x9a6938(0x15c):return'run\x20custom\x20Playwright\x20code';case _0x26f5b2[_0x9a6938(0x15f)]:{const _0x4f28f6=extractFirstCommandArgument(_0x3eac7b,_0x5385c2);return _0x4f28f6?'open\x20new\x20tab\x20'+_0x4f28f6:_0x9a6938(0x174);}case'tab-select':{const _0x45350d=_0x26f5b2['UxKkV'](extractFirstCommandArgument,_0x3eac7b,_0x5385c2);return _0x45350d?_0x9a6938(0x126)+_0x45350d:'select\x20tab';}default:return _0x5385c2;}}function extractPlaywrightCliToolDescription(_0x1fb20a){const _0xc3a455=_0x3113,_0xf606e={'MPWHW':_0xc3a455(0x18e),'ujhAl':function(_0x29f925,_0xbd71d5){return _0x29f925>_0xbd71d5;}},_0x499159=_0x1fb20a['description'];if(typeof _0x499159!==_0xf606e['MPWHW'])return null;const _0x8fc188=_0x499159['trim']()[_0xc3a455(0x113)](/\s+/g,'\x20');return _0xf606e['ujhAl'](_0x8fc188['length'],0x0)?_0x8fc188:null;}export function formatPlaywrightCliConsoleLogMessage(_0x1edf08,_0x6aa19c,_0x4586b8){const _0x1a1c0e=_0x3113,_0x4aeb78={'BfTdW':function(_0x1ecda4,_0x47c4a1,_0x1588dc){return _0x1ecda4(_0x47c4a1,_0x1588dc);}},_0x331cc1=_0x4aeb78['BfTdW'](formatPlaywrightCliLog,_0x6aa19c,_0x4586b8),_0x9ea6ab=extractPlaywrightCliToolDescription(_0x1edf08);if(!_0x9ea6ab)return'[playwright-cli]\x20'+_0x331cc1;if(process[_0x1a1c0e(0x11e)][_0x1a1c0e(0x10c)])return _0x1a1c0e(0x195)+_0x9ea6ab+'\x20('+_0x331cc1+')';return'[ranger-verification-agent]\x20'+_0x9ea6ab;}export function buildVerifyFeatureCliDebugPrompt(_0xee13e1,_0x4bb5da){const _0x327ad3=_0x3113,_0x5f2112={'VrpzH':function(_0x1937a3,_0xc56c72,_0x4c3638){return _0x1937a3(_0xc56c72,_0x4c3638);},'WjPIu':'00_mozilla-homepage.yml','Mlceo':'03_learn-more.png','TAmuf':function(_0x59be03,_0x196c75){return _0x59be03(_0x196c75);}},_0x552e82=_0x5f2112['VrpzH'](buildCliArtifactPath,_0x4bb5da,_0x5f2112[_0x327ad3(0x177)]),_0x12b399=_0x5f2112[_0x327ad3(0x156)](buildCliArtifactPath,_0x4bb5da,'01_mozilla-homepage.png'),_0x3ab7dd=buildCliArtifactPath(_0x4bb5da,'02_learn-more.yml'),_0x21829a=buildCliArtifactPath(_0x4bb5da,_0x5f2112['Mlceo']),_0x1089ac=quoteShellArg(_0x552e82),_0x37b4dc=quoteShellArg(_0x12b399),_0x21dec8=quoteShellArg(_0x3ab7dd),_0x55e5d3=_0x5f2112[_0x327ad3(0x196)](quoteShellArg,_0x21829a);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0xee13e1+_0x327ad3(0x17a)+_0xee13e1+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0xee13e1+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0xee13e1+_0x327ad3(0x19b)+_0x4bb5da+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0xee13e1+_0x327ad3(0x16e)+_0x1089ac+_0x327ad3(0x17b)+_0xee13e1+'\x20screenshot\x20--filename\x20'+_0x37b4dc+_0x327ad3(0x139)+_0xee13e1+'\x20snapshot\x20--filename\x20'+_0x21dec8+_0x327ad3(0x13b)+_0xee13e1+_0x327ad3(0x178)+_0x55e5d3+_0x327ad3(0x183);}export function buildVerifyFeatureCliPrompt(_0x439f47){const _0x405dff=_0x3113,_0x4fca67={'xjVVc':_0x405dff(0x134),'jtoos':_0x405dff(0x10f),'olqmJ':function(_0xc54d03,_0x4e929f,_0x59b0dd){return _0xc54d03(_0x4e929f,_0x59b0dd);},'hxnaq':'01_initial.yml','rwZVP':_0x405dff(0x10d),'VvmcE':'01_initial-state.png','cFtJA':function(_0x342076,_0x27a2de){return _0x342076(_0x27a2de);},'LcBIe':function(_0x1c3596,_0x4b32b2){return _0x1c3596>_0x4b32b2;},'wJVlr':function(_0x3c5bdf,_0x170fbf,_0x5ad2e4){return _0x3c5bdf(_0x170fbf,_0x5ad2e4);}},{checklistItem:_0x4ad9ae,itemFeedback:_0x4bdb60,taskDescription:_0x66a05e,cliCommandPrefix:_0x497b5b,cliArtifactDir:_0x4d53ef,isCdpMode:_0x3fd2cb,url:_0x3a9dda,cdpEndpoint:_0x29d420,loginInstructions:_0x3fba52}=_0x439f47,_0x32aba3=_0x4fca67[_0x405dff(0x16b)](buildCliArtifactPath,_0x4d53ef,_0x4fca67[_0x405dff(0x15a)]),_0x51dae1=_0x4fca67['olqmJ'](buildCliArtifactPath,_0x4d53ef,_0x405dff(0x173)),_0x1d2059=_0x4fca67['olqmJ'](buildCliArtifactPath,_0x4d53ef,_0x4fca67['rwZVP']),_0x5a842b=buildCliArtifactPath(_0x4d53ef,_0x4fca67[_0x405dff(0x111)]),_0x2ebed9=quoteShellArg(_0x32aba3),_0x37b4ac=_0x4fca67[_0x405dff(0x11a)](quoteShellArg,_0x51dae1),_0x2b3c5a=quoteShellArg(_0x1d2059),_0x2ad33e=quoteShellArg(_0x5a842b),_0x5773c6=_0x4ad9ae['notes']?_0x405dff(0x12b)+_0x4ad9ae['notes']:'';let _0x28a97c='';if(_0x4bdb60&&_0x4fca67['LcBIe'](_0x4bdb60['unaddressedComments'][_0x405dff(0x147)],0x0)){const _0x7d36d7=_0x4bdb60[_0x405dff(0x153)][_0x405dff(0x121)](_0x501b61=>{const _0x40cc89=_0x405dff,_0x26eacd=new Date(_0x501b61[_0x40cc89(0x186)])['toLocaleDateString'](_0x40cc89(0x11f),{'month':_0x4fca67['xjVVc'],'day':_0x4fca67[_0x40cc89(0x199)]}),_0x3ca3ed=_0x501b61[_0x40cc89(0x148)]||_0x501b61[_0x40cc89(0x125)]||_0x40cc89(0x159),_0x1cd644=_0x501b61[_0x40cc89(0x157)]?'\x20(on\x20element:\x20<'+(_0x501b61['domRef']['selector'][_0x40cc89(0x171)](_0x40cc89(0x18c))['pop']()?.['split'](':')[0x0]||_0x40cc89(0x152))+_0x40cc89(0x180)+(_0x501b61[_0x40cc89(0x157)]['textContent']||'')[_0x40cc89(0x17d)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x501b61['id']+_0x40cc89(0x187)+_0x3ca3ed+'**\x20('+_0x26eacd+'):\x20\x22'+_0x501b61['content']+'\x22'+_0x1cd644;})[_0x405dff(0x17c)]('\x0a');_0x28a97c='\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'+_0x7d36d7;}const _0x35d157=_0x4bdb60?.[_0x405dff(0x166)]?_0x405dff(0x154)+_0x4bdb60['canonicalFlow']:'',_0x2d413f=_0x3fd2cb?_0x405dff(0x16f)+_0x29d420+_0x405dff(0x18b):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x3a9dda+_0x405dff(0x114),_0x5d7fd9=_0x3a9dda?_0x4fca67['cFtJA'](quoteShellArg,_0x3a9dda):'',_0x3838ff=_0x3fd2cb?_0x405dff(0x129)+_0x497b5b+_0x405dff(0x158)+_0x497b5b+'\x20tracing-start`,\x20then\x20`'+_0x497b5b+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x4d53ef+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x497b5b+_0x405dff(0x16e)+_0x2ebed9+'`\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`'+_0x497b5b+_0x405dff(0x178)+_0x2ad33e+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x497b5b+'\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':_0x405dff(0x129)+_0x497b5b+'\x20open\x20'+_0x5d7fd9+'`,\x20then\x20`'+_0x497b5b+_0x405dff(0x116)+_0x497b5b+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x4d53ef+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x497b5b+_0x405dff(0x16e)+_0x2ebed9+'`\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`'+_0x497b5b+'\x20screenshot\x20--filename\x20'+_0x2ad33e+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x497b5b+'\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',_0x38fbed=_0x3fd2cb?'\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.',_0x2710ed=_0x3fba52?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x3fba52+'\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 _0x405dff(0x13a)+_0x4ad9ae[_0x405dff(0x128)]+_0x5773c6+_0x28a97c+_0x35d157+_0x405dff(0x163)+_0x66a05e+'\x0a\x0a'+_0x2d413f+_0x2710ed+'\x0a\x0a'+_0x3838ff+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x497b5b+_0x405dff(0x146)+_0x4d53ef+_0x405dff(0x176)+_0x37b4ac+'`\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'+_0x2b3c5a+_0x405dff(0x16a)+_0x4d53ef+_0x405dff(0x11b)+_0x5a842b+'\x22,\x20\x22'+_0x4fca67['olqmJ'](buildCliArtifactPath,_0x4d53ef,'02_button-clicked.png')+_0x405dff(0x13c)+_0x4fca67['wJVlr'](buildCliArtifactPath,_0x4d53ef,_0x405dff(0x123))+_0x405dff(0x191)+_0x4fca67['olqmJ'](buildCliArtifactPath,_0x4d53ef,'key_04_success-state.png')+_0x405dff(0x167)+_0x38fbed+_0x405dff(0x198);}export function summarizeVerifyFeatureCliCommandAvailability(_0x5b702a){const _0x3ba2b9=_0x3113,_0x51409d=[..._0x5b702a[_0x3ba2b9(0x137)]()]['sort']();let _0x2f61f3=0x0;for(const _0x57f675 of _0x5b702a[_0x3ba2b9(0x18f)]()){_0x2f61f3+=_0x57f675;}return{'cliCommandCount':_0x2f61f3,'cliCommandsSeen':_0x51409d,'noCliCommandsCalled':_0x2f61f3===0x0};}export function createVerifyFeatureCliHooks(_0x4633d6){const _0x49ffc1=_0x3113,_0x3de183={'ESvUA':function(_0x5d8a3d,_0x37419a){return _0x5d8a3d!==_0x37419a;},'CReTV':function(_0x499ac3,_0x1ca776){return _0x499ac3!==_0x1ca776;},'mwhUt':function(_0x5552e5,_0x3e1c46){return _0x5552e5+_0x3e1c46;},'eWdqI':_0x49ffc1(0x138),'iHBTg':_0x49ffc1(0x17e),'EyJDD':function(_0x31922f,_0x503319){return _0x31922f!==_0x503319;},'VYJrw':function(_0x49b3d6,_0x23be01,_0x293446,_0x55530d){return _0x49b3d6(_0x23be01,_0x293446,_0x55530d);},'qDvRS':'Bash'},_0x2e40b4=new Map(),_0x5ad3bf=async _0x45b163=>{const _0x3f8303=_0x49ffc1;if(_0x3de183[_0x3f8303(0x130)](_0x45b163[_0x3f8303(0x197)],'PostToolUse'))return{};const _0x3e4039=_0x45b163;if(_0x3de183['CReTV'](_0x3e4039[_0x3f8303(0x10e)],_0x3f8303(0x14b)))return{};const _0x17b870=_0x3e4039['tool_input'],_0x424594=extractBashCommand(_0x17b870);if(!_0x424594)return{};const _0x5d1df1=parsePlaywrightCliCommand(_0x424594);if(!_0x5d1df1)return{};return _0x2e40b4[_0x3f8303(0x150)](_0x5d1df1,_0x3de183['mwhUt'](_0x2e40b4[_0x3f8303(0x117)](_0x5d1df1)||0x0,0x1)),_0x4633d6[_0x3f8303(0x15e)]('tool_call',{'transport':_0x3de183[_0x3f8303(0x14e)],'toolName':_0x5d1df1}),_0x4633d6[_0x3f8303(0x12d)](_0x3de183['iHBTg'],{'transport':_0x3de183[_0x3f8303(0x14e)],'toolName':_0x5d1df1,'bashCommandPreview':truncatePreview(_0x424594)}),_0x3de183['EyJDD'](_0x5d1df1,'snapshot')&&console['log'](_0x3de183['VYJrw'](formatPlaywrightCliConsoleLogMessage,_0x17b870,_0x424594,_0x5d1df1)),{};},_0x3c14e4=async _0x576ac8=>{const _0x463a93=_0x49ffc1;if(_0x576ac8[_0x463a93(0x197)]!==_0x463a93(0x14a))return{};const _0x14934e=_0x576ac8;if(_0x14934e[_0x463a93(0x10e)]!==_0x3de183[_0x463a93(0x17f)])return{};return await _0x4633d6[_0x463a93(0x164)](_0x463a93(0x182),_0x14934e['error'],{'transport':'playwright-cli','toolName':'Bash'}),{};};return{'postToolUseHook':_0x5ad3bf,'postToolUseFailureHook':_0x3c14e4,'commandCounts':_0x2e40b4};}async function runPlaywrightCliLifecycleCommand(_0x3e8140){const _0x15164c=_0x3113,_0x46087f={'EcwCe':function(_0x10f2f6,_0x29f4e5){return _0x10f2f6(_0x29f4e5);},'bBVNl':function(_0x249f85,_0x3df225,_0x602831){return _0x249f85(_0x3df225,_0x602831);}},{sessionId:_0x41b976,configPath:_0x2a2d2f,commandArgs:_0x152745,env:_0x1030cf,telemetry:_0x5190f1,phase:_0x2e0ed0,metadata:_0x2d7c65,timeoutMs:_0x3be022}=_0x3e8140;_0x5190f1[_0x15164c(0x15e)](_0x2e0ed0,_0x2d7c65);try{const _0xd34ae8=await _0x46087f[_0x15164c(0x165)](runPlaywrightCliCommand,{'sessionId':_0x41b976,'configPath':_0x2a2d2f,'commandArgs':_0x152745,'cwd':process[_0x15164c(0x119)](),'env':_0x1030cf,'timeoutMs':_0x3be022??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x5190f1[_0x15164c(0x12d)](_0x2e0ed0,{..._0x2d7c65,'subcommand':_0xd34ae8['invocation'][_0x15164c(0x170)],'stdoutPreview':_0x46087f[_0x15164c(0x14d)](truncatePreview,_0xd34ae8['stdout'],0x7d0),'stderrPreview':truncatePreview(_0xd34ae8['stderr'],0x7d0)});}catch(_0x3a919c){await _0x5190f1['trackPhaseError'](_0x2e0ed0,_0x3a919c,_0x2d7c65);throw _0x3a919c;}}export async function finalizeVerifyFeatureCliSession(_0x3940b7){const _0x318bb5=_0x3113,_0x1f8215={'VyzHN':_0x318bb5(0x12a),'WkfAL':'playwright_cli_video_stop','HLlKf':_0x318bb5(0x168),'fUEgk':function(_0x4c0c58,_0x4ae0d5,_0x555f1a){return _0x4c0c58(_0x4ae0d5,_0x555f1a);},'UryhU':_0x318bb5(0x133)},{telemetry:_0x163fb9,sessionId:_0x51b9c1,configPath:_0x50602b,cliArtifactDir:_0x377266,env:_0x1e4540,transportMetadata:_0x8ff9ee}=_0x3940b7,_0x35e00b=[{'phase':_0x318bb5(0x151),'commandArgs':[_0x1f8215[_0x318bb5(0x16d)]]},{'phase':_0x1f8215[_0x318bb5(0x162)],'commandArgs':[_0x1f8215['HLlKf'],_0x318bb5(0x155)+_0x1f8215[_0x318bb5(0x14c)](buildCliArtifactPath,_0x377266,'session-recording.webm')]},{'phase':_0x1f8215['UryhU'],'commandArgs':['close']}];for(const _0x30b14d of _0x35e00b){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x51b9c1,'configPath':_0x50602b,'commandArgs':[..._0x30b14d[_0x318bb5(0x192)]],'env':_0x1e4540,'telemetry':_0x163fb9,'phase':_0x30b14d[_0x318bb5(0x127)],'metadata':_0x8ff9ee});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x335479){const _0x3f194d=_0x3113,_0x40386d={'pWSnm':_0x3f194d(0x136)},_0x2a8ab0=[_0x40386d['pWSnm'],'trace.trace.zip'];for(const _0x3f1db9 of _0x2a8ab0){const _0x2dfa84=join(_0x335479,_0x3f1db9);try{return{'buffer':await readFile(_0x2dfa84),'source':_0x2dfa84};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x530ff3){const _0x1cca01=_0x3113,_0x229de4={'UHpXx':function(_0x2f8e79,_0x28a31f,_0x55762e){return _0x2f8e79(_0x28a31f,_0x55762e);},'kEVtN':function(_0x1bfacc,_0x30b822){return _0x1bfacc+_0x30b822;},'CAcRz':function(_0xb2ee1c,_0x13fe23){return _0xb2ee1c===_0x13fe23;},'DDfRy':function(_0x39f5a3,_0x3215ca,_0x11a1b4){return _0x39f5a3(_0x3215ca,_0x11a1b4);}},{cwd:_0x3934aa,cliArtifactDir:_0x309c70,startTime:_0x126f6b}=_0x530ff3,_0x2dd5c6=[];await _0x229de4['UHpXx'](mkdir,_0x309c70,{'recursive':!![]});const _0x18ba03=await _0x229de4[_0x1cca01(0x188)](readdir,_0x3934aa,{'withFileTypes':!![]});for(const _0x3c88d4 of _0x18ba03){if(!_0x3c88d4['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x1cca01(0x184)](_0x3c88d4[_0x1cca01(0x124)]))continue;const _0x39149f=join(_0x3934aa,_0x3c88d4[_0x1cca01(0x124)]),_0x10a817=await stat(_0x39149f);if(_0x229de4[_0x1cca01(0x12c)](_0x10a817['mtimeMs'],0x7d0)<_0x126f6b)continue;const _0x28c984=buildCliArtifactPath(_0x309c70,_0x3c88d4[_0x1cca01(0x124)]);if(_0x229de4[_0x1cca01(0x13d)](_0x39149f,_0x28c984))continue;await _0x229de4['DDfRy'](rename,_0x39149f,_0x28c984),_0x2dd5c6['push'](_0x3c88d4['name']);}return _0x2dd5c6[_0x1cca01(0x143)]();}function _0x5818(){const _0x1ebe8f=['795162qLtfPr','VyzHN','\x20snapshot\x20--filename\x20','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','subcommand','split','WlUuJ','02_state.yml','open\x20new\x20tab','check','`\x0a-\x20`snapshot\x20--filename\x20','WjPIu','\x20screenshot\x20--filename\x20','stringify','\x0a\x0a1.\x20Run\x20`','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','join','slice','tool_call','qDvRS','>\x20\x22','28HSMmPo','tool_failure','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','test','22KIqqAu','createdAt',']\x20**','UHpXx','11737610AazoXO','press','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','\x20>\x20','capture\x20screenshot','string','values','screenshot','\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','commandArgs','Wxvuy','6831369zHxgwo','[ranger-verification-agent]\x20','TAmuf','hook_event_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.','jtoos','capture\x20step\x20`','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','start\x20video\x20recording','snapshot','DEBUG','key_03_success-state.png','tool_name','numeric','open\x20','VvmcE','open','replace','\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','...','\x20tracing-start`,\x20then\x20`','get','tCKiq','cwd','cFtJA','`:\x20\x22','match','target','env','en-US','ewnMl','map','click','03_result-visible.png','name','authorEmail','select\x20tab\x20','phase','description','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','tracing-stop','\x0a\x0a##\x20Additional\x20Notes\x0a','kEVtN','trackPhaseEnd','yNqgy','yJQzj','ESvUA','open\x20browser','4251088LEodJf','playwright_cli_close','short','163487zwfEjr','trace.zip','keys','playwright-cli','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\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','`\x0a9.\x20Run\x20`','\x22,\x20\x22','CAcRz','frSjC','uKydz','42095kWgwmX','2jhMcLo','588jbUpFj','sort','click\x20','capture\x20snapshot','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','length','authorName','kyHkj','PostToolUseFailure','Bash','fUEgk','bBVNl','eWdqI','KrlMb','set','playwright_cli_tracing_stop','element','unaddressedComments','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','--filename=','VrpzH','domRef','\x20open`,\x20then\x20`','Reviewer','hxnaq','UxKkV','run-code','start\x20tracing','trackPhaseStart','cvRTU','JpDrD','1349289alcyVV','WkfAL','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','trackPhaseError','EcwCe','canonicalFlow','\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','video-stop','ref\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`','olqmJ'];_0x5818=function(){return _0x1ebe8f;};return _0x5818();}
|