@ranger-testing/ranger-cli 3.1.6 → 3.1.7-alpha.62f152a-54
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/deleteProfile.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/legacyWarning.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/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.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/rangerwrightCli.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/scenarioOriginCheck.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/tunnelClient.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/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0xfcde36,_0x24d057){const _0x4ae419=_0x45c0,_0x47b21c=_0xfcde36();while(!![]){try{const _0x5ef4d1=-parseInt(_0x4ae419(0x147))/0x1+-parseInt(_0x4ae419(0x14f))/0x2*(parseInt(_0x4ae419(0x18d))/0x3)+-parseInt(_0x4ae419(0x175))/0x4*(parseInt(_0x4ae419(0x17a))/0x5)+-parseInt(_0x4ae419(0x1bd))/0x6+-parseInt(_0x4ae419(0x19d))/0x7*(parseInt(_0x4ae419(0x161))/0x8)+-parseInt(_0x4ae419(0x172))/0x9*(parseInt(_0x4ae419(0x1af))/0xa)+parseInt(_0x4ae419(0x1ba))/0xb*(parseInt(_0x4ae419(0x132))/0xc);if(_0x5ef4d1===_0x24d057)break;else _0x47b21c['push'](_0x47b21c['shift']());}catch(_0x36248c){_0x47b21c['push'](_0x47b21c['shift']());}}}(_0x5f33,0x83f63));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(_0x397d85,_0x3bcc57=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x14d3b4=_0x45c0,_0x63bd87={'ZgCcX':function(_0x13c207,_0x1343e1){return _0x13c207>_0x1343e1;},'rrCyC':function(_0x837479,_0x1f4ef9){return _0x837479+_0x1f4ef9;},'UNhDo':_0x14d3b4(0x154)};return _0x63bd87['ZgCcX'](_0x397d85['length'],_0x3bcc57)?_0x63bd87['rrCyC'](_0x397d85[_0x14d3b4(0x173)](0x0,_0x3bcc57),_0x63bd87[_0x14d3b4(0x1aa)]):_0x397d85;}function buildCliArtifactPath(_0x59ccda,_0x105cb5){return join(_0x59ccda,_0x105cb5);}function toStepDisplayName(_0xd920f3){const _0x350dd9=_0x45c0,_0x446595={'YnnMj':function(_0x34d345,_0x2e0756){return _0x34d345(_0x2e0756);}},_0x24728=_0x446595['YnnMj'](basename,_0xd920f3)[_0x350dd9(0x13a)](/\.(?:png|ya?ml)$/i,'')[_0x350dd9(0x13a)](/^key_/i,'')[_0x350dd9(0x13a)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x24728,'isKeyStep':/^key_/i['test'](basename(_0xd920f3))};}function extractShellValue(_0x2c0d34){if(!_0x2c0d34)return null;return _0x2c0d34[0x1]??_0x2c0d34[0x2]??_0x2c0d34[0x3]??null;}function extractFilenameOption(_0x3f3d5f){const _0x4b9259=_0x45c0,_0x51228d={'KMsPn':function(_0x4b8b33,_0x3265f0){return _0x4b8b33(_0x3265f0);}};return _0x51228d['KMsPn'](extractShellValue,_0x3f3d5f[_0x4b9259(0x15e)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x56f0f7,_0x1ea8ec){const _0x515a0a=_0x45c0,_0x134784={'BjLwi':function(_0x4c7436,_0x72cc2){return _0x4c7436(_0x72cc2);}},_0x1ebf5c=_0x1ea8ec['replace'](/[.*+?^${}()|[\]\\]/g,_0x515a0a(0x14a));return _0x134784[_0x515a0a(0x14c)](extractShellValue,_0x56f0f7[_0x515a0a(0x15e)](new RegExp('(?:^|\x5cs)'+_0x1ebf5c+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function _0x5f33(){const _0x3487c2=['open\x20browser','[playwright-cli]\x20','lmIpL','HWOFv','\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.','cwd','click','11PrQyNS','open','YgqZf','487638SkFDcb','iTtas','zNkql','env','keys','tool_call','canonicalFlow','**\x20(','`,\x20then\x20`','02_button-clicked.png','PostToolUseFailure','\x20tracing-start`\x0a3.\x20Run\x20`','58608708VQWfct','trace.trace.zip','oznsN','playwright_cli_video_stop','capture\x20snapshot','element','playwright_cli_close','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','replace','name','open\x20new\x20tab\x20','authorName','string','split','\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','kgvoS','vrHUW','stringify','\x20snapshot\x20--filename\x20','video-stop','trackPhaseEnd','894277dkLqVJ','en-US','MizIk','\x5c$&','tDWLf','BjLwi','tMbPQ','UnGcx','18zUAlia','qlwZv','select\x20tab\x20','\x20screenshot\x20--filename\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`','...','lPPvB','trackPhaseError','LhAyD','\x20tracing-start`,\x20then\x20`','tool_name','capture\x20snapshot\x20`','notes','XktTi','\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.','match','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','Reviewer','7186472bSThoM','`\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`','hook_event_name','commandArgs','check\x20','stop\x20video\x20recording','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','toLocaleDateString','PostToolUse','SptDQ','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','03_result-visible.png','\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-\x20Login/sign-in/auth\x20pages\x20when\x20no\x20Authentication\x20section\x20is\x20present\x20in\x20this\x20prompt\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.','press','bWqXv','playwright-cli','29835GTbWei','slice','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','8FdgFAR','\x20(on\x20element:\x20<','capture\x20screenshot','description','capture\x20key\x20step\x20`','1908820flDEIz','LZfIr','`\x0a9.\x20Run\x20`','[ranger-verification-agent]\x20','createdAt','stdout','\x20>\x20','snapshot','short','bMOrW','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','Ddsra','01_initial-state.png','tracing-stop','error','tab-select','select\x20tab','Abjbh','Bash','346614jlLgXV','unaddressedComments','ZglQe','trim','osBej','`:\x20\x22','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','hvTdi','close','sort','authorEmail','cKiTB','length','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','7fAPUnr','ptivI','push','oQCtG','test','`\x0a-\x20`snapshot\x20--filename\x20','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','03_learn-more.png','trace.zip','tool_input','`\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','start\x20tracing','RPMuS','UNhDo','\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','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','garLY','02_state.yml','2010nMeESt','run-code','02_learn-more.yml','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'];_0x5f33=function(){return _0x3487c2;};return _0x5f33();}function _0x45c0(_0x2ef7d9,_0x527234){_0x2ef7d9=_0x2ef7d9-0x131;const _0x5f3303=_0x5f33();let _0x45c071=_0x5f3303[_0x2ef7d9];return _0x45c071;}function formatCommandTarget(_0x2a297c){const _0x3c2333=_0x45c0,_0x1588be={'wpaqc':'target'};if(!_0x2a297c)return _0x1588be['wpaqc'];if(/^e\d+$/i[_0x3c2333(0x1a1)](_0x2a297c))return'ref\x20'+_0x2a297c;return JSON[_0x3c2333(0x143)](truncatePreview(_0x2a297c,0x78));}function formatPlaywrightCliLog(_0x5f5d9a,_0x363951){const _0x145921=_0x45c0,_0x393cba={'bTqjp':_0x145921(0x1bb),'QdWDf':_0x145921(0x1b3),'XktTi':'tracing-start','WKWup':'stop\x20tracing','SAKzE':_0x145921(0x145),'bWqXv':_0x145921(0x166),'KMuqZ':_0x145921(0x181),'EadLf':function(_0x38b300,_0x4eb041){return _0x38b300(_0x4eb041);},'HWOFv':_0x145921(0x136),'SptDQ':function(_0x5e28d3,_0x5b5234){return _0x5e28d3(_0x5b5234);},'ZglQe':_0x145921(0x177),'HKtVr':function(_0x46808d,_0x2808a9,_0xe51cc){return _0x46808d(_0x2808a9,_0xe51cc);},'kgvoS':function(_0x172cc4,_0x316ba1,_0x435bfa){return _0x172cc4(_0x316ba1,_0x435bfa);},'NdLbg':function(_0x3af7f2,_0x35cc16,_0x2a1e15){return _0x3af7f2(_0x35cc16,_0x2a1e15);}};switch(_0x363951){case _0x393cba['bTqjp']:{const _0xb33aa2=extractFirstCommandArgument(_0x5f5d9a,_0x363951);return _0xb33aa2?'open\x20'+_0xb33aa2:_0x393cba['QdWDf'];}case _0x393cba[_0x145921(0x15c)]:return _0x145921(0x1a8);case _0x145921(0x187):return _0x393cba['WKWup'];case'video-start':return'start\x20video\x20recording';case _0x393cba['SAKzE']:return _0x393cba[_0x145921(0x170)];case _0x393cba['KMuqZ']:{const _0x806d5=_0x393cba['EadLf'](extractFilenameOption,_0x5f5d9a);if(!_0x806d5)return _0x393cba[_0x145921(0x1b6)];const {name:_0x13421e}=_0x393cba[_0x145921(0x16a)](toStepDisplayName,_0x806d5);return _0x145921(0x15a)+_0x13421e+'`';}case'screenshot':{const _0x33d1aa=extractFilenameOption(_0x5f5d9a);if(!_0x33d1aa)return _0x393cba[_0x145921(0x18f)];const {name:_0x2e38b9,isKeyStep:_0x589911}=toStepDisplayName(_0x33d1aa);return _0x589911?_0x145921(0x179)+_0x2e38b9+'`':'capture\x20step\x20`'+_0x2e38b9+'`';}case _0x145921(0x1b9):return'click\x20'+formatCommandTarget(_0x393cba['HKtVr'](extractFirstCommandArgument,_0x5f5d9a,_0x363951));case'check':return _0x145921(0x165)+formatCommandTarget(extractFirstCommandArgument(_0x5f5d9a,_0x363951));case'fill':return'fill\x20'+formatCommandTarget(_0x393cba[_0x145921(0x141)](extractFirstCommandArgument,_0x5f5d9a,_0x363951));case _0x145921(0x16f):return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x5f5d9a,_0x363951));case _0x145921(0x1b0):return'run\x20custom\x20Playwright\x20code';case'tab-new':{const _0x2e014c=_0x393cba['NdLbg'](extractFirstCommandArgument,_0x5f5d9a,_0x363951);return _0x2e014c?_0x145921(0x13c)+_0x2e014c:'open\x20new\x20tab';}case _0x145921(0x189):{const _0x350bfc=_0x393cba[_0x145921(0x141)](extractFirstCommandArgument,_0x5f5d9a,_0x363951);return _0x350bfc?_0x145921(0x151)+_0x350bfc:_0x145921(0x18a);}default:return _0x363951;}}function extractPlaywrightCliToolDescription(_0x4ca52d){const _0x3c981e=_0x45c0,_0x50c125={'OUqYJ':function(_0x418ebc,_0x15ac16){return _0x418ebc!==_0x15ac16;},'vrHUW':_0x3c981e(0x13e)},_0x494a29=_0x4ca52d['description'];if(_0x50c125['OUqYJ'](typeof _0x494a29,_0x50c125[_0x3c981e(0x142)]))return null;const _0x455de8=_0x494a29[_0x3c981e(0x190)]()[_0x3c981e(0x13a)](/\s+/g,'\x20');return _0x455de8[_0x3c981e(0x199)]>0x0?_0x455de8:null;}export function formatPlaywrightCliConsoleLogMessage(_0x530256,_0x286b78,_0x28ba60){const _0x4de1d4=_0x45c0,_0x3179ae={'hvTdi':function(_0x5358bb,_0xddfed8,_0x291159){return _0x5358bb(_0xddfed8,_0x291159);},'BOBHJ':function(_0x4e1d23,_0x32323b){return _0x4e1d23(_0x32323b);}},_0x4eb5ec=_0x3179ae[_0x4de1d4(0x194)](formatPlaywrightCliLog,_0x286b78,_0x28ba60),_0x1e60cf=_0x3179ae['BOBHJ'](extractPlaywrightCliToolDescription,_0x530256);if(!_0x1e60cf)return _0x4de1d4(0x1b4)+_0x4eb5ec;if(process[_0x4de1d4(0x1c0)]['DEBUG'])return _0x4de1d4(0x17d)+_0x1e60cf+'\x20('+_0x4eb5ec+')';return'[ranger-verification-agent]\x20'+_0x1e60cf;}export function buildVerifyFeatureCliDebugPrompt(_0xd8d7b2,_0x4814e0){const _0x1869c0=_0x45c0,_0x3a9384={'UnGcx':function(_0x3e2b75,_0x29b636,_0x484308){return _0x3e2b75(_0x29b636,_0x484308);},'oznsN':'00_mozilla-homepage.yml','peBuo':_0x1869c0(0x1b1),'lPPvB':function(_0x35cf61,_0x144afc){return _0x35cf61(_0x144afc);}},_0x19dee9=_0x3a9384['UnGcx'](buildCliArtifactPath,_0x4814e0,_0x3a9384[_0x1869c0(0x134)]),_0x5bd217=buildCliArtifactPath(_0x4814e0,'01_mozilla-homepage.png'),_0x57ba6b=_0x3a9384[_0x1869c0(0x14e)](buildCliArtifactPath,_0x4814e0,_0x3a9384['peBuo']),_0x2dd142=buildCliArtifactPath(_0x4814e0,_0x1869c0(0x1a4)),_0xeabb87=quoteShellArg(_0x19dee9),_0xb7bb36=quoteShellArg(_0x5bd217),_0x2c1f52=_0x3a9384[_0x1869c0(0x155)](quoteShellArg,_0x57ba6b),_0x1e79e8=quoteShellArg(_0x2dd142);return _0x1869c0(0x174)+_0xd8d7b2+'\x0a\x0a1.\x20Run\x20`'+_0xd8d7b2+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0xd8d7b2+_0x1869c0(0x131)+_0xd8d7b2+_0x1869c0(0x1a3)+_0x4814e0+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0xd8d7b2+'\x20snapshot\x20--filename\x20'+_0xeabb87+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0xd8d7b2+_0x1869c0(0x152)+_0xb7bb36+_0x1869c0(0x1ac)+_0xd8d7b2+_0x1869c0(0x144)+_0x2c1f52+_0x1869c0(0x17c)+_0xd8d7b2+_0x1869c0(0x152)+_0x1e79e8+_0x1869c0(0x19b);}export function buildVerifyFeatureCliPrompt(_0x3e371d){const _0x4da270=_0x45c0,_0x408b00={'zcZYl':_0x4da270(0x160),'tMbPQ':_0x4da270(0x180),'mScDF':_0x4da270(0x137),'LZfIr':function(_0x51dbb1,_0xe9f5bc,_0x4e3c1e){return _0x51dbb1(_0xe9f5bc,_0x4e3c1e);},'NTqDN':'01_initial.yml','oQCtG':_0x4da270(0x1ae),'osBej':function(_0x2e7be1,_0x3f3a37,_0x4c73d2){return _0x2e7be1(_0x3f3a37,_0x4c73d2);},'RPMuS':_0x4da270(0x16d),'MizIk':'key_04_success-state.png'},{checklistItem:_0x1de427,itemFeedback:_0x356410,taskDescription:_0x3c496b,cliCommandPrefix:_0xe7bb70,cliArtifactDir:_0x424d7d,isCdpMode:_0x259afc,url:_0x1bb15c,cdpEndpoint:_0x3622d1,loginInstructions:_0x1a7c06}=_0x3e371d,_0x4b7fcf=_0x408b00['LZfIr'](buildCliArtifactPath,_0x424d7d,_0x408b00['NTqDN']),_0x3774c7=_0x408b00[_0x4da270(0x17b)](buildCliArtifactPath,_0x424d7d,_0x408b00[_0x4da270(0x1a0)]),_0x46b3a5=buildCliArtifactPath(_0x424d7d,'key_03_success-state.png'),_0x472fe4=_0x408b00[_0x4da270(0x17b)](buildCliArtifactPath,_0x424d7d,_0x4da270(0x186)),_0x30a95e=quoteShellArg(_0x4b7fcf),_0x9e3483=quoteShellArg(_0x3774c7),_0x454bc3=quoteShellArg(_0x46b3a5),_0x1aabfb=quoteShellArg(_0x472fe4),_0x12c355=_0x1de427['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x1de427[_0x4da270(0x15b)]:'';let _0xaa4259='';if(_0x356410&&_0x356410['unaddressedComments']['length']>0x0){const _0x3870fa=_0x356410[_0x4da270(0x18e)]['map'](_0x5199b1=>{const _0x3c1e78=_0x4da270,_0x5b5398=new Date(_0x5199b1[_0x3c1e78(0x17e)])[_0x3c1e78(0x168)](_0x3c1e78(0x148),{'month':_0x3c1e78(0x182),'day':'numeric'}),_0x31104c=_0x5199b1[_0x3c1e78(0x13d)]||_0x5199b1[_0x3c1e78(0x197)]||_0x408b00['zcZYl'],_0x97d476=_0x5199b1['domRef']?_0x3c1e78(0x176)+(_0x5199b1['domRef']['selector']['split'](_0x408b00[_0x3c1e78(0x14d)])['pop']()?.[_0x3c1e78(0x13f)](':')[0x0]||_0x408b00['mScDF'])+'>\x20\x22'+(_0x5199b1['domRef']['textContent']||'')[_0x3c1e78(0x173)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x5199b1['id']+']\x20**'+_0x31104c+_0x3c1e78(0x1c4)+_0x5b5398+'):\x20\x22'+_0x5199b1['content']+'\x22'+_0x97d476;})['join']('\x0a');_0xaa4259=_0x4da270(0x140)+_0x3870fa;}const _0x591c64=_0x356410?.[_0x4da270(0x1c3)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x356410['canonicalFlow']:'',_0x208b9c=_0x259afc?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x3622d1+_0x4da270(0x19a):_0x4da270(0x15f)+_0x1bb15c+'\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',_0x31c5a6=_0x1bb15c?quoteShellArg(_0x1bb15c):'',_0x26f9cd=_0x259afc?_0x4da270(0x16c)+_0xe7bb70+'\x20open`,\x20then\x20`'+_0xe7bb70+_0x4da270(0x158)+_0xe7bb70+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x424d7d+_0x4da270(0x139)+_0xe7bb70+'\x20snapshot\x20--filename\x20'+_0x30a95e+_0x4da270(0x162)+_0xe7bb70+_0x4da270(0x152)+_0x1aabfb+_0x4da270(0x19c)+_0xe7bb70+_0x4da270(0x1ab):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0xe7bb70+'\x20open\x20'+_0x31c5a6+_0x4da270(0x1c5)+_0xe7bb70+'\x20tracing-start`,\x20then\x20`'+_0xe7bb70+_0x4da270(0x1b2)+_0x424d7d+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0xe7bb70+_0x4da270(0x144)+_0x30a95e+'`\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`'+_0xe7bb70+'\x20screenshot\x20--filename\x20'+_0x1aabfb+_0x4da270(0x167)+_0xe7bb70+'\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',_0x3ae165=_0x259afc?_0x4da270(0x15d):_0x4da270(0x16e),_0x260742=_0x1a7c06?_0x4da270(0x184)+_0x1a7c06+'\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'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'+_0x1de427[_0x4da270(0x178)]+_0x12c355+_0xaa4259+_0x591c64+_0x4da270(0x16b)+_0x3c496b+'\x0a\x0a'+_0x208b9c+_0x260742+'\x0a\x0a'+_0x26f9cd+_0x4da270(0x193)+_0xe7bb70+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x424d7d+_0x4da270(0x1a2)+_0x9e3483+_0x4da270(0x1a7)+_0x454bc3+_0x4da270(0x153)+_0x424d7d+_0x4da270(0x192)+_0x472fe4+'\x22,\x20\x22'+_0x408b00[_0x4da270(0x191)](buildCliArtifactPath,_0x424d7d,_0x4da270(0x1c6))+'\x22,\x20\x22'+buildCliArtifactPath(_0x424d7d,_0x408b00[_0x4da270(0x1a9)])+'\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'+_0x408b00[_0x4da270(0x17b)](buildCliArtifactPath,_0x424d7d,_0x408b00[_0x4da270(0x149)])+'\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'+_0x3ae165+_0x4da270(0x1b7);}export function summarizeVerifyFeatureCliCommandAvailability(_0x323664){const _0x40bfec=_0x45c0,_0x730145=[..._0x323664[_0x40bfec(0x1c1)]()]['sort']();let _0x5c2c17=0x0;for(const _0x3603d3 of _0x323664['values']()){_0x5c2c17+=_0x3603d3;}return{'cliCommandCount':_0x5c2c17,'cliCommandsSeen':_0x730145,'noCliCommandsCalled':_0x5c2c17===0x0};}export function createVerifyFeatureCliHooks(_0x5cbd4a){const _0x18e430=_0x45c0,_0xf875c={'Ddsra':function(_0x295c9f,_0x32239e){return _0x295c9f!==_0x32239e;},'iTtas':_0x18e430(0x169),'Abjbh':function(_0xe82769,_0x1e4e35){return _0xe82769+_0x1e4e35;},'zNkql':_0x18e430(0x1c2),'qlwZv':function(_0x5cba6e,_0x4bf688){return _0x5cba6e(_0x4bf688);},'garLY':function(_0x5da9b8,_0x5661a4){return _0x5da9b8!==_0x5661a4;},'FwoSJ':_0x18e430(0x181),'HzPzs':_0x18e430(0x1c7),'tDWLf':'Bash'},_0x4ed73e=new Map(),_0x4414c3=async _0x589c2c=>{const _0x50a324=_0x18e430;if(_0xf875c['Ddsra'](_0x589c2c[_0x50a324(0x163)],_0xf875c[_0x50a324(0x1be)]))return{};const _0x11feaf=_0x589c2c;if(_0xf875c[_0x50a324(0x185)](_0x11feaf[_0x50a324(0x159)],_0x50a324(0x18c)))return{};const _0x583419=_0x11feaf[_0x50a324(0x1a6)],_0x4e04c0=extractBashCommand(_0x583419);if(!_0x4e04c0)return{};const _0x550541=parsePlaywrightCliCommand(_0x4e04c0);if(!_0x550541)return{};return _0x4ed73e['set'](_0x550541,_0xf875c[_0x50a324(0x18b)](_0x4ed73e['get'](_0x550541)||0x0,0x1)),_0x5cbd4a['trackPhaseStart'](_0xf875c['zNkql'],{'transport':'playwright-cli','toolName':_0x550541}),_0x5cbd4a['trackPhaseEnd'](_0xf875c[_0x50a324(0x1bf)],{'transport':_0x50a324(0x171),'toolName':_0x550541,'bashCommandPreview':_0xf875c[_0x50a324(0x150)](truncatePreview,_0x4e04c0)}),_0xf875c[_0x50a324(0x1ad)](_0x550541,_0xf875c['FwoSJ'])&&console['log'](formatPlaywrightCliConsoleLogMessage(_0x583419,_0x4e04c0,_0x550541)),{};},_0x7f27b0=async _0x312937=>{const _0x16ec32=_0x18e430;if(_0xf875c['Ddsra'](_0x312937[_0x16ec32(0x163)],_0xf875c['HzPzs']))return{};const _0x38277a=_0x312937;if(_0x38277a[_0x16ec32(0x159)]!=='Bash')return{};return await _0x5cbd4a[_0x16ec32(0x156)]('tool_failure',_0x38277a[_0x16ec32(0x188)],{'transport':_0x16ec32(0x171),'toolName':_0xf875c[_0x16ec32(0x14b)]}),{};};return{'postToolUseHook':_0x4414c3,'postToolUseFailureHook':_0x7f27b0,'commandCounts':_0x4ed73e};}async function runPlaywrightCliLifecycleCommand(_0x507643){const _0xcd6118=_0x45c0,{sessionId:_0x327d47,configPath:_0x35b1fd,commandArgs:_0x5dc001,env:_0x775a21,telemetry:_0x360f3,phase:_0x2a02c5,metadata:_0x6c4909,timeoutMs:_0x35fa61}=_0x507643;_0x360f3['trackPhaseStart'](_0x2a02c5,_0x6c4909);try{const _0x1f1787=await runPlaywrightCliCommand({'sessionId':_0x327d47,'configPath':_0x35b1fd,'commandArgs':_0x5dc001,'cwd':process[_0xcd6118(0x1b8)](),'env':_0x775a21,'timeoutMs':_0x35fa61??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x360f3[_0xcd6118(0x146)](_0x2a02c5,{..._0x6c4909,'subcommand':_0x1f1787['invocation']['subcommand'],'stdoutPreview':truncatePreview(_0x1f1787[_0xcd6118(0x17f)],0x7d0),'stderrPreview':truncatePreview(_0x1f1787['stderr'],0x7d0)});}catch(_0x3f2e09){await _0x360f3['trackPhaseError'](_0x2a02c5,_0x3f2e09,_0x6c4909);throw _0x3f2e09;}}export async function finalizeVerifyFeatureCliSession(_0x472eca){const _0x142ddb=_0x45c0,_0x5ab600={'CSSvc':_0x142ddb(0x135),'LhAyD':'session-recording.webm','cKiTB':_0x142ddb(0x195)},{telemetry:_0x57e3f6,sessionId:_0x54f1ef,configPath:_0x3fbe7d,cliArtifactDir:_0x226441,env:_0x10bd3c,transportMetadata:_0x5a8f5b}=_0x472eca,_0x17a893=[{'phase':'playwright_cli_tracing_stop','commandArgs':['tracing-stop']},{'phase':_0x5ab600['CSSvc'],'commandArgs':['video-stop','--filename='+buildCliArtifactPath(_0x226441,_0x5ab600[_0x142ddb(0x157)])]},{'phase':_0x142ddb(0x138),'commandArgs':[_0x5ab600[_0x142ddb(0x198)]]}];for(const _0x5aac76 of _0x17a893){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x54f1ef,'configPath':_0x3fbe7d,'commandArgs':[..._0x5aac76[_0x142ddb(0x164)]],'env':_0x10bd3c,'telemetry':_0x57e3f6,'phase':_0x5aac76['phase'],'metadata':_0x5a8f5b});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x33bf14){const _0x41aba5=_0x45c0,_0x37884a={'ptivI':_0x41aba5(0x1a5),'YgqZf':_0x41aba5(0x133),'bMOrW':function(_0x438311,_0x40ec7d){return _0x438311(_0x40ec7d);}},_0xc10054=[_0x37884a[_0x41aba5(0x19e)],_0x37884a[_0x41aba5(0x1bc)]];for(const _0x27f11 of _0xc10054){const _0x2eefaf=join(_0x33bf14,_0x27f11);try{return{'buffer':await _0x37884a[_0x41aba5(0x183)](readFile,_0x2eefaf),'source':_0x2eefaf};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x55644c){const _0x46a5c5=_0x45c0,_0x33d1d8={'lmIpL':function(_0x10be10,_0x173614,_0x431779){return _0x10be10(_0x173614,_0x431779);},'iDLtD':function(_0x16e9af,_0x361651){return _0x16e9af===_0x361651;}},{cwd:_0x4de95b,cliArtifactDir:_0x366d06,startTime:_0x4dc262}=_0x55644c,_0x3c5b72=[];await _0x33d1d8[_0x46a5c5(0x1b5)](mkdir,_0x366d06,{'recursive':!![]});const _0x2234c7=await readdir(_0x4de95b,{'withFileTypes':!![]});for(const _0x2495dc of _0x2234c7){if(!_0x2495dc['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x46a5c5(0x1a1)](_0x2495dc[_0x46a5c5(0x13b)]))continue;const _0x508460=join(_0x4de95b,_0x2495dc[_0x46a5c5(0x13b)]),_0x166401=await stat(_0x508460);if(_0x166401['mtimeMs']+0x7d0<_0x4dc262)continue;const _0x82d6cf=buildCliArtifactPath(_0x366d06,_0x2495dc[_0x46a5c5(0x13b)]);if(_0x33d1d8['iDLtD'](_0x508460,_0x82d6cf))continue;await rename(_0x508460,_0x82d6cf),_0x3c5b72[_0x46a5c5(0x19f)](_0x2495dc[_0x46a5c5(0x13b)]);}return _0x3c5b72[_0x46a5c5(0x196)]();}
|
|
1
|
+
(function(_0x4d2435,_0x1b6024){const _0x24a2c1=_0x50bc,_0x9871f9=_0x4d2435();while(!![]){try{const _0x291cb1=parseInt(_0x24a2c1(0x10c))/0x1*(parseInt(_0x24a2c1(0x122))/0x2)+parseInt(_0x24a2c1(0x126))/0x3+parseInt(_0x24a2c1(0xf1))/0x4+-parseInt(_0x24a2c1(0xf8))/0x5+-parseInt(_0x24a2c1(0x145))/0x6+-parseInt(_0x24a2c1(0x108))/0x7+parseInt(_0x24a2c1(0xdf))/0x8*(parseInt(_0x24a2c1(0x150))/0x9);if(_0x291cb1===_0x1b6024)break;else _0x9871f9['push'](_0x9871f9['shift']());}catch(_0x3e08d6){_0x9871f9['push'](_0x9871f9['shift']());}}}(_0x2932,0x33261));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';function _0x2932(){const _0xca93ef=['log','short','kaMRn','\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.','TrKxH','subcommand','2902416IICFYb','capture\x20snapshot\x20`','XJiyg','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','Rdcol','Reviewer','trackPhaseError','\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',']\x20**','playwright_cli_tracing_stop','cwd','03_result-visible.png','set','Bash','stop\x20tracing','check','en-US','TDakC','360884YOzDBb','replace','capture\x20snapshot','...','test','qJxiZ','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','253715ehntIk','-\x20[','ioSaC','aUhGz','trace.zip','fill','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','\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','HPPxK','createdAt','01_initial-state.png','start\x20video\x20recording','split','tool_name','phase','2314613NORrbb','kpEGh','PostToolUse','uZehJ','1XKrahZ','\x5c$&','isFile','[ranger-verification-agent]\x20','dbpwF','content','`\x0a9.\x20Run\x20`','\x20snapshot\x20--filename\x20','tool_call','\x20tracing-start`\x0a3.\x20Run\x20`','\x20screenshot\x20--filename\x20','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','\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','pQJKD','bjgRd','>\x20\x22','[playwright-cli]\x20','(?:^|\x5cs)','tool_input','`\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','fill\x20','463530LEXiII','cBlko','--filename=','playwright-cli','551817DsPnrM','\x20tracing-start`,\x20then\x20`','`:\x20\x22','mtimeMs','tracing-start','llbrM','authorName','03_learn-more.png','snapshot','tab-new','tab-select','domRef','Dxlld','trackPhaseEnd','HzyDj','name','01_mozilla-homepage.png','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','unaddressedComments','open','invocation','HQJMM','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','NjvlN','SHVNa','\x20(on\x20element:\x20<','RkLhG','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','BoFtX','video-stop','stop\x20video\x20recording','1666920kBwGTy','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','EQUdh','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','tracing-stop','\x22,\x20\x22','\x0a\x0a1.\x20Run\x20`','ChtwW','`\x0a-\x20`snapshot\x20--filename\x20','length','string','9fTWKCM','description','\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.','commandArgs','open\x20','RWcix','lWpNl','click\x20','\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','dyNWf','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','PostToolUseFailure','bODkm','02_button-clicked.png','hook_event_name','numeric','LWlct','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','trim','target','`\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`'];_0x2932=function(){return _0xca93ef;};return _0x2932();}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(_0x4a4930,_0x42c155=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x3526af=_0x50bc;return _0x4a4930[_0x3526af(0x14e)]>_0x42c155?_0x4a4930['slice'](0x0,_0x42c155)+_0x3526af(0xf4):_0x4a4930;}function buildCliArtifactPath(_0xcb2a0a,_0x133b06){return join(_0xcb2a0a,_0x133b06);}function toStepDisplayName(_0x4c2679){const _0x488f36=_0x50bc,_0x48fce6={'UfiVm':function(_0x3a9287,_0x501a86){return _0x3a9287(_0x501a86);}},_0x2c2fdc=_0x48fce6['UfiVm'](basename,_0x4c2679)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x488f36(0xf2)](/^\d+_/,'')[_0x488f36(0xf2)](/-/g,'\x20');return{'name':_0x2c2fdc,'isKeyStep':/^key_/i['test'](basename(_0x4c2679))};}function extractShellValue(_0x5b436d){if(!_0x5b436d)return null;return _0x5b436d[0x1]??_0x5b436d[0x2]??_0x5b436d[0x3]??null;}function extractFilenameOption(_0x113e6f){const _0x55d0c9=_0x50bc,_0x1b1d4f={'Rdcol':function(_0x5e5524,_0x496e91){return _0x5e5524(_0x496e91);}};return _0x1b1d4f[_0x55d0c9(0xe3)](extractShellValue,_0x113e6f['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x56b637,_0x26c7ff){const _0x3f2bc1=_0x50bc,_0x2e8531={'FgwlJ':_0x3f2bc1(0x10d),'tenXg':function(_0xd67e76,_0x5b22b9){return _0xd67e76(_0x5b22b9);}},_0x31bd5e=_0x26c7ff['replace'](/[.*+?^${}()|[\]\\]/g,_0x2e8531['FgwlJ']);return _0x2e8531['tenXg'](extractShellValue,_0x56b637['match'](new RegExp(_0x3f2bc1(0x11e)+_0x31bd5e+_0x3f2bc1(0x13c))));}function formatCommandTarget(_0x29f193){const _0x292843=_0x50bc,_0x460491={'HPPxK':function(_0x43b3cf,_0x355305,_0x257447){return _0x43b3cf(_0x355305,_0x257447);}};if(!_0x29f193)return _0x292843(0xd7);if(/^e\d+$/i['test'](_0x29f193))return'ref\x20'+_0x29f193;return JSON['stringify'](_0x460491[_0x292843(0x101)](truncatePreview,_0x29f193,0x78));}function formatPlaywrightCliLog(_0x10fa64,_0x500a6f){const _0xf4bff2=_0x50bc,_0x242f37={'BoFtX':_0xf4bff2(0x139),'AIuRG':function(_0x1f1675,_0x55ff03,_0x129940){return _0x1f1675(_0x55ff03,_0x129940);},'eqXAz':_0xf4bff2(0x12a),'pxnAt':'start\x20tracing','SHVNa':'tracing-stop','dbpwF':_0xf4bff2(0xed),'HzyDj':_0xf4bff2(0x104),'lWpNl':_0xf4bff2(0x143),'LWlct':function(_0x480a3b,_0x29c588){return _0x480a3b(_0x29c588);},'ydQvI':_0xf4bff2(0xf3),'saVkW':'screenshot','yCgni':function(_0x489c7e,_0x468b95){return _0x489c7e(_0x468b95);},'kpEGh':'click','UrsgO':function(_0x254142,_0x1cc856){return _0x254142(_0x1cc856);},'EPswE':_0xf4bff2(0xee),'JOHWo':_0xf4bff2(0xfd),'kaMRn':_0xf4bff2(0x12f),'dxMVB':function(_0x4455ec,_0x13d43f,_0x364fe4){return _0x4455ec(_0x13d43f,_0x364fe4);},'RWcix':'open\x20new\x20tab'};switch(_0x500a6f){case _0x242f37[_0xf4bff2(0x142)]:{const _0x4ee3a8=_0x242f37['AIuRG'](extractFirstCommandArgument,_0x10fa64,_0x500a6f);return _0x4ee3a8?_0xf4bff2(0xc8)+_0x4ee3a8:'open\x20browser';}case _0x242f37['eqXAz']:return _0x242f37['pxnAt'];case _0x242f37[_0xf4bff2(0x13e)]:return _0x242f37[_0xf4bff2(0x110)];case'video-start':return _0x242f37[_0xf4bff2(0x134)];case _0x242f37[_0xf4bff2(0xca)]:return _0xf4bff2(0x144);case'snapshot':{const _0x41ff70=_0x242f37['LWlct'](extractFilenameOption,_0x10fa64);if(!_0x41ff70)return _0x242f37['ydQvI'];const {name:_0x4e57dc}=_0x242f37[_0xf4bff2(0xd4)](toStepDisplayName,_0x41ff70);return _0xf4bff2(0xe0)+_0x4e57dc+'`';}case _0x242f37['saVkW']:{const _0x3a0b1f=_0x242f37[_0xf4bff2(0xd4)](extractFilenameOption,_0x10fa64);if(!_0x3a0b1f)return'capture\x20screenshot';const {name:_0x2bb0a4,isKeyStep:_0x417b9d}=_0x242f37['yCgni'](toStepDisplayName,_0x3a0b1f);return _0x417b9d?'capture\x20key\x20step\x20`'+_0x2bb0a4+'`':'capture\x20step\x20`'+_0x2bb0a4+'`';}case _0x242f37[_0xf4bff2(0x109)]:return _0xf4bff2(0xcb)+_0x242f37['UrsgO'](formatCommandTarget,extractFirstCommandArgument(_0x10fa64,_0x500a6f));case _0x242f37['EPswE']:return'check\x20'+_0x242f37['LWlct'](formatCommandTarget,extractFirstCommandArgument(_0x10fa64,_0x500a6f));case _0x242f37['JOHWo']:return _0xf4bff2(0x121)+formatCommandTarget(extractFirstCommandArgument(_0x10fa64,_0x500a6f));case'press':return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x10fa64,_0x500a6f));case'run-code':return'run\x20custom\x20Playwright\x20code';case _0x242f37[_0xf4bff2(0xdb)]:{const _0x40c698=_0x242f37['dxMVB'](extractFirstCommandArgument,_0x10fa64,_0x500a6f);return _0x40c698?'open\x20new\x20tab\x20'+_0x40c698:_0x242f37[_0xf4bff2(0xc9)];}case _0xf4bff2(0x130):{const _0xaedf10=extractFirstCommandArgument(_0x10fa64,_0x500a6f);return _0xaedf10?'select\x20tab\x20'+_0xaedf10:'select\x20tab';}default:return _0x500a6f;}}function extractPlaywrightCliToolDescription(_0x4a7a9c){const _0x384a9d=_0x50bc,_0x44b31a={'RjVFC':_0x384a9d(0x14f),'FWTxZ':function(_0x449bb7,_0x3fff7c){return _0x449bb7>_0x3fff7c;}},_0x192c1f=_0x4a7a9c['description'];if(typeof _0x192c1f!==_0x44b31a['RjVFC'])return null;const _0x4ea68f=_0x192c1f[_0x384a9d(0xd6)]()[_0x384a9d(0xf2)](/\s+/g,'\x20');return _0x44b31a['FWTxZ'](_0x4ea68f['length'],0x0)?_0x4ea68f:null;}export function formatPlaywrightCliConsoleLogMessage(_0x525fc8,_0x4094a,_0x69e6bb){const _0x397f9d=_0x50bc,_0x18bfeb={'ChtwW':function(_0x506b34,_0x2c60d9,_0x11a7d6){return _0x506b34(_0x2c60d9,_0x11a7d6);}},_0x307ef5=_0x18bfeb[_0x397f9d(0x14c)](formatPlaywrightCliLog,_0x4094a,_0x69e6bb),_0x46f026=extractPlaywrightCliToolDescription(_0x525fc8);if(!_0x46f026)return _0x397f9d(0x11d)+_0x307ef5;if(process['env']['DEBUG'])return'[ranger-verification-agent]\x20'+_0x46f026+'\x20('+_0x307ef5+')';return _0x397f9d(0x10f)+_0x46f026;}export function buildVerifyFeatureCliDebugPrompt(_0x2de570,_0x54b351){const _0x2a545a=_0x50bc,_0x29b586={'hYCJx':function(_0x4e2c74,_0x3b2d01,_0x39f136){return _0x4e2c74(_0x3b2d01,_0x39f136);},'HGCsk':'00_mozilla-homepage.yml','UMhss':_0x2a545a(0x136),'DUKUR':function(_0x3d5164,_0x4deb1a,_0xe1265d){return _0x3d5164(_0x4deb1a,_0xe1265d);},'ozHbw':'02_learn-more.yml','aUhGz':_0x2a545a(0x12d)},_0x2a382d=_0x29b586['hYCJx'](buildCliArtifactPath,_0x54b351,_0x29b586['HGCsk']),_0x1ec84a=_0x29b586['hYCJx'](buildCliArtifactPath,_0x54b351,_0x29b586['UMhss']),_0xbfc33d=_0x29b586['DUKUR'](buildCliArtifactPath,_0x54b351,_0x29b586['ozHbw']),_0x4b7f45=buildCliArtifactPath(_0x54b351,_0x29b586[_0x2a545a(0xfb)]),_0x5d4fd4=quoteShellArg(_0x2a382d),_0x4d1d4a=quoteShellArg(_0x1ec84a),_0x135c4e=quoteShellArg(_0xbfc33d),_0x448051=quoteShellArg(_0x4b7f45);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x2de570+_0x2a545a(0x14b)+_0x2de570+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x2de570+_0x2a545a(0x115)+_0x2de570+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x54b351+_0x2a545a(0xfe)+_0x2de570+'\x20snapshot\x20--filename\x20'+_0x5d4fd4+_0x2a545a(0x148)+_0x2de570+_0x2a545a(0x116)+_0x4d1d4a+_0x2a545a(0xce)+_0x2de570+'\x20snapshot\x20--filename\x20'+_0x135c4e+_0x2a545a(0x112)+_0x2de570+'\x20screenshot\x20--filename\x20'+_0x448051+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x29ce7f){const _0x1848f6=_0x50bc,_0x53cd7c={'VOhEd':_0x1848f6(0xe4),'llbrM':'element','RkLhG':'01_initial.yml','Dxlld':function(_0x3faacb,_0x40dbda,_0x10c362){return _0x3faacb(_0x40dbda,_0x10c362);},'pQJKD':'key_03_success-state.png','dyNWf':function(_0x67d31c,_0x252993){return _0x67d31c(_0x252993);},'bjgRd':function(_0x98636e,_0x5bf442){return _0x98636e(_0x5bf442);},'FemPm':function(_0x1f914b,_0x327947){return _0x1f914b>_0x327947;},'TrKxH':_0x1848f6(0xea),'sIhLj':'key_04_success-state.png'},{checklistItem:_0xe0725b,itemFeedback:_0x167157,taskDescription:_0x1e239a,cliCommandPrefix:_0xeb5932,cliArtifactDir:_0x2e3a4a,isCdpMode:_0x48622f,url:_0x55a2e5,cdpEndpoint:_0x94e157,loginInstructions:_0x48aabe}=_0x29ce7f,_0x504fd5=buildCliArtifactPath(_0x2e3a4a,_0x53cd7c[_0x1848f6(0x140)]),_0x37b39c=_0x53cd7c[_0x1848f6(0x132)](buildCliArtifactPath,_0x2e3a4a,'02_state.yml'),_0x5aac45=buildCliArtifactPath(_0x2e3a4a,_0x53cd7c[_0x1848f6(0x11a)]),_0x1e994c=buildCliArtifactPath(_0x2e3a4a,_0x1848f6(0x103)),_0x35f7e4=_0x53cd7c['dyNWf'](quoteShellArg,_0x504fd5),_0x15a6b6=quoteShellArg(_0x37b39c),_0x15b08c=_0x53cd7c['bjgRd'](quoteShellArg,_0x5aac45),_0x124191=_0x53cd7c[_0x1848f6(0x11b)](quoteShellArg,_0x1e994c),_0x1b3c62=_0xe0725b['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0xe0725b['notes']:'';let _0xa849f7='';if(_0x167157&&_0x53cd7c['FemPm'](_0x167157[_0x1848f6(0x138)]['length'],0x0)){const _0xdb3db4=_0x167157[_0x1848f6(0x138)]['map'](_0x348464=>{const _0x2f0e5a=_0x1848f6,_0x3d8c24=new Date(_0x348464[_0x2f0e5a(0x102)])['toLocaleDateString'](_0x2f0e5a(0xef),{'month':_0x2f0e5a(0xda),'day':_0x2f0e5a(0xd3)}),_0x5523e4=_0x348464[_0x2f0e5a(0x12c)]||_0x348464['authorEmail']||_0x53cd7c['VOhEd'],_0xad2a06=_0x348464[_0x2f0e5a(0x131)]?_0x2f0e5a(0x13f)+(_0x348464['domRef']['selector'][_0x2f0e5a(0x105)]('\x20>\x20')['pop']()?.['split'](':')[0x0]||_0x53cd7c[_0x2f0e5a(0x12b)])+_0x2f0e5a(0x11c)+(_0x348464[_0x2f0e5a(0x131)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return _0x2f0e5a(0xf9)+_0x348464['id']+_0x2f0e5a(0xe7)+_0x5523e4+'**\x20('+_0x3d8c24+'):\x20\x22'+_0x348464[_0x2f0e5a(0x111)]+'\x22'+_0xad2a06;})['join']('\x0a');_0xa849f7='\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'+_0xdb3db4;}const _0x2e2abb=_0x167157?.['canonicalFlow']?_0x1848f6(0xe2)+_0x167157['canonicalFlow']:'',_0xc232aa=_0x48622f?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x94e157+'.\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'+_0x55a2e5+'\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',_0x135015=_0x55a2e5?_0x53cd7c[_0x1848f6(0xcd)](quoteShellArg,_0x55a2e5):'',_0x2ae148=_0x48622f?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0xeb5932+'\x20open`,\x20then\x20`'+_0xeb5932+_0x1848f6(0x127)+_0xeb5932+_0x1848f6(0x146)+_0x2e3a4a+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0xeb5932+_0x1848f6(0x113)+_0x35f7e4+'`\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`'+_0xeb5932+_0x1848f6(0x116)+_0x124191+_0x1848f6(0x118)+_0xeb5932+_0x1848f6(0x100):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0xeb5932+'\x20open\x20'+_0x135015+'`,\x20then\x20`'+_0xeb5932+'\x20tracing-start`,\x20then\x20`'+_0xeb5932+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x2e3a4a+_0x1848f6(0xd5)+_0xeb5932+'\x20snapshot\x20--filename\x20'+_0x35f7e4+'`\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`'+_0xeb5932+'\x20screenshot\x20--filename\x20'+_0x124191+_0x1848f6(0x141)+_0xeb5932+_0x1848f6(0xe6),_0x278106=_0x48622f?_0x1848f6(0x152):'\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-\x20Login/sign-in/auth\x20pages\x20when\x20no\x20Authentication\x20section\x20is\x20present\x20in\x20this\x20prompt\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.',_0x1e9ee0=_0x48aabe?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x48aabe+_0x1848f6(0x117):'';return _0x1848f6(0xf7)+_0xe0725b[_0x1848f6(0x151)]+_0x1b3c62+_0xa849f7+_0x2e2abb+_0x1848f6(0xff)+_0x1e239a+'\x0a\x0a'+_0xc232aa+_0x1e9ee0+'\x0a\x0a'+_0x2ae148+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0xeb5932+_0x1848f6(0x137)+_0x2e3a4a+_0x1848f6(0x14d)+_0x15a6b6+_0x1848f6(0x120)+_0x15b08c+_0x1848f6(0xd8)+_0x2e3a4a+_0x1848f6(0x128)+_0x1e994c+_0x1848f6(0x14a)+_0x53cd7c[_0x1848f6(0x132)](buildCliArtifactPath,_0x2e3a4a,_0x1848f6(0xd1))+_0x1848f6(0x14a)+buildCliArtifactPath(_0x2e3a4a,_0x53cd7c[_0x1848f6(0xdd)])+_0x1848f6(0xcc)+_0x53cd7c['Dxlld'](buildCliArtifactPath,_0x2e3a4a,_0x53cd7c['sIhLj'])+_0x1848f6(0x119)+_0x278106+_0x1848f6(0xdc);}export function summarizeVerifyFeatureCliCommandAvailability(_0x3f13d9){const _0x3f2be1=[..._0x3f13d9['keys']()]['sort']();let _0xc1d0a7=0x0;for(const _0x1fffc0 of _0x3f13d9['values']()){_0xc1d0a7+=_0x1fffc0;}return{'cliCommandCount':_0xc1d0a7,'cliCommandsSeen':_0x3f2be1,'noCliCommandsCalled':_0xc1d0a7===0x0};}export function createVerifyFeatureCliHooks(_0x224b45){const _0x30d599=_0x50bc,_0x140a2f={'NjvlN':'Bash','bODkm':function(_0x27579f,_0x5d6053){return _0x27579f(_0x5d6053);},'uZehJ':'tool_call','ZJmba':_0x30d599(0x125),'cBlko':function(_0x363d7e,_0x3c5fc1){return _0x363d7e!==_0x3c5fc1;},'JDQdW':_0x30d599(0xcf),'EQUdh':'tool_failure'},_0x819c26=new Map(),_0x481302=async _0x5a80e8=>{const _0x4d50fe=_0x30d599;if(_0x5a80e8['hook_event_name']!==_0x4d50fe(0x10a))return{};const _0x38ab9d=_0x5a80e8;if(_0x38ab9d[_0x4d50fe(0x106)]!==_0x140a2f['NjvlN'])return{};const _0x3e2487=_0x38ab9d[_0x4d50fe(0x11f)],_0x266403=_0x140a2f[_0x4d50fe(0xd0)](extractBashCommand,_0x3e2487);if(!_0x266403)return{};const _0x53a4a6=parsePlaywrightCliCommand(_0x266403);if(!_0x53a4a6)return{};return _0x819c26[_0x4d50fe(0xeb)](_0x53a4a6,(_0x819c26['get'](_0x53a4a6)||0x0)+0x1),_0x224b45['trackPhaseStart'](_0x140a2f[_0x4d50fe(0x10b)],{'transport':_0x140a2f['ZJmba'],'toolName':_0x53a4a6}),_0x224b45[_0x4d50fe(0x133)](_0x4d50fe(0x114),{'transport':'playwright-cli','toolName':_0x53a4a6,'bashCommandPreview':truncatePreview(_0x266403)}),_0x53a4a6!==_0x4d50fe(0x12e)&&console[_0x4d50fe(0xd9)](formatPlaywrightCliConsoleLogMessage(_0x3e2487,_0x266403,_0x53a4a6)),{};},_0x10f12e=async _0x34a7e0=>{const _0x312336=_0x30d599;if(_0x140a2f[_0x312336(0x123)](_0x34a7e0[_0x312336(0xd2)],_0x140a2f['JDQdW']))return{};const _0x30a1b1=_0x34a7e0;if(_0x30a1b1[_0x312336(0x106)]!==_0x312336(0xec))return{};return await _0x224b45[_0x312336(0xe5)](_0x140a2f[_0x312336(0x147)],_0x30a1b1['error'],{'transport':_0x140a2f['ZJmba'],'toolName':_0x140a2f[_0x312336(0x13d)]}),{};};return{'postToolUseHook':_0x481302,'postToolUseFailureHook':_0x10f12e,'commandCounts':_0x819c26};}async function runPlaywrightCliLifecycleCommand(_0x526c6e){const _0x3ab76b=_0x50bc,_0x1449da={'HQJMM':function(_0x384f5c,_0x58729a){return _0x384f5c(_0x58729a);},'ioSaC':function(_0x22c7b5,_0x25966f){return _0x22c7b5??_0x25966f;},'qJxiZ':function(_0x32e6c0,_0x3ca22d,_0x30b33f){return _0x32e6c0(_0x3ca22d,_0x30b33f);}},{sessionId:_0x1acf6f,configPath:_0x2b5029,commandArgs:_0x5c68b0,env:_0x90b0ff,telemetry:_0x2f53d4,phase:_0x54917c,metadata:_0x3eba4a,timeoutMs:_0x2862a5}=_0x526c6e;_0x2f53d4['trackPhaseStart'](_0x54917c,_0x3eba4a);try{const _0x531f41=await _0x1449da[_0x3ab76b(0x13b)](runPlaywrightCliCommand,{'sessionId':_0x1acf6f,'configPath':_0x2b5029,'commandArgs':_0x5c68b0,'cwd':process[_0x3ab76b(0xe9)](),'env':_0x90b0ff,'timeoutMs':_0x1449da[_0x3ab76b(0xfa)](_0x2862a5,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x2f53d4[_0x3ab76b(0x133)](_0x54917c,{..._0x3eba4a,'subcommand':_0x531f41[_0x3ab76b(0x13a)][_0x3ab76b(0xde)],'stdoutPreview':_0x1449da[_0x3ab76b(0xf6)](truncatePreview,_0x531f41['stdout'],0x7d0),'stderrPreview':_0x1449da['qJxiZ'](truncatePreview,_0x531f41['stderr'],0x7d0)});}catch(_0x36d913){await _0x2f53d4[_0x3ab76b(0xe5)](_0x54917c,_0x36d913,_0x3eba4a);throw _0x36d913;}}export async function finalizeVerifyFeatureCliSession(_0x1a1249){const _0x46b87a=_0x50bc,_0x41909a={'LyIMq':_0x46b87a(0x149),'IRVUP':function(_0x188d53,_0x3e9fef,_0x37eda6){return _0x188d53(_0x3e9fef,_0x37eda6);},'TDakC':'session-recording.webm','KqPIB':'playwright_cli_close'},{telemetry:_0x4dfef3,sessionId:_0x52c666,configPath:_0x15236d,cliArtifactDir:_0x2504a7,env:_0x28d892,transportMetadata:_0xc3079a}=_0x1a1249,_0x2c512c=[{'phase':_0x46b87a(0xe8),'commandArgs':[_0x41909a['LyIMq']]},{'phase':'playwright_cli_video_stop','commandArgs':['video-stop',_0x46b87a(0x124)+_0x41909a['IRVUP'](buildCliArtifactPath,_0x2504a7,_0x41909a[_0x46b87a(0xf0)])]},{'phase':_0x41909a['KqPIB'],'commandArgs':['close']}];for(const _0x2a70cb of _0x2c512c){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x52c666,'configPath':_0x15236d,'commandArgs':[..._0x2a70cb[_0x46b87a(0x153)]],'env':_0x28d892,'telemetry':_0x4dfef3,'phase':_0x2a70cb[_0x46b87a(0x107)],'metadata':_0xc3079a});}catch{}}}function _0x50bc(_0x5e62a1,_0x3b98f3){_0x5e62a1=_0x5e62a1-0xc8;const _0x2932c5=_0x2932();let _0x50bcd2=_0x2932c5[_0x5e62a1];return _0x50bcd2;}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x480a1c){const _0x5ed382=_0x50bc,_0x26abe8={'XJiyg':'trace.trace.zip'},_0x469083=[_0x5ed382(0xfc),_0x26abe8[_0x5ed382(0xe1)]];for(const _0x26188b of _0x469083){const _0x31f8e7=join(_0x480a1c,_0x26188b);try{return{'buffer':await readFile(_0x31f8e7),'source':_0x31f8e7};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x3120ec){const _0x1d1b4a=_0x50bc,_0x4fafee={'yeOfG':function(_0x223a5f,_0xb60d5f,_0x36800e){return _0x223a5f(_0xb60d5f,_0x36800e);},'jqLyz':function(_0x5a9484,_0x27cdd1){return _0x5a9484===_0x27cdd1;}},{cwd:_0x4bee08,cliArtifactDir:_0x2ae243,startTime:_0x53acef}=_0x3120ec,_0x52d590=[];await mkdir(_0x2ae243,{'recursive':!![]});const _0x43f21a=await readdir(_0x4bee08,{'withFileTypes':!![]});for(const _0x2dec05 of _0x43f21a){if(!_0x2dec05[_0x1d1b4a(0x10e)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x1d1b4a(0xf5)](_0x2dec05[_0x1d1b4a(0x135)]))continue;const _0x1044db=_0x4fafee['yeOfG'](join,_0x4bee08,_0x2dec05['name']),_0xbcd5e4=await stat(_0x1044db);if(_0xbcd5e4[_0x1d1b4a(0x129)]+0x7d0<_0x53acef)continue;const _0x4044f2=buildCliArtifactPath(_0x2ae243,_0x2dec05[_0x1d1b4a(0x135)]);if(_0x4fafee['jqLyz'](_0x1044db,_0x4044f2))continue;await rename(_0x1044db,_0x4044f2),_0x52d590['push'](_0x2dec05[_0x1d1b4a(0x135)]);}return _0x52d590['sort']();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x2ddea3=_0x31f3;(function(_0x29e3f4,_0x4b65a2){const _0x19b2bc=_0x31f3,_0x3d89f8=_0x29e3f4();while(!![]){try{const _0x3c237c=parseInt(_0x19b2bc(0xe1))/0x1*(parseInt(_0x19b2bc(0x16b))/0x2)+parseInt(_0x19b2bc(0x128))/0x3*(parseInt(_0x19b2bc(0xbf))/0x4)+parseInt(_0x19b2bc(0xa4))/0x5*(-parseInt(_0x19b2bc(0x10e))/0x6)+-parseInt(_0x19b2bc(0x94))/0x7*(-parseInt(_0x19b2bc(0xee))/0x8)+-parseInt(_0x19b2bc(0xfc))/0x9+parseInt(_0x19b2bc(0x90))/0xa+-parseInt(_0x19b2bc(0xcf))/0xb;if(_0x3c237c===_0x4b65a2)break;else _0x3d89f8['push'](_0x3d89f8['shift']());}catch(_0x951a1c){_0x3d89f8['push'](_0x3d89f8['shift']());}}}(_0x483e,0x7620f));import{execFile}from'child_process';import{mkdir,readdir,readFile,rename,rm,stat,writeFile}from'fs/promises';import{homedir}from'os';function _0x483e(){const _0x4a75ac=['PreToolUse','\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\x20in\x20addressedCommentIds.\x0a\x0a','rTMkZ','stopScreencast','args','captureTraceSample','execute','key_03_success-state.png','):\x20\x22','tool_name','SBepb','pop','5991732aygrzh','frame-','unaddressedComments','`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','stopTraceSampling','tracing','screenshot','PostToolUse','`.\x0a7.\x20Optimize\x20for\x20few\x20browser\x20round\x20trips.\x20Each\x20Nova\x20CLI\x20call\x20has\x20high\x20latency.\x0a8.\x20Use\x203-5\x20high-level\x20`execute`\x20commands\x20total.\x20Each\x20`execute`\x20should\x20contain\x202-5\x20concrete\x20browser\x20steps\x20and\x20should\x20drive\x20to\x20the\x20next\x20milestone\x20page.\x0a9.\x20Do\x20not\x20split\x20a\x20simple\x20navigation\x20into\x20separate\x20commands\x20like\x20\x22open\x20menu\x22,\x20then\x20\x22click\x20link\x22,\x20then\x20\x22screenshot\x22.\x20Batch\x20those\x20into\x20one\x20`execute`\x20when\x20the\x20target\x20is\x20clear.\x0a10.\x20Do\x20not\x20use\x20`ask`\x20unless\x20you\x20are\x20genuinely\x20stuck\x20or\x20need\x20to\x20disambiguate\x20visible\x20page\x20content.\x20Prefer\x20reading\x20the\x20output\x20from\x20`execute`,\x20`snapshot`,\x20and\x20`verify`.\x0a11.\x20Use\x20`verify`\x20only\x20at\x20milestone\x20pages\x20that\x20map\x20directly\x20to\x20scenario\x20requirements.\x20Do\x20not\x20verify\x20after\x20every\x20click.\x0a12.\x20Take\x20screenshots\x20for\x20each\x20scenario\x20milestone\x20so\x20every\x20verified\x20step\x20has\x20reviewable\x20image\x20evidence,\x20including\x20the\x20final\x20state.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page.\x0a13.\x20After\x20the\x20required\x20initial\x20snapshot,\x20do\x20not\x20take\x20separate\x20milestone\x20snapshots\x20unless\x20you\x20cannot\x20understand\x20the\x20page\x20from\x20the\x20`execute`,\x20`verify`,\x20and\x20screenshot\x20outputs.\x0a14.\x20Mark\x20the\x20most\x20important\x20proof\x20screenshot\x20with\x20`key_`,\x20for\x20example\x20`','context','sort','`\x0a-\x20`','nova-artifacts.zip','getFrameDir','json','\x20>\x20','goto','EeAak','1181604acdfFa','description','verify','params','session\x20create','FdYRF','stop','ms-playwright','nova_act_artifact_recording_stop','nova_act_session_report','wqKSD','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','kPnzg','01_initial-state.png','nova_act_session_close','traceSampleCount','mtimeMs','CDnTX','isFile','jpeg','\x0a\x0a##\x20Additional\x20Notes\x0a','ZggGf','verify\x20page\x20condition','commandArgs','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','MekTF','320232FeDEkl','NIOha','03_final-state.png','wNRVC','Bash','browser_pid','nova_act_final_screenshot','--report','nova_act_final_snapshot','set','short','traceSampleTimer','ACJKR','.act_cli','session-recording.webm','notes','textContent','match','invocation','canonicalFlow','sessionId','-pix_fmt','mrxph','Koxkg','wait-for','ask','push','novaOptions','readSessionMetadataWithRetry','keys','You\x20are\x20testing\x20Nova\x20Act\x20browser\x20automation.\x20Your\x20task\x20is\x20simple.\x0a\x0aUse\x20Bash\x20and\x20Nova\x20Act\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','OSTeD','tklXx','Caches','startsWith','rTUBF','VnwFf','nOxPZ','Mmpth','Library','Xipoh','tracingStarted','join','navigate\x20browser','send','UUIPs','HRkkU','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','slice','test','export\x20Nova\x20session','\x20snapshot\x20--output\x20','element','xjnbq','frameSession','trim','authorEmail','nova-report','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','startScreencast','mysDo','browser','frameCount','Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','EBOhH','IeSaL','snapshot','2WZZTVc','qHYtw','Page.startScreencast','01_initial.yml','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','2570450ezPGGJ','hook_event_name','name','tagName','4879798PcbssN','traceSampleInFlight','zTjEw','transportMetadata','ipgCo','\x20screenshot\x20--output\x20','body','from','Page.screencastFrame','phase','nzMoU','screencastStarted','PostToolUseFailure','final-state.yaml','-c:v','pnHDj','10wbaUqJ','Reviewer','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','OvUCV','trace.zip','nclFb','startTraceSampling','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','frameWrites','finally','IYRHz','numeric','yuv420p','kjPZV','tPOyS','telemetry','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','nova_act_session_export','padStart','.cache','TzPMs','tLJed','nova-act-cli','trackPhaseEnd','ZAEPO','bBaEf','cliArtifactDir','4VJAXLy','startAttempted','capture\x20snapshot\x20`','trackPhaseError','CSEex','nova_act_artifact_recording','nBdEA','tVSIl','--output','values','newCDPSession','filter','ukUIm','map','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','LQISO','2423575RUKdXn','Page.stopScreencast','xSmdb','trackPhaseStart','nova-user-data/*','ask\x20page\x20question','GhqUL','xEYGP','error','replace','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x27s\x20origin.\x0a-\x20Do\x20not\x20navigate\x20to\x20any\x20different\x20protocol,\x20host,\x20or\x20port.\x0a-\x20If\x20the\x20browser\x20leaves\x20this\x20origin,\x20navigate\x20back\x20once.\x20If\x20you\x20cannot\x20recover,\x20return\x20evaluation\x20\x22blocked\x22.\x0a','domRef','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','dSyIv','00_initial-state.yml','YEStU','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','702893gJGjYj','fnUyE','catch','--output-dir','subcommand','ffmpeg','tool_input','GrRvx','nova-session-export.json','\x20(on\x20element:\x20<','parse','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','pHGsh','8DvyYWY','lSKgh'];_0x483e=function(){return _0x4a75ac;};return _0x483e();}import{basename,join}from'path';import{promisify}from'util';import{chromium}from'playwright';import{buildNovaActCliInvocation,buildNovaActCliSharedOptionsSuffix,extractNovaActLogDir,parseNovaActCliCommand,previewNovaActCliCommand,runNovaActCliCommand}from'./utils/novaActCli.js';import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';const NOVA_ACT_CLI_COMMAND_TIMEOUT_MS=0x1d4c0,NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS=0x3a98,NOVA_ARTIFACT_METADATA_WAIT_MS=0x1388,NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS=0x1388,VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|final-state\.ya?ml|nova-session-export\.json)$/i,NOVA_ACT_ALLOWED_AGENT_COMMANDS=new Set(['session\x20create',_0x2ddea3(0xf6),_0x2ddea3(0x110),'ask',_0x2ddea3(0x10c),_0x2ddea3(0x140),_0x2ddea3(0x16a),_0x2ddea3(0x102)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x1704e6,_0x4e0454){return join(_0x1704e6,_0x4e0454);}export class NovaActArtifactRecorder{['params'];[_0x2ddea3(0x165)]=null;[_0x2ddea3(0x105)]=null;[_0x2ddea3(0x15e)]=null;[_0x2ddea3(0xac)]=[];[_0x2ddea3(0x166)]=0x0;['traceSampleCount']=0x0;[_0x2ddea3(0x133)]=null;[_0x2ddea3(0x95)]=null;[_0x2ddea3(0x151)]=![];[_0x2ddea3(0x9f)]=![];[_0x2ddea3(0xc0)]=![];['stopped']=![];constructor(_0x3a4f76){this['params']=_0x3a4f76;}async['start'](){const _0x5b7430=_0x2ddea3,_0x5bd413={'rTMkZ':'Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','UUIPs':'nova_act_artifact_recording'};if(this[_0x5b7430(0xc0)])return;this[_0x5b7430(0xc0)]=!![];const _0x482c73=await this[_0x5b7430(0x144)](),_0x23e60e=_0x482c73['cdp_endpoint'];if(!_0x23e60e)throw new Error(_0x5b7430(0xcd)+this[_0x5b7430(0x111)][_0x5b7430(0x143)]['sessionId']);await mkdir(this[_0x5b7430(0x111)][_0x5b7430(0xbe)],{'recursive':!![]}),this['browser']=await chromium['connectOverCDP'](_0x23e60e,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this['context']=this[_0x5b7430(0x165)]['contexts']()[0x0]??null;if(!this['context'])throw new Error(_0x5bd413[_0x5b7430(0xf2)]);await this['context']['tracing']['start']({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x5b7430(0xaa)](),await this['startScreencast'](),this['params']['telemetry']['trackPhaseStart'](_0x5bd413['UUIPs'],{...this[_0x5b7430(0x111)][_0x5b7430(0x97)],'cdpEndpoint':_0x23e60e,'browserPid':_0x482c73[_0x5b7430(0x12d)],'sessionState':_0x482c73['state']}),this['params']['telemetry'][_0x5b7430(0xbb)](_0x5bd413[_0x5b7430(0x155)],{...this[_0x5b7430(0x111)]['transportMetadata'],'tracingStarted':this[_0x5b7430(0x151)],'screencastStarted':this['screencastStarted']});}async[_0x2ddea3(0x114)](){const _0x3c2d57=_0x2ddea3,_0x3ed632={'zTjEw':_0x3c2d57(0x116)};if(this['stopped'])return;this['stopped']=!![];const _0x4ccd0e={...this['params']['transportMetadata'],'frameCount':this[_0x3c2d57(0x166)],'traceSampleCount':this[_0x3c2d57(0x11d)],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x3c2d57(0x9f)]};this['params'][_0x3c2d57(0xb3)]['trackPhaseStart'](_0x3ed632['zTjEw'],_0x4ccd0e);try{await this[_0x3c2d57(0x100)](),await this['captureTraceSample'](),await this['stopScreencast'](),await Promise['allSettled'](this[_0x3c2d57(0xac)]);this['context']&&this['tracingStarted']&&await this['context'][_0x3c2d57(0x101)]['stop']({'path':buildCliArtifactPath(this['params']['cliArtifactDir'],'trace.zip')});const _0x5c5b29=await this['encodeScreencastVideo']();this['params'][_0x3c2d57(0xb3)][_0x3c2d57(0xbb)](_0x3ed632[_0x3c2d57(0x96)],{..._0x4ccd0e,'videoPath':_0x5c5b29});}catch(_0x57459a){await this['params'][_0x3c2d57(0xb3)][_0x3c2d57(0xc2)](_0x3c2d57(0x116),_0x57459a,_0x4ccd0e);}finally{await this[_0x3c2d57(0x165)]?.['close']()[_0x3c2d57(0xe3)](()=>undefined),this[_0x3c2d57(0x165)]=null,this[_0x3c2d57(0x105)]=null,this[_0x3c2d57(0x15e)]=null;}}async[_0x2ddea3(0x144)](){const _0xaa9e62=_0x2ddea3,_0x140def={'cOXOU':_0xaa9e62(0x135),'LbIYM':_0xaa9e62(0x165),'FOYJQ':function(_0x1557e4,_0x2fa806,_0x35a881){return _0x1557e4(_0x2fa806,_0x35a881);},'afkiC':'utf-8','YaaiR':function(_0x162892,_0x1bd8ca){return _0x162892(_0x1bd8ca);},'YEStU':function(_0x583f9d,_0x3f73d8){return _0x583f9d<_0x3f73d8;},'nBdEA':function(_0x5da55b,_0x275932){return _0x5da55b instanceof _0x275932;}},_0x286d08=join(homedir(),_0x140def['cOXOU'],_0x140def['LbIYM'],'sessions',this['params'][_0xaa9e62(0x143)][_0xaa9e62(0x13c)]+'.json'),_0x1a4b2e=Date['now']();let _0x205aa8;do{try{const _0x4c3664=JSON[_0xaa9e62(0xeb)](await _0x140def['FOYJQ'](readFile,_0x286d08,_0x140def['afkiC']));if(_0x4c3664['cdp_endpoint'])return _0x4c3664;_0x205aa8=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0x286d08);}catch(_0x376efa){_0x205aa8=_0x376efa;}await _0x140def['YaaiR'](delay,0x64);}while(_0x140def[_0xaa9e62(0xdf)](Date['now']()-_0x1a4b2e,NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x140def[_0xaa9e62(0xc5)](_0x205aa8,Error))throw _0x205aa8;throw new Error(_0xaa9e62(0x8f)+_0x286d08);}async[_0x2ddea3(0x163)](){const _0x12712e=_0x2ddea3,_0x58af32={'CDnTX':function(_0x3ee3e8,_0x14b5f0,_0x19e573){return _0x3ee3e8(_0x14b5f0,_0x19e573);}};if(!this['context'])return;const _0x566488=this[_0x12712e(0x105)]['pages']()[0x0];if(!_0x566488)return;const _0x5d5745=this[_0x12712e(0x109)]();await mkdir(_0x5d5745,{'recursive':!![]});const _0x109bd7=await this[_0x12712e(0x105)][_0x12712e(0xc9)](_0x566488);this[_0x12712e(0x15e)]=_0x109bd7,_0x109bd7['on'](_0x12712e(0x9c),_0x46c773=>{const _0x1f537c=_0x12712e,_0x4f92ca=++this['frameCount'],_0x57acab=join(_0x5d5745,_0x1f537c(0xfd)+String(_0x4f92ca)[_0x1f537c(0xb6)](0x6,'0')+'.jpg'),_0x3abebb=_0x58af32[_0x1f537c(0x11f)](writeFile,_0x57acab,Buffer[_0x1f537c(0x9b)](_0x46c773['data'],'base64'))['catch'](()=>undefined)['finally'](()=>_0x109bd7[_0x1f537c(0x154)]('Page.screencastFrameAck',{'sessionId':_0x46c773[_0x1f537c(0x13c)]}))['then'](()=>undefined)['catch'](()=>undefined);this['frameWrites']['push'](_0x3abebb);}),await _0x109bd7[_0x12712e(0x154)](_0x12712e(0x16d),{'format':_0x12712e(0x121),'quality':0x4b,'everyNthFrame':0x6}),this['screencastStarted']=!![];}async[_0x2ddea3(0xf3)](){const _0x5441f3=_0x2ddea3,_0x202495={'Koxkg':_0x5441f3(0xd0)};if(!this['frameSession']||!this['screencastStarted'])return;await this[_0x5441f3(0x15e)]['send'](_0x202495[_0x5441f3(0x13f)])['catch'](()=>undefined);}['startTraceSampling'](){this['queueTraceSample'](),this['traceSampleTimer']=setInterval(()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}['queueTraceSample'](){const _0x23338b=_0x2ddea3;if(this[_0x23338b(0x95)])return;this['traceSampleInFlight']=this['captureTraceSample']()[_0x23338b(0xad)](()=>{this['traceSampleInFlight']=null;});}async['stopTraceSampling'](){const _0x541291=_0x2ddea3,_0xe1cfef={'Fiqke':function(_0x4a0596,_0x20271b){return _0x4a0596(_0x20271b);}};this['traceSampleTimer']&&(_0xe1cfef['Fiqke'](clearInterval,this['traceSampleTimer']),this[_0x541291(0x133)]=null),await this[_0x541291(0x95)]?.[_0x541291(0xe3)](()=>undefined);}async[_0x2ddea3(0xf5)](){const _0xfce0b7=_0x2ddea3,_0x4f41c4=this[_0xfce0b7(0x105)]?.['pages']()[0x0];if(!_0x4f41c4)return;try{await _0x4f41c4['locator'](_0xfce0b7(0x9a))['evaluate'](_0xfe4145=>_0xfe4145[_0xfce0b7(0x93)],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async['encodeScreencastVideo'](){const _0x39204b=_0x2ddea3,_0x598cbb={'bBaEf':function(_0x3fbb92,_0x5f167a){return _0x3fbb92<_0x5f167a;},'qHYtw':function(_0x3fd855){return _0x3fd855();},'erkGq':function(_0x3f818f,_0x3860bb,_0x346369){return _0x3f818f(_0x3860bb,_0x346369);},'pnHDj':function(_0x47c710,_0x541eac,_0x1cac2b){return _0x47c710(_0x541eac,_0x1cac2b);},'OSTeD':_0x39204b(0x136),'GhqUL':'-hide_banner','nclFb':'-framerate','iNxEZ':'libvpx-vp9','igMhw':_0x39204b(0xb0)};if(_0x598cbb[_0x39204b(0xbd)](this[_0x39204b(0x166)],0x2))return null;const _0x320e44=await _0x598cbb[_0x39204b(0x16c)](resolveFfmpegPath);if(!_0x320e44)return null;const _0x44cedd=_0x598cbb['erkGq'](join,this[_0x39204b(0x111)][_0x39204b(0xbe)],'videos');await mkdir(_0x44cedd,{'recursive':!![]});const _0x1161f6=_0x598cbb[_0x39204b(0xa3)](join,_0x44cedd,_0x598cbb[_0x39204b(0x147)]);return await execFileAsync(_0x320e44,['-y',_0x598cbb[_0x39204b(0xd5)],'-loglevel',_0x39204b(0xd7),_0x598cbb[_0x39204b(0xa9)],'10','-i',_0x598cbb['erkGq'](join,this[_0x39204b(0x109)](),'frame-%06d.jpg'),'-vf','scale=trunc(iw/2)*2:trunc(ih/2)*2',_0x39204b(0xa2),_0x598cbb['iNxEZ'],_0x39204b(0x13d),_0x598cbb['igMhw'],_0x1161f6]),_0x1161f6;}['getFrameDir'](){const _0x5df33d=_0x2ddea3,_0x27ef83={'xEYGP':function(_0x131133,_0x32eb6f,_0x409ff8){return _0x131133(_0x32eb6f,_0x409ff8);}};return _0x27ef83[_0x5df33d(0xd6)](join,this[_0x5df33d(0x111)]['cliArtifactDir'],'nova-video-frames');}}async function delay(_0x3d6a70){await new Promise(_0x536113=>setTimeout(_0x536113,_0x3d6a70));}function _0x31f3(_0x123915,_0x164418){_0x123915=_0x123915-0x8e;const _0x483ea2=_0x483e();let _0x31f347=_0x483ea2[_0x123915];return _0x31f347;}async function resolveFfmpegPath(){const _0x51586f=_0x2ddea3,_0x38de15={'mrxph':_0x51586f(0xe6),'bjlOD':function(_0xe121ff,_0x216f3d,_0x35811e,_0x421198,_0x41dbd7){return _0xe121ff(_0x216f3d,_0x35811e,_0x421198,_0x41dbd7);},'htqMf':_0x51586f(0x149),'xjnbq':_0x51586f(0xb7),'vCPUx':_0x51586f(0x115)};if(await canRunFfmpeg(_0x38de15['mrxph']))return _0x38de15[_0x51586f(0x13e)];const _0x1890f9=[_0x38de15['bjlOD'](join,homedir(),_0x51586f(0x14f),_0x38de15['htqMf'],_0x51586f(0x115)),join(homedir(),_0x38de15[_0x51586f(0x15d)],_0x38de15['vCPUx'])];for(const _0x5c0646 of _0x1890f9){try{const _0x391f4b=await readdir(_0x5c0646),_0x28ad01=_0x391f4b[_0x51586f(0xca)](_0x19b6b8=>_0x19b6b8[_0x51586f(0x14a)]('ffmpeg-'))['sort']()['reverse']()['flatMap'](_0x5cd2fc=>[join(_0x5c0646,_0x5cd2fc,'ffmpeg-mac'),join(_0x5c0646,_0x5cd2fc,'ffmpeg-linux'),join(_0x5c0646,_0x5cd2fc,'ffmpeg.exe')]);for(const _0x3e9432 of _0x28ad01){if(await canRunFfmpeg(_0x3e9432))return _0x3e9432;}}catch{}}return null;}async function canRunFfmpeg(_0x48b959){const _0x35d7ff=_0x2ddea3,_0x2ec9ce={'TzPMs':function(_0x3ba786,_0xc1ff75,_0x5d1b85){return _0x3ba786(_0xc1ff75,_0x5d1b85);}};try{return await _0x2ec9ce[_0x35d7ff(0xb8)](execFileAsync,_0x48b959,['-version']),!![];}catch{return![];}}function toStepDisplayName(_0x342a57){const _0x10fa5c=_0x2ddea3,_0x3950eb={'ipgCo':function(_0x441289,_0x47a9e8){return _0x441289(_0x47a9e8);}},_0x26d7a3=_0x3950eb[_0x10fa5c(0x98)](basename,_0x342a57)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x10fa5c(0xd8)](/^\d+_/,'')[_0x10fa5c(0xd8)](/-/g,'\x20');return{'name':_0x26d7a3,'isKeyStep':/^key_/i['test'](basename(_0x342a57))};}function extractShellValue(_0x1364cd){if(!_0x1364cd)return null;return _0x1364cd[0x1]??_0x1364cd[0x2]??_0x1364cd[0x3]??null;}function extractOutputOption(_0xef3ab1){const _0xa05b11=_0x2ddea3,_0x49daf7={'ZggGf':function(_0x4c27d5,_0x44b053){return _0x4c27d5(_0x44b053);}};return _0x49daf7[_0xa05b11(0x123)](extractShellValue,_0xef3ab1[_0xa05b11(0x139)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x17c25a,_0x22eae5){const _0xac81f3=_0x2ddea3,_0x479abf={'pHGsh':'session\x20create','lVkoQ':'create\x20Nova\x20browser\x20session','dObgX':'execute\x20Nova\x20browser\x20action','OvUCV':'verify','MNbNd':_0xac81f3(0x141),'mysDo':_0xac81f3(0xd4),'yAcmW':_0xac81f3(0x10c),'tEGOt':_0xac81f3(0x153),'COhuB':_0xac81f3(0x16a),'GAsHS':function(_0xccd805,_0x22590f){return _0xccd805(_0x22590f);},'tLJed':function(_0x8ed239,_0x5ecb86){return _0x8ed239(_0x5ecb86);},'kjPZV':_0xac81f3(0x102),'jLfHn':'capture\x20screenshot','tPOyS':'session\x20export'};switch(_0x22eae5){case _0x479abf[_0xac81f3(0xed)]:return _0x479abf['lVkoQ'];case _0xac81f3(0xf6):return _0x479abf['dObgX'];case _0x479abf[_0xac81f3(0xa7)]:return _0xac81f3(0x124);case _0x479abf['MNbNd']:return _0x479abf[_0xac81f3(0x164)];case _0x479abf['yAcmW']:return _0x479abf['tEGOt'];case _0xac81f3(0x140):return'wait\x20for\x20page\x20condition';case _0x479abf['COhuB']:{const _0x18e540=_0x479abf['GAsHS'](extractOutputOption,_0x17c25a);if(!_0x18e540)return'capture\x20snapshot';const {name:_0x19c07e}=_0x479abf[_0xac81f3(0xb9)](toStepDisplayName,_0x18e540);return _0xac81f3(0xc1)+_0x19c07e+'`';}case _0x479abf[_0xac81f3(0xb1)]:{const _0x7e251c=_0x479abf['tLJed'](extractOutputOption,_0x17c25a);if(!_0x7e251c)return _0x479abf['jLfHn'];const {name:_0x1f42a0,isKeyStep:_0x3226c3}=toStepDisplayName(_0x7e251c);return _0x3226c3?'capture\x20key\x20step\x20`'+_0x1f42a0+'`':'capture\x20step\x20`'+_0x1f42a0+'`';}case _0x479abf[_0xac81f3(0xb2)]:return _0xac81f3(0x15a);default:return _0x22eae5;}}function getNovaActCliCommandBlockReason(_0x4434bb){const _0xf47820=_0x2ddea3,_0x19ee6d={'vWWiK':function(_0x31de84,_0x2e8dc9){return _0x31de84===_0x2e8dc9;},'fnUyE':'Evaluate\x20visited-page\x20aggregate\x20requirements\x20from\x20the\x20collected\x20URLs,\x20titles,\x20headings,\x20verify\x20results,\x20and\x20screenshots.\x20Do\x20not\x20run\x20another\x20browser\x20command\x20to\x20re-check\x20pages\x20already\x20visited.'},_0x423d33=parseNovaActCliCommand(_0x4434bb);if(!_0x423d33)return _0xf47820(0x167);if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS['has'](_0x423d33))return'Nova\x20command\x20`'+_0x423d33+_0xf47820(0xb4);if(_0x19ee6d['vWWiK'](_0x423d33,_0xf47820(0x110))&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i[_0xf47820(0x159)](_0x4434bb))return _0x19ee6d[_0xf47820(0xe2)];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0xf47820(0x159)](_0x4434bb))return _0xf47820(0x119);return null;}function buildFeedbackSection(_0x3f6d37){const _0x5a0dd2=_0x2ddea3,_0x4eae41={'NIOha':_0x5a0dd2(0x10b),'IYRHz':_0x5a0dd2(0x15c),'Uukwk':function(_0x52bc16,_0x5ec3d0){return _0x52bc16===_0x5ec3d0;}};if(!_0x3f6d37||_0x4eae41['Uukwk'](_0x3f6d37[_0x5a0dd2(0xfe)]['length'],0x0))return'';const _0x1f4ec7=_0x3f6d37['unaddressedComments'][_0x5a0dd2(0xcc)](_0x545f9a=>{const _0x1ded90=_0x5a0dd2,_0x50f4dc=new Date(_0x545f9a['createdAt'])['toLocaleDateString']('en-US',{'month':_0x1ded90(0x132),'day':_0x1ded90(0xaf)}),_0x407988=_0x545f9a['authorName']||_0x545f9a[_0x1ded90(0x160)]||_0x1ded90(0xa5),_0x77f5a0=_0x545f9a[_0x1ded90(0xda)]?_0x1ded90(0xea)+(_0x545f9a['domRef']['selector']['split'](_0x4eae41[_0x1ded90(0x129)])[_0x1ded90(0xfb)]()?.['split'](':')[0x0]||_0x4eae41[_0x1ded90(0xae)])+'>\x20\x22'+(_0x545f9a[_0x1ded90(0xda)][_0x1ded90(0x138)]||'')[_0x1ded90(0x158)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x545f9a['id']+']\x20**'+_0x407988+'**\x20('+_0x50f4dc+_0x1ded90(0xf8)+_0x545f9a['content']+'\x22'+_0x77f5a0;})[_0x5a0dd2(0x152)]('\x0a');return _0x5a0dd2(0xf1)+_0x1f4ec7;}function buildNovaSharedOptionsInstruction(_0x155719){const _0x5de553=_0x2ddea3;if(!_0x155719[_0x5de553(0x15f)]())return'The\x20command\x20prefix\x20already\x20injects\x20session,\x20auth,\x20region,\x20workflow,\x20user-data,\x20headless,\x20and\x20JSON\x20options.\x0aDo\x20not\x20run\x20raw\x20`act\x20browser`.\x20Do\x20not\x20add\x20`--auth-mode`,\x20`--aws-profile`,\x20`--region`,\x20`--workflow-name`,\x20`--session-id`,\x20`--user-data-dir`,\x20`--headless`,\x20or\x20`--headed`\x20yourself.';return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x155719;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x2dfa06){const _0x5038f2=_0x2ddea3,_0x55db03={'dSyIv':_0x5038f2(0x11b),'FdYRF':'02_final-state.yml','wOdXk':function(_0x5e080d,_0x3b187c,_0x51c4e9){return _0x5e080d(_0x3b187c,_0x51c4e9);},'MekTF':_0x5038f2(0x12a),'HRkkU':function(_0x1793b7,_0x374042){return _0x1793b7(_0x374042);},'GrRvx':function(_0x5aab3a,_0x54f342){return _0x5aab3a(_0x54f342);}},{novaCommandPrefix:_0x275393,novaSharedOptionsSuffix:_0x219da8,cliArtifactDir:_0x4c576e,url:_0x8e6f2e}=_0x2dfa06,_0x45a7f2=buildCliArtifactPath(_0x4c576e,_0x5038f2(0xde)),_0x297f16=buildCliArtifactPath(_0x4c576e,_0x55db03[_0x5038f2(0xdd)]),_0x11ab07=buildCliArtifactPath(_0x4c576e,_0x55db03[_0x5038f2(0x113)]),_0x2382ef=_0x55db03['wOdXk'](buildCliArtifactPath,_0x4c576e,_0x55db03[_0x5038f2(0x127)]);return _0x5038f2(0x146)+_0x275393+'\x0a\x0a'+_0x55db03[_0x5038f2(0x156)](buildNovaSharedOptionsInstruction,_0x219da8)+'\x0a\x0aThe\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20on\x20PATH.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20or\x20run\x20setup.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20the\x20session\x20create\x20command\x20below.\x0a\x0a1.\x20Run\x20`'+_0x275393+'\x20session\x20create\x20'+quoteShellArg(_0x8e6f2e)+'\x20'+_0x219da8+'`\x0a2.\x20Run\x20`'+_0x275393+_0x5038f2(0x15b)+quoteShellArg(_0x45a7f2)+'\x20'+_0x219da8+'`\x0a3.\x20Run\x20`'+_0x275393+_0x5038f2(0x99)+_0x55db03[_0x5038f2(0xe8)](quoteShellArg,_0x297f16)+'\x20'+_0x219da8+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x275393+_0x5038f2(0xec)+_0x275393+'\x20snapshot\x20--output\x20'+_0x55db03[_0x5038f2(0xe8)](quoteShellArg,_0x11ab07)+'\x20'+_0x219da8+'`\x0a6.\x20Run\x20`'+_0x275393+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x2382ef)+'\x20'+_0x219da8+_0x5038f2(0xe0)+_0x4c576e+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x1ae877){const _0x31c0e3=_0x2ddea3,_0x12ab1c={'LQISO':function(_0x208d01,_0x553a2e,_0x2fa348){return _0x208d01(_0x553a2e,_0x2fa348);},'xSmdb':_0x31c0e3(0x8e),'nzMoU':'01_initial-state.png','ukUIm':function(_0x2caefd,_0x1b25b9,_0x523eb9){return _0x2caefd(_0x1b25b9,_0x523eb9);},'RXVIM':function(_0x1a5c19,_0x570018){return _0x1a5c19(_0x570018);},'SIAOt':function(_0x2cab83,_0x169cff){return _0x2cab83(_0x169cff);},'wrBWH':function(_0x202c37,_0x317e2d){return _0x202c37(_0x317e2d);},'Bygma':function(_0x39a9bb,_0x373067){return _0x39a9bb(_0x373067);}},{checklistItem:_0x5e230a,itemFeedback:_0x28ea67,taskDescription:_0x5022d0,novaCommandPrefix:_0x844537,novaSharedOptionsSuffix:_0x575d68,cliArtifactDir:_0x59d955,url:_0x2d8039,loginInstructions:_0xfb5e11}=_0x1ae877,_0x2d0673=_0x5e230a[_0x31c0e3(0x137)]?_0x31c0e3(0x122)+_0x5e230a[_0x31c0e3(0x137)]:'',_0xfff2e8=buildFeedbackSection(_0x28ea67),_0x3989e6=_0x28ea67?.['canonicalFlow']?_0x31c0e3(0x157)+_0x28ea67[_0x31c0e3(0x13b)]:'',_0x3d1150=_0xfb5e11?_0x31c0e3(0x162)+_0xfb5e11+_0x31c0e3(0xa6):'',_0x4b9aa5=_0x12ab1c[_0x31c0e3(0xce)](buildCliArtifactPath,_0x59d955,_0x12ab1c[_0x31c0e3(0xd1)]),_0x288e0f=_0x12ab1c[_0x31c0e3(0xce)](buildCliArtifactPath,_0x59d955,_0x12ab1c[_0x31c0e3(0x9e)]),_0x54cdaf=_0x12ab1c[_0x31c0e3(0xcb)](buildCliArtifactPath,_0x59d955,_0x31c0e3(0xf7));return _0x31c0e3(0x126)+_0x5e230a[_0x31c0e3(0x10f)]+_0x2d0673+_0xfff2e8+_0x3989e6+_0x31c0e3(0xdb)+_0x5022d0+_0x31c0e3(0xdc)+_0x2d8039+_0x31c0e3(0xd9)+_0x3d1150+'\x0a\x0a##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Nova\x20Act\x20CLI\x20only.\x20Do\x20not\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20The\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20through\x20the\x20browser\x20command\x20prefix\x20below.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20check\x20AWS/auth\x20status,\x20read\x20env\x20files,\x20run\x20setup,\x20or\x20call\x20raw\x20`act\x20browser`.\x0a3.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20`'+_0x844537+'\x20session\x20create\x20'+_0x12ab1c['RXVIM'](quoteShellArg,_0x2d8039)+'\x20'+_0x575d68+_0x31c0e3(0xff)+_0x59d955+_0x31c0e3(0xab)+_0x844537+'\x20snapshot\x20--output\x20'+_0x12ab1c['SIAOt'](quoteShellArg,_0x4b9aa5)+'\x20'+_0x575d68+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x844537+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x288e0f)+'\x20'+_0x575d68+_0x31c0e3(0x104)+_0x54cdaf+'`.\x0a15.\x20As\x20soon\x20as\x20all\x20scenario\x20requirements\x20are\x20satisfied,\x20return\x20structured\x20output\x20immediately.\x20Do\x20not\x20keep\x20exploring,\x20asking,\x20or\x20taking\x20extra\x20screenshots.\x0a16.\x20Treat\x20a\x20Nova\x20`verify`\x20result\x20with\x20`ASSERTION_FAILED`\x20as\x20useful\x20evidence,\x20not\x20as\x20a\x20tool\x20crash.\x20Do\x20not\x20retry\x20the\x20same\x20assertion\x20or\x20search\x20for\x20alternatives\x20unless\x20the\x20scenario\x20explicitly\x20asks\x20you\x20to\x20find\x20any\x20matching\x20page.\x0a17.\x20Stay\x20within\x20the\x20pages\x20and\x20flow\x20named\x20by\x20the\x20scenario.\x20If\x20a\x20required\x20condition\x20is\x20absent\x20after\x20checking\x20the\x20relevant\x20named\x20page\x20once,\x20stop\x20and\x20return\x20\x22partial\x22\x20or\x20\x22failed\x22\x20with\x20the\x20missing\x20requirement.\x20Do\x20not\x20expand\x20into\x20unrelated\x20pages\x20or\x20broad\x20site\x20searches.\x0a18.\x20After\x20you\x20reach\x20and\x20screenshot\x20the\x20final\x20named\x20scenario\x20page,\x20do\x20not\x20execute\x20more\x20browser\x20commands.\x20Evaluate\x20any\x20\x22at\x20least\x20one\x20visited\x20page\x22\x20requirement\x20from\x20the\x20pages\x20already\x20visited\x20and\x20the\x20evidence\x20already\x20collected.\x0a19.\x20Do\x20not\x20run\x20`session\x20close`,\x20`session\x20list`,\x20`session\x20export`,\x20`script`,\x20`doctor`,\x20`--help`,\x20`aws`,\x20`find`,\x20`grep`,\x20`env`,\x20`printenv`,\x20package\x20managers,\x20or\x20setup\x20commands.\x20The\x20host\x20owns\x20setup,\x20auth,\x20session\x20cleanup,\x20and\x20artifact\x20export.\x0a20.\x20The\x20host\x20also\x20captures\x20final\x20screenshots,\x20snapshots,\x20and\x20exports\x20after\x20you\x20finish,\x20but\x20every\x20scenario\x20milestone\x20still\x20needs\x20an\x20accessible\x20screenshot.\x20If\x20the\x20last\x20milestone\x20is\x20the\x20final\x20browser\x20state\x20and\x20you\x20have\x20already\x20captured\x20it,\x20you\x20do\x20not\x20need\x20a\x20duplicate\x20final\x20screenshot.\x0a21.\x20Do\x20not\x20close\x20the\x20Nova\x20session.\x20The\x20host\x20exports\x20artifacts\x20after\x20you\x20finish.\x0a22.\x20The\x20structured\x20output\x20is\x20your\x20final\x20response.\x20After\x20returning\x20it,\x20do\x20not\x20write\x20a\x20separate\x20markdown\x20summary\x20or\x20repeat\x20the\x20findings.\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Nova\x20Act\x20CLI\x20commands\x20with\x20this\x20prefix:\x0a`'+_0x844537+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x575d68['trim']()?'`'+_0x575d68+'`':'`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`')+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x575d68)+'\x0a\x0aExamples:\x0a-\x20`'+_0x844537+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0x575d68+_0x31c0e3(0x107)+_0x844537+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0x575d68+_0x31c0e3(0x107)+_0x844537+_0x31c0e3(0x15b)+_0x12ab1c['wrBWH'](quoteShellArg,_0x4b9aa5)+'\x20'+_0x575d68+'`\x0a-\x20`'+_0x844537+_0x31c0e3(0x99)+_0x12ab1c['Bygma'](quoteShellArg,_0x54cdaf)+'\x20'+_0x575d68+'`\x0a\x0a##\x20Screenshot\x20Guidelines\x0aTake\x20screenshots\x20at\x20scenario\x20milestones\x20so\x20a\x20human\x20can\x20review\x20each\x20completed\x20step\x20and\x20the\x20final\x20state.\x20Use\x20numbered\x20filenames\x20and\x20prefix\x201-2\x20key\x20proof\x20screenshots\x20with\x20`key_`.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page\x20when\x20an\x20existing\x20verifier\x20screenshot\x20or\x20host\x20final\x20screenshot\x20is\x20accessible.\x0a\x0a##\x20Snapshot\x20Guidelines\x0aYou\x20must\x20take\x20the\x20initial\x20snapshot\x20listed\x20above.\x20After\x20that,\x20prefer\x20screenshots\x20plus\x20the\x20page\x20summaries\x20returned\x20by\x20`execute`\x20and\x20`verify`.\x20Only\x20call\x20`snapshot`\x20again\x20if\x20you\x20cannot\x20determine\x20the\x20next\x20action\x20or\x20evaluation\x20from\x20those\x20outputs.\x0a\x0a##\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20initial\x20snapshot\x20and\x20screenshot,\x20check\x20for\x20blocking\x20HTTP\x20errors,\x20framework\x20error\x20pages,\x20blank\x20pages,\x20and\x20authentication\x20failures.\x20If\x20any\x20blocking\x20issue\x20is\x20present,\x20stop\x20and\x20return\x20evaluation\x20\x22blocked\x22\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Failed\x20Assertions\x0aIf\x20`verify`\x20returns\x20`ASSERTION_FAILED`,\x20use\x20its\x20`actual`\x20and\x20`evidence`\x20fields\x20as\x20proof\x20for\x20the\x20final\x20evaluation.\x20Continue\x20only\x20to\x20finish\x20other\x20already-named\x20scenario\x20milestones.\x20Do\x20not\x20retry,\x20ask\x20about,\x20or\x20search\x20around\x20the\x20failed\x20condition.\x0a\x0a##\x20Final\x20Page\x20Stop\x0aWhen\x20the\x20scenario\x20names\x20a\x20final\x20page\x20or\x20final\x20navigation\x20target,\x20that\x20page\x20is\x20the\x20last\x20browser\x20milestone.\x20Once\x20it\x20is\x20loaded\x20and\x20screenshotted,\x20make\x20the\x20final\x20evaluation\x20from\x20the\x20collected\x20evidence.\x20Do\x20not\x20navigate,\x20search,\x20ask,\x20or\x20verify\x20beyond\x20that\x20final\x20page\x20unless\x20the\x20scenario\x20explicitly\x20names\x20another\x20page.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x13ee2d){const _0x111bd2=_0x2ddea3,_0x3d3956=[..._0x13ee2d[_0x111bd2(0x145)]()][_0x111bd2(0x106)]();let _0x4628d1=0x0;for(const _0x13bb76 of _0x13ee2d[_0x111bd2(0xc8)]()){_0x4628d1+=_0x13bb76;}return{'cliCommandCount':_0x4628d1,'cliCommandsSeen':_0x3d3956,'noCliCommandsCalled':_0x4628d1===0x0};}export function createVerifyFeatureNovaCliHooks(_0x435144,_0x38da89){const _0x17adf2=_0x2ddea3,_0x470ae0={'AMKBp':function(_0x285cfb,_0xf3ad58){return _0x285cfb!==_0xf3ad58;},'EBOhH':function(_0xf59741,_0x362133){return _0xf59741(_0x362133);},'Xipoh':'block','wNRVC':_0x17adf2(0x103),'uSLpN':'Bash','lwyMr':function(_0x49dc70,_0x5736b0){return _0x49dc70(_0x5736b0);},'glFip':function(_0x5b1706,_0xffcb76){return _0x5b1706+_0xffcb76;},'ZAEPO':'nova_act_command','ycsve':_0x17adf2(0x112),'iDuqt':_0x17adf2(0xba),'KvfYg':_0x17adf2(0xa0),'EeAak':function(_0x58a36b,_0x3daf96){return _0x58a36b!==_0x3daf96;},'tklXx':'nova_act_command_failure'},_0x562471=new Map(),_0x4e811c=async _0x35d44e=>{const _0x5845ed=_0x17adf2;if(_0x470ae0['AMKBp'](_0x35d44e[_0x5845ed(0x91)],_0x5845ed(0xf0)))return{};const _0xcda696=_0x35d44e;if(_0xcda696[_0x5845ed(0xf9)]!==_0x5845ed(0x12c))return{};const _0x5ef6b0=_0xcda696[_0x5845ed(0xe7)],_0x99dab=extractBashCommand(_0x5ef6b0);if(!_0x99dab)return{};const _0x1b5c26=_0x470ae0[_0x5845ed(0x168)](getNovaActCliCommandBlockReason,_0x99dab);if(!_0x1b5c26)return{};return{'decision':_0x470ae0[_0x5845ed(0x150)],'reason':_0x1b5c26};},_0x3df2a3=async _0x596df6=>{const _0x1f054a=_0x17adf2;if(_0x596df6[_0x1f054a(0x91)]!==_0x470ae0[_0x1f054a(0x12b)])return{};const _0x30444b=_0x596df6;if(_0x470ae0['AMKBp'](_0x30444b[_0x1f054a(0xf9)],_0x470ae0['uSLpN']))return{};const _0x24e66b=_0x30444b['tool_input'],_0x409157=_0x470ae0[_0x1f054a(0x168)](extractBashCommand,_0x24e66b);if(!_0x409157)return{};const _0x137f51=_0x470ae0['lwyMr'](parseNovaActCliCommand,_0x409157);if(!_0x137f51)return{};_0x562471[_0x1f054a(0x131)](_0x137f51,_0x470ae0['glFip'](_0x562471['get'](_0x137f51)||0x0,0x1)),_0x435144[_0x1f054a(0xd2)]('nova_act_command',{'subcommand':_0x137f51}),_0x435144[_0x1f054a(0xbb)](_0x470ae0[_0x1f054a(0xbc)],{'subcommand':_0x137f51,'commandPreview':previewNovaActCliCommand(_0x409157)}),console['log']('[nova-act-cli]\x20'+formatNovaActCliLog(_0x409157,_0x137f51));if(_0x137f51===_0x470ae0['ycsve']&&_0x38da89)try{await _0x38da89['start']();}catch(_0x581eed){await _0x435144[_0x1f054a(0xc2)](_0x1f054a(0xc4),_0x581eed,{'transport':_0x470ae0['iDuqt']});}return{};},_0x110272=async _0x4b3fb5=>{const _0x5bfc10=_0x17adf2;if(_0x4b3fb5[_0x5bfc10(0x91)]!==_0x470ae0['KvfYg'])return{};const _0x5d67b2=_0x4b3fb5;if(_0x470ae0[_0x5bfc10(0x10d)](_0x5d67b2[_0x5bfc10(0xf9)],_0x5bfc10(0x12c)))return{};return await _0x435144['trackPhaseError'](_0x470ae0[_0x5bfc10(0x148)],_0x5d67b2['error'],{'transport':_0x470ae0['iDuqt'],'toolName':_0x470ae0['uSLpN']}),{};};return{'preToolUseHook':_0x4e811c,'postToolUseHook':_0x3df2a3,'postToolUseFailureHook':_0x110272,'commandCounts':_0x562471};}async function runNovaLifecycleCommand(_0x54d4ea){const _0x6a9d24=_0x2ddea3,_0x2e2f33={'HCUsK':function(_0x25c6e3,_0x442272){return _0x25c6e3(_0x442272);}},{novaOptions:_0x4639f4,commandArgs:_0x2319be,telemetry:_0x3d7212,phase:_0x5c2493,metadata:_0x4c8f76,timeoutMs:_0x36b6c2}=_0x54d4ea;_0x3d7212['trackPhaseStart'](_0x5c2493,_0x4c8f76);try{const _0x1688ee=await runNovaActCliCommand({..._0x4639f4,'commandArgs':_0x2319be,'cwd':process['cwd'](),'env':process['env'],'timeoutMs':_0x36b6c2??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x3d7212[_0x6a9d24(0xbb)](_0x5c2493,{..._0x4c8f76,'subcommand':_0x1688ee[_0x6a9d24(0x13a)]['subcommand'],'commandPreview':_0x2e2f33['HCUsK'](previewNovaActCliCommand,_0x1688ee[_0x6a9d24(0x13a)]['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0x1688ee['stdout']),'stderrPreview':previewNovaActCliCommand(_0x1688ee['stderr']),'logDir':extractNovaActLogDir(_0x1688ee['stdout'])});}catch(_0x14ff80){await _0x3d7212[_0x6a9d24(0xc2)](_0x5c2493,_0x14ff80,_0x4c8f76);throw _0x14ff80;}}export async function finalizeVerifyFeatureNovaCliSession(_0x11e783){const _0x58f44a=_0x2ddea3,_0x3f9364={'pxfyx':'screenshot','ACJKR':_0x58f44a(0xc7),'vPKrY':_0x58f44a(0x130),'iEHKI':'snapshot','CSEex':function(_0x38145b,_0x1eef44,_0x1bc59f){return _0x38145b(_0x1eef44,_0x1bc59f);},'LKoTC':_0x58f44a(0xa1),'nOxPZ':_0x58f44a(0xb5),'kPnzg':'session','jjEUX':'export','rTUBF':'--format','IeSaL':function(_0x22c02e,_0x197598,_0x46c45f){return _0x22c02e(_0x197598,_0x46c45f);},'VnwFf':_0x58f44a(0xe9),'SBepb':'nova_act_session_close','wYeeb':function(_0x243251,_0xa85062){return _0x243251===_0xa85062;},'AFxAX':function(_0xe11c6a,_0x10cee9){return _0xe11c6a(_0x10cee9);}},{telemetry:_0x6c78d8,novaOptions:_0x4b0f7c,cliArtifactDir:_0xb93b2f,transportMetadata:_0x5092f6,artifactRecorder:_0x3ea858}=_0x11e783,_0x15f03d=[{'phase':_0x58f44a(0x12e),'commandArgs':[_0x3f9364['pxfyx'],_0x3f9364[_0x58f44a(0x134)],buildCliArtifactPath(_0xb93b2f,'key_final-state.png')]},{'phase':_0x3f9364['vPKrY'],'commandArgs':[_0x3f9364['iEHKI'],_0x58f44a(0xc7),_0x3f9364[_0x58f44a(0xc3)](buildCliArtifactPath,_0xb93b2f,_0x3f9364['LKoTC'])]},{'phase':_0x3f9364[_0x58f44a(0x14d)],'commandArgs':[_0x3f9364[_0x58f44a(0x11a)],_0x3f9364['jjEUX'],_0x3f9364[_0x58f44a(0x14b)],_0x58f44a(0x10a),_0x58f44a(0xc7),_0x3f9364[_0x58f44a(0x169)](buildCliArtifactPath,_0xb93b2f,_0x3f9364[_0x58f44a(0x14c)])]},{'phase':_0x58f44a(0x117),'commandArgs':[_0x3f9364[_0x58f44a(0x11a)],'export',_0x58f44a(0x12f),_0x58f44a(0xe4),buildCliArtifactPath(_0xb93b2f,_0x58f44a(0x161))]},{'phase':_0x3f9364[_0x58f44a(0xfa)],'commandArgs':['session','close']}];for(const _0x536743 of _0x15f03d){_0x3f9364['wYeeb'](_0x536743[_0x58f44a(0x9d)],_0x58f44a(0x11c))&&await _0x3ea858?.[_0x58f44a(0x114)]();try{await _0x3f9364['AFxAX'](runNovaLifecycleCommand,{'novaOptions':_0x4b0f7c,'commandArgs':[..._0x536743['commandArgs']],'telemetry':_0x6c78d8,'phase':_0x536743['phase'],'metadata':_0x5092f6});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x30b3d0){const _0x4ce48e=_0x2ddea3,_0x19c786={'Mmpth':function(_0x15f30a,_0x14d1dd,_0x1a211e){return _0x15f30a(_0x14d1dd,_0x1a211e);},'ucJMb':function(_0xf9bba1,_0x6dee87){return _0xf9bba1(_0x6dee87);}},{cwd:_0x528ee4,cliArtifactDir:_0x54a99a,startTime:_0x1d7f0c}=_0x30b3d0,_0x54b4a0=[];await _0x19c786[_0x4ce48e(0x14e)](mkdir,_0x54a99a,{'recursive':!![]});const _0x24ebbb=await _0x19c786['Mmpth'](readdir,_0x528ee4,{'withFileTypes':!![]});for(const _0x1e01bd of _0x24ebbb){if(!_0x1e01bd[_0x4ce48e(0x120)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x4ce48e(0x159)](_0x1e01bd['name']))continue;const _0x44bc0b=join(_0x528ee4,_0x1e01bd[_0x4ce48e(0x92)]),_0x509199=await _0x19c786['ucJMb'](stat,_0x44bc0b);if(_0x509199[_0x4ce48e(0x11e)]+0x7d0<_0x1d7f0c)continue;const _0x271f62=_0x19c786[_0x4ce48e(0x14e)](buildCliArtifactPath,_0x54a99a,_0x1e01bd['name']);if(_0x44bc0b===_0x271f62)continue;await _0x19c786['Mmpth'](rename,_0x44bc0b,_0x271f62),_0x54b4a0[_0x4ce48e(0x142)](_0x1e01bd['name']);}return _0x54b4a0['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x166bfa){const _0x1b71e9=_0x2ddea3,_0x17f109={'xqQxy':function(_0x16b6a1,_0x5671af){return _0x16b6a1(_0x5671af);}},_0x3c9c7c=join(_0x166bfa,_0x1b71e9(0xa8));try{return{'buffer':await _0x17f109['xqQxy'](readFile,_0x3c9c7c),'source':_0x3c9c7c};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0x166bfa),'source':_0x166bfa};}}async function zipVerifyFeatureNovaArtifacts(_0x3f2d51){const _0x370517=_0x2ddea3,_0x58d3ea={'wqKSD':function(_0x6c95c8,_0x2c1128,_0x3ad9a3,_0xa7c192){return _0x6c95c8(_0x2c1128,_0x3ad9a3,_0xa7c192);},'gndEY':'zip','lSKgh':function(_0x5c1997,_0x351ee3){return _0x5c1997(_0x351ee3);}},_0x65dbfb=_0x58d3ea[_0x370517(0x118)](join,_0x3f2d51,'..',_0x370517(0x108));try{return await _0x58d3ea[_0x370517(0x118)](execFileAsync,_0x58d3ea['gndEY'],['-qr',_0x65dbfb,'.','-x',_0x370517(0xd3)],{'cwd':_0x3f2d51}),await _0x58d3ea[_0x370517(0xef)](readFile,_0x65dbfb);}finally{await rm(_0x65dbfb,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0xff1da0){const _0x588a92=_0x2ddea3,_0xc5066={'tVSIl':function(_0x9ae4ab,_0x4ec8ce){return _0x9ae4ab(_0x4ec8ce);}},_0x4f91f8=buildNovaActCliInvocation(_0xff1da0[_0x588a92(0x143)],_0xff1da0[_0x588a92(0x125)]);return{'command':_0x4f91f8['command'],'args':_0x4f91f8[_0x588a92(0xf4)],'commandPreview':_0xc5066[_0x588a92(0xc6)](previewNovaActCliCommand,_0x4f91f8['shellCommand']),'subcommand':_0x4f91f8[_0x588a92(0xe5)],'sharedOptionsSuffix':buildNovaActCliSharedOptionsSuffix(_0xff1da0['novaOptions'],_0xff1da0[_0x588a92(0x125)])};}
|
|
1
|
+
const _0x2fac39=_0x3809;(function(_0x3029f7,_0xbc6692){const _0x5371e1=_0x3809,_0xa75ddf=_0x3029f7();while(!![]){try{const _0x24cdc6=parseInt(_0x5371e1(0x14e))/0x1+parseInt(_0x5371e1(0x7c))/0x2*(parseInt(_0x5371e1(0xe3))/0x3)+-parseInt(_0x5371e1(0xac))/0x4*(parseInt(_0x5371e1(0x14a))/0x5)+parseInt(_0x5371e1(0xfc))/0x6*(parseInt(_0x5371e1(0x10e))/0x7)+-parseInt(_0x5371e1(0x150))/0x8*(parseInt(_0x5371e1(0x14f))/0x9)+-parseInt(_0x5371e1(0x9c))/0xa*(parseInt(_0x5371e1(0x7d))/0xb)+parseInt(_0x5371e1(0x117))/0xc;if(_0x24cdc6===_0xbc6692)break;else _0xa75ddf['push'](_0xa75ddf['shift']());}catch(_0x349443){_0xa75ddf['push'](_0xa75ddf['shift']());}}}(_0x3a38,0x7a4fb));import{execFile}from'child_process';import{mkdir,readdir,readFile,rename,rm,stat,writeFile}from'fs/promises';import{homedir}from'os';import{basename,join}from'path';import{promisify}from'util';import{chromium}from'playwright';import{buildNovaActCliInvocation,buildNovaActCliSharedOptionsSuffix,extractNovaActLogDir,parseNovaActCliCommand,previewNovaActCliCommand,runNovaActCliCommand}from'./utils/novaActCli.js';import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';const NOVA_ACT_CLI_COMMAND_TIMEOUT_MS=0x1d4c0,NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS=0x3a98,NOVA_ARTIFACT_METADATA_WAIT_MS=0x1388,NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS=0x1388,VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|final-state\.ya?ml|nova-session-export\.json)$/i,NOVA_ACT_ALLOWED_AGENT_COMMANDS=new Set([_0x2fac39(0xed),_0x2fac39(0xae),'verify',_0x2fac39(0x14c),_0x2fac39(0x96),'wait-for',_0x2fac39(0x13c),_0x2fac39(0xba)]),execFileAsync=promisify(execFile);function _0x3809(_0x19de59,_0x431318){_0x19de59=_0x19de59-0x76;const _0x3a38c2=_0x3a38();let _0x380957=_0x3a38c2[_0x19de59];return _0x380957;}function buildCliArtifactPath(_0x227b15,_0x106dff){return join(_0x227b15,_0x106dff);}export class NovaActArtifactRecorder{[_0x2fac39(0x153)];['browser']=null;['context']=null;['frameSession']=null;['frameWrites']=[];[_0x2fac39(0x104)]=0x0;[_0x2fac39(0x103)]=0x0;['traceSampleTimer']=null;['traceSampleInFlight']=null;['tracingStarted']=![];[_0x2fac39(0x134)]=![];[_0x2fac39(0xa3)]=![];['stopped']=![];constructor(_0x1a6a8e){const _0x10fa4b=_0x2fac39;this[_0x10fa4b(0x153)]=_0x1a6a8e;}async[_0x2fac39(0x11b)](){const _0x546c89=_0x2fac39,_0x3980a7={'wbvvH':_0x546c89(0xfa)};if(this[_0x546c89(0xa3)])return;this['startAttempted']=!![];const _0x3d7fb5=await this[_0x546c89(0x126)](),_0x4c2a0c=_0x3d7fb5[_0x546c89(0x152)];if(!_0x4c2a0c)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this[_0x546c89(0x153)]['novaOptions']['sessionId']);await mkdir(this['params'][_0x546c89(0x80)],{'recursive':!![]}),this['browser']=await chromium['connectOverCDP'](_0x4c2a0c,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x546c89(0x149)]=this['browser'][_0x546c89(0x11c)]()[0x0]??null;if(!this['context'])throw new Error('Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context');await this['context']['tracing'][_0x546c89(0x11b)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x546c89(0x114)](),await this['startScreencast'](),this['params'][_0x546c89(0xdb)][_0x546c89(0x81)]('nova_act_artifact_recording',{...this['params']['transportMetadata'],'cdpEndpoint':_0x4c2a0c,'browserPid':_0x3d7fb5[_0x546c89(0x113)],'sessionState':_0x3d7fb5[_0x546c89(0x119)]}),this['params']['telemetry']['trackPhaseEnd'](_0x3980a7[_0x546c89(0xea)],{...this[_0x546c89(0x153)]['transportMetadata'],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x546c89(0x134)]});}async['stop'](){const _0x575ab2=_0x2fac39,_0x2c0f01={'VSrJV':_0x575ab2(0x14b)};if(this[_0x575ab2(0x10b)])return;this[_0x575ab2(0x10b)]=!![];const _0x425cce={...this[_0x575ab2(0x153)]['transportMetadata'],'frameCount':this[_0x575ab2(0x104)],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this[_0x575ab2(0xc0)],'screencastStarted':this['screencastStarted']};this['params']['telemetry'][_0x575ab2(0x81)](_0x2c0f01['VSrJV'],_0x425cce);try{await this['stopTraceSampling'](),await this[_0x575ab2(0x12b)](),await this['stopScreencast'](),await Promise[_0x575ab2(0x99)](this['frameWrites']);this['context']&&this[_0x575ab2(0xc0)]&&await this[_0x575ab2(0x149)][_0x575ab2(0x82)]['stop']({'path':buildCliArtifactPath(this[_0x575ab2(0x153)][_0x575ab2(0x80)],'trace.zip')});const _0x2346c1=await this['encodeScreencastVideo']();this[_0x575ab2(0x153)][_0x575ab2(0xdb)][_0x575ab2(0x13e)]('nova_act_artifact_recording_stop',{..._0x425cce,'videoPath':_0x2346c1});}catch(_0x673986){await this[_0x575ab2(0x153)]['telemetry']['trackPhaseError'](_0x575ab2(0x14b),_0x673986,_0x425cce);}finally{await this[_0x575ab2(0x100)]?.[_0x575ab2(0x124)]()[_0x575ab2(0x85)](()=>undefined),this[_0x575ab2(0x100)]=null,this[_0x575ab2(0x149)]=null,this[_0x575ab2(0x12d)]=null;}}async['readSessionMetadataWithRetry'](){const _0x281d1b=_0x2fac39,_0x398134={'PtlgL':function(_0xecfaba,_0xc77a6e,_0x25939f,_0x5ed785,_0x1afd06,_0x419e43){return _0xecfaba(_0xc77a6e,_0x25939f,_0x5ed785,_0x1afd06,_0x419e43);},'oZJkx':_0x281d1b(0x8e),'bpOKM':'sessions','CEoWi':function(_0x3be861,_0x15b58d){return _0x3be861-_0x15b58d;}},_0x422fdf=_0x398134[_0x281d1b(0xc8)](join,homedir(),_0x398134[_0x281d1b(0xb6)],_0x281d1b(0x100),_0x398134['bpOKM'],this[_0x281d1b(0x153)]['novaOptions'][_0x281d1b(0x78)]+_0x281d1b(0x83)),_0x156320=Date['now']();let _0x40d3bc;do{try{const _0x49f5dc=JSON['parse'](await readFile(_0x422fdf,_0x281d1b(0x12e)));if(_0x49f5dc['cdp_endpoint'])return _0x49f5dc;_0x40d3bc=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0x422fdf);}catch(_0x36f615){_0x40d3bc=_0x36f615;}await delay(0x64);}while(_0x398134['CEoWi'](Date['now'](),_0x156320)<NOVA_ARTIFACT_METADATA_WAIT_MS);if(_0x40d3bc instanceof Error)throw _0x40d3bc;throw new Error(_0x281d1b(0x125)+_0x422fdf);}async['startScreencast'](){const _0x58c8bc=_0x2fac39,_0x1a133d={'gxVeS':function(_0x192263,_0x859bec,_0x2a9ae6){return _0x192263(_0x859bec,_0x2a9ae6);},'Cilig':function(_0x1c2db9,_0x2e2277){return _0x1c2db9(_0x2e2277);},'aqHwb':'Page.screencastFrame','QIHoh':'Page.startScreencast','MtGUx':'jpeg'};if(!this[_0x58c8bc(0x149)])return;const _0x548bb5=this['context'][_0x58c8bc(0x9e)]()[0x0];if(!_0x548bb5)return;const _0x1f0ef3=this[_0x58c8bc(0x94)]();await mkdir(_0x1f0ef3,{'recursive':!![]});const _0x9053=await this[_0x58c8bc(0x149)]['newCDPSession'](_0x548bb5);this[_0x58c8bc(0x12d)]=_0x9053,_0x9053['on'](_0x1a133d[_0x58c8bc(0x122)],_0x42daf4=>{const _0x235e06=_0x58c8bc,_0x1882ff=++this[_0x235e06(0x104)],_0x3f130b=_0x1a133d[_0x235e06(0x7e)](join,_0x1f0ef3,'frame-'+_0x1a133d['Cilig'](String,_0x1882ff)['padStart'](0x6,'0')+'.jpg'),_0x441faf=writeFile(_0x3f130b,Buffer['from'](_0x42daf4['data'],'base64'))[_0x235e06(0x85)](()=>undefined)['finally'](()=>_0x9053['send'](_0x235e06(0x10f),{'sessionId':_0x42daf4[_0x235e06(0x78)]}))['then'](()=>undefined)[_0x235e06(0x85)](()=>undefined);this['frameWrites'][_0x235e06(0xaf)](_0x441faf);}),await _0x9053['send'](_0x1a133d['QIHoh'],{'format':_0x1a133d[_0x58c8bc(0xb9)],'quality':0x4b,'everyNthFrame':0x6}),this[_0x58c8bc(0x134)]=!![];}async[_0x2fac39(0x136)](){const _0x49cef9=_0x2fac39,_0x5e5039={'NQNrM':'Page.stopScreencast'};if(!this['frameSession']||!this[_0x49cef9(0x134)])return;await this['frameSession']['send'](_0x5e5039['NQNrM'])['catch'](()=>undefined);}[_0x2fac39(0x114)](){const _0x4b4c00=_0x2fac39,_0x4e8469={'qxegz':function(_0x415da6,_0x36a643,_0x17a650){return _0x415da6(_0x36a643,_0x17a650);}};this['queueTraceSample'](),this[_0x4b4c00(0xf4)]=_0x4e8469[_0x4b4c00(0xdc)](setInterval,()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x2fac39(0x92)](){const _0x4e4832=_0x2fac39;if(this['traceSampleInFlight'])return;this[_0x4e4832(0x14d)]=this[_0x4e4832(0x12b)]()[_0x4e4832(0x13d)](()=>{const _0x2b093b=_0x4e4832;this[_0x2b093b(0x14d)]=null;});}async['stopTraceSampling'](){const _0x515fc3=_0x2fac39,_0x401daa={'SPrJM':function(_0x1d4182,_0x34d7f3){return _0x1d4182(_0x34d7f3);}};this['traceSampleTimer']&&(_0x401daa[_0x515fc3(0x123)](clearInterval,this[_0x515fc3(0xf4)]),this['traceSampleTimer']=null),await this[_0x515fc3(0x14d)]?.[_0x515fc3(0x85)](()=>undefined);}async['captureTraceSample'](){const _0x3fcaf1=_0x2fac39,_0x23c096={'EoLva':'body'},_0x59c711=this[_0x3fcaf1(0x149)]?.['pages']()[0x0];if(!_0x59c711)return;try{await _0x59c711[_0x3fcaf1(0xce)](_0x23c096[_0x3fcaf1(0x143)])[_0x3fcaf1(0x138)](_0x578e66=>_0x578e66['tagName'],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async[_0x2fac39(0xff)](){const _0x22f471=_0x2fac39,_0x496c7b={'BwSDA':function(_0x262d57,_0x3facef){return _0x262d57<_0x3facef;},'sntdc':function(_0x5d9c41,_0x3b9972,_0x56b985){return _0x5d9c41(_0x3b9972,_0x56b985);},'wEoRR':_0x22f471(0x101),'kbhKC':_0x22f471(0x84),'przje':'-hide_banner','AoUZd':_0x22f471(0xdd),'bzRTQ':_0x22f471(0x112),'QRuEw':_0x22f471(0x146),'IfPOn':_0x22f471(0xf3)};if(_0x496c7b[_0x22f471(0x86)](this['frameCount'],0x2))return null;const _0x9ddc77=await resolveFfmpegPath();if(!_0x9ddc77)return null;const _0x1378cc=_0x496c7b[_0x22f471(0x137)](join,this[_0x22f471(0x153)][_0x22f471(0x80)],_0x496c7b['wEoRR']);await _0x496c7b[_0x22f471(0x137)](mkdir,_0x1378cc,{'recursive':!![]});const _0x22596a=join(_0x1378cc,_0x496c7b['kbhKC']);return await execFileAsync(_0x9ddc77,['-y',_0x496c7b[_0x22f471(0xd1)],_0x496c7b['AoUZd'],_0x22f471(0xfe),_0x22f471(0x151),'10','-i',_0x496c7b['sntdc'](join,this[_0x22f471(0x94)](),_0x496c7b[_0x22f471(0x120)]),'-vf',_0x496c7b['QRuEw'],'-c:v',_0x22f471(0xc6),'-pix_fmt',_0x496c7b[_0x22f471(0xdf)],_0x22596a]),_0x22596a;}['getFrameDir'](){const _0x4ffc1a=_0x2fac39,_0x594066={'Pykxw':function(_0x1181fb,_0x214ca9,_0x137ffd){return _0x1181fb(_0x214ca9,_0x137ffd);},'qzILX':_0x4ffc1a(0xef)};return _0x594066[_0x4ffc1a(0xd9)](join,this['params']['cliArtifactDir'],_0x594066[_0x4ffc1a(0xbf)]);}}async function delay(_0xd2e81e){await new Promise(_0x14ab15=>setTimeout(_0x14ab15,_0xd2e81e));}async function resolveFfmpegPath(){const _0xd58384=_0x2fac39,_0xc54004={'GbpFu':function(_0xd9ae0a,_0x5d8b41){return _0xd9ae0a(_0x5d8b41);},'LJoBk':'ffmpeg','SsomF':function(_0x302c98,_0x3bee67,_0x1174cb,_0xc2d848,_0x3cb29f){return _0x302c98(_0x3bee67,_0x1174cb,_0xc2d848,_0x3cb29f);},'JoXQO':function(_0x3ca95d){return _0x3ca95d();},'nQjSn':'Library','pOTJR':_0xd58384(0xbc),'JFcFC':function(_0x4de6b9,_0x178b78,_0x27ea53,_0x5730cd){return _0x4de6b9(_0x178b78,_0x27ea53,_0x5730cd);},'qmoNY':function(_0x3c0140,_0x43da0b){return _0x3c0140(_0x43da0b);}};if(await _0xc54004[_0xd58384(0xf0)](canRunFfmpeg,_0xc54004['LJoBk']))return _0xc54004['LJoBk'];const _0x5e578f=[_0xc54004['SsomF'](join,_0xc54004[_0xd58384(0xa5)](homedir),_0xc54004[_0xd58384(0x116)],_0xd58384(0xc5),_0xc54004[_0xd58384(0xd8)]),_0xc54004[_0xd58384(0xb7)](join,homedir(),'.cache',_0xc54004['pOTJR'])];for(const _0x196b7b of _0x5e578f){try{const _0x49d8db=await readdir(_0x196b7b),_0x477ae3=_0x49d8db[_0xd58384(0xa7)](_0x54ffc8=>_0x54ffc8[_0xd58384(0xeb)](_0xd58384(0xd6)))[_0xd58384(0xa0)]()[_0xd58384(0xd0)]()[_0xd58384(0x109)](_0x35f264=>[join(_0x196b7b,_0x35f264,'ffmpeg-mac'),join(_0x196b7b,_0x35f264,_0xd58384(0x7a)),join(_0x196b7b,_0x35f264,'ffmpeg.exe')]);for(const _0x484867 of _0x477ae3){if(await _0xc54004[_0xd58384(0x128)](canRunFfmpeg,_0x484867))return _0x484867;}}catch{}}return null;}async function canRunFfmpeg(_0x505163){try{return await execFileAsync(_0x505163,['-version']),!![];}catch{return![];}}function toStepDisplayName(_0x52d072){const _0x5e0ab2=_0x2fac39,_0x1ac2d8={'FlFue':function(_0xe28b7d,_0x5b19f0){return _0xe28b7d(_0x5b19f0);}},_0x4594ba=basename(_0x52d072)[_0x5e0ab2(0xf2)](/\.(?:png|ya?ml)$/i,'')[_0x5e0ab2(0xf2)](/^key_/i,'')['replace'](/^\d+_/,'')[_0x5e0ab2(0xf2)](/-/g,'\x20');return{'name':_0x4594ba,'isKeyStep':/^key_/i['test'](_0x1ac2d8['FlFue'](basename,_0x52d072))};}function extractShellValue(_0x3d4668){if(!_0x3d4668)return null;return _0x3d4668[0x1]??_0x3d4668[0x2]??_0x3d4668[0x3]??null;}function extractOutputOption(_0x81ef3a){const _0xbb4514=_0x2fac39;return extractShellValue(_0x81ef3a[_0xbb4514(0x88)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x17302d,_0x17c3ef){const _0x3daec7=_0x2fac39,_0x44ee34={'FLvGH':'execute','aqsdA':'verify','GUPma':'ask','oSrSo':_0x3daec7(0xa9),'GcYsA':_0x3daec7(0x110),'gMlbO':_0x3daec7(0x8f),'lfWOl':_0x3daec7(0x95),'dQCCA':_0x3daec7(0x13c),'qjxuz':'capture\x20snapshot','xLQOf':function(_0x17e969,_0x36628f){return _0x17e969(_0x36628f);},'KIfqa':_0x3daec7(0xba),'ujrie':_0x3daec7(0xd7),'lnBBY':_0x3daec7(0xb8)};switch(_0x17c3ef){case'session\x20create':return'create\x20Nova\x20browser\x20session';case _0x44ee34['FLvGH']:return'execute\x20Nova\x20browser\x20action';case _0x44ee34[_0x3daec7(0xc1)]:return'verify\x20page\x20condition';case _0x44ee34['GUPma']:return _0x44ee34[_0x3daec7(0xda)];case'goto':return _0x44ee34['GcYsA'];case _0x44ee34[_0x3daec7(0xa8)]:return _0x44ee34['lfWOl'];case _0x44ee34['dQCCA']:{const _0xa7cd6=extractOutputOption(_0x17302d);if(!_0xa7cd6)return _0x44ee34[_0x3daec7(0x11e)];const {name:_0x5e9792}=_0x44ee34[_0x3daec7(0xf6)](toStepDisplayName,_0xa7cd6);return'capture\x20snapshot\x20`'+_0x5e9792+'`';}case _0x44ee34[_0x3daec7(0x7f)]:{const _0x4141cb=extractOutputOption(_0x17302d);if(!_0x4141cb)return _0x44ee34['ujrie'];const {name:_0x7f3042,isKeyStep:_0xca4803}=_0x44ee34[_0x3daec7(0xf6)](toStepDisplayName,_0x4141cb);return _0xca4803?'capture\x20key\x20step\x20`'+_0x7f3042+'`':'capture\x20step\x20`'+_0x7f3042+'`';}case'session\x20export':return _0x44ee34['lnBBY'];default:return _0x17c3ef;}}function getNovaActCliCommandBlockReason(_0x38f1ab){const _0x3af525=_0x2fac39,_0x126f7a={'ptkrZ':_0x3af525(0x127),'SNfUX':'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.'},_0x14f384=parseNovaActCliCommand(_0x38f1ab);if(!_0x14f384)return'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.';if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS['has'](_0x14f384))return _0x3af525(0xb2)+_0x14f384+_0x3af525(0x9b);if(_0x14f384===_0x3af525(0x77)&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x38f1ab))return _0x126f7a[_0x3af525(0xa1)];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0x3af525(0x12c)](_0x38f1ab))return _0x126f7a[_0x3af525(0xe5)];return null;}function buildFeedbackSection(_0xecd32a){const _0x2200b6=_0x2fac39,_0x161f17={'nRQGH':_0x2200b6(0xc9),'VCEFB':_0x2200b6(0xd5),'dAKdP':'numeric'};if(!_0xecd32a||_0xecd32a['unaddressedComments']['length']===0x0)return'';const _0x11c93c=_0xecd32a[_0x2200b6(0x10c)][_0x2200b6(0x11f)](_0x4b9b9e=>{const _0x657cd2=_0x2200b6,_0x3924cc=new Date(_0x4b9b9e['createdAt'])[_0x657cd2(0x13b)](_0x161f17[_0x657cd2(0xb3)],{'month':_0x161f17[_0x657cd2(0xa4)],'day':_0x161f17[_0x657cd2(0x13a)]}),_0x216dfb=_0x4b9b9e['authorName']||_0x4b9b9e['authorEmail']||'Reviewer',_0x2ffe4c=_0x4b9b9e[_0x657cd2(0xbb)]?_0x657cd2(0x111)+(_0x4b9b9e['domRef']['selector'][_0x657cd2(0x8d)]('\x20>\x20')['pop']()?.[_0x657cd2(0x8d)](':')[0x0]||_0x657cd2(0x139))+_0x657cd2(0x147)+(_0x4b9b9e['domRef']['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x4b9b9e['id']+_0x657cd2(0x105)+_0x216dfb+_0x657cd2(0xbe)+_0x3924cc+_0x657cd2(0x11a)+_0x4b9b9e[_0x657cd2(0xf8)]+'\x22'+_0x2ffe4c;})['join']('\x0a');return'\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\x20in\x20addressedCommentIds.\x0a\x0a'+_0x11c93c;}function buildNovaSharedOptionsInstruction(_0x1734e0){const _0x3b5be1=_0x2fac39;if(!_0x1734e0['trim']())return _0x3b5be1(0xf1);return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x1734e0;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x38e313){const _0x28a306=_0x2fac39,_0x49de8b={'hwdWf':function(_0x56c9de,_0x1927b2,_0x3d4c57){return _0x56c9de(_0x1927b2,_0x3d4c57);},'leshA':function(_0x2e23d0,_0x5c474e,_0x3974f3){return _0x2e23d0(_0x5c474e,_0x3974f3);},'rezlk':'01_initial-state.png','zNrqn':'02_final-state.yml','EmNCD':'03_final-state.png','uqEzI':function(_0x3942ba,_0xcedcb1){return _0x3942ba(_0xcedcb1);}},{novaCommandPrefix:_0x3cb711,novaSharedOptionsSuffix:_0x10bd11,cliArtifactDir:_0x3de723,url:_0x33bd26}=_0x38e313,_0x2c98a5=_0x49de8b['hwdWf'](buildCliArtifactPath,_0x3de723,_0x28a306(0xfb)),_0x582448=_0x49de8b['leshA'](buildCliArtifactPath,_0x3de723,_0x49de8b[_0x28a306(0xe1)]),_0x5a4b2e=buildCliArtifactPath(_0x3de723,_0x49de8b[_0x28a306(0x87)]),_0xe94134=buildCliArtifactPath(_0x3de723,_0x49de8b['EmNCD']);return _0x28a306(0x142)+_0x3cb711+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x10bd11)+'\x0a\x0aThe\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20on\x20PATH.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20or\x20run\x20setup.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20the\x20session\x20create\x20command\x20below.\x0a\x0a1.\x20Run\x20`'+_0x3cb711+'\x20session\x20create\x20'+quoteShellArg(_0x33bd26)+'\x20'+_0x10bd11+_0x28a306(0x8a)+_0x3cb711+'\x20snapshot\x20--output\x20'+_0x49de8b[_0x28a306(0x118)](quoteShellArg,_0x2c98a5)+'\x20'+_0x10bd11+'`\x0a3.\x20Run\x20`'+_0x3cb711+_0x28a306(0x97)+quoteShellArg(_0x582448)+'\x20'+_0x10bd11+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x3cb711+_0x28a306(0xb0)+_0x3cb711+_0x28a306(0xb5)+quoteShellArg(_0x5a4b2e)+'\x20'+_0x10bd11+'`\x0a6.\x20Run\x20`'+_0x3cb711+_0x28a306(0x97)+quoteShellArg(_0xe94134)+'\x20'+_0x10bd11+_0x28a306(0xd4)+_0x3de723+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x2ee959){const _0x1a67df=_0x2fac39,_0x158113={'CtCRW':function(_0x51230d,_0x5a498e){return _0x51230d(_0x5a498e);},'cMiAY':function(_0xd5b24a,_0x14087f,_0x57ba95){return _0xd5b24a(_0x14087f,_0x57ba95);},'mqqnS':'01_initial.yml','vJpRN':'01_initial-state.png','XIqgv':function(_0x473ba9,_0x2427f7,_0x1e8d9c){return _0x473ba9(_0x2427f7,_0x1e8d9c);},'XVNDP':function(_0x482b45,_0x19ee03){return _0x482b45(_0x19ee03);}},{checklistItem:_0x138d14,itemFeedback:_0x87232f,taskDescription:_0x5e4de9,novaCommandPrefix:_0x135115,novaSharedOptionsSuffix:_0x50f024,cliArtifactDir:_0x5a827b,url:_0x69c873,loginInstructions:_0x1bb789}=_0x2ee959,_0x1519ba=_0x138d14[_0x1a67df(0xee)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x138d14[_0x1a67df(0xee)]:'',_0x59b51e=_0x158113['CtCRW'](buildFeedbackSection,_0x87232f),_0x1864db=_0x87232f?.[_0x1a67df(0x13f)]?_0x1a67df(0x98)+_0x87232f['canonicalFlow']:'',_0x5f000b=_0x1bb789?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x1bb789+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x2ccda2=_0x158113[_0x1a67df(0xe4)](buildCliArtifactPath,_0x5a827b,_0x158113[_0x1a67df(0x12a)]),_0x4cce71=buildCliArtifactPath(_0x5a827b,_0x158113['vJpRN']),_0x5812ad=_0x158113['XIqgv'](buildCliArtifactPath,_0x5a827b,_0x1a67df(0xf9));return _0x1a67df(0x107)+_0x138d14[_0x1a67df(0x76)]+_0x1519ba+_0x59b51e+_0x1864db+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x5e4de9+_0x1a67df(0xe0)+_0x69c873+_0x1a67df(0x93)+_0x5f000b+_0x1a67df(0xad)+_0x135115+_0x1a67df(0xf5)+_0x158113['XVNDP'](quoteShellArg,_0x69c873)+'\x20'+_0x50f024+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x5a827b+_0x1a67df(0xd2)+_0x135115+_0x1a67df(0xb5)+_0x158113['CtCRW'](quoteShellArg,_0x2ccda2)+'\x20'+_0x50f024+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x135115+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x4cce71)+'\x20'+_0x50f024+'`.\x0a7.\x20Optimize\x20for\x20few\x20browser\x20round\x20trips.\x20Each\x20Nova\x20CLI\x20call\x20has\x20high\x20latency.\x0a8.\x20Use\x203-5\x20high-level\x20`execute`\x20commands\x20total.\x20Each\x20`execute`\x20should\x20contain\x202-5\x20concrete\x20browser\x20steps\x20and\x20should\x20drive\x20to\x20the\x20next\x20milestone\x20page.\x0a9.\x20Do\x20not\x20split\x20a\x20simple\x20navigation\x20into\x20separate\x20commands\x20like\x20\x22open\x20menu\x22,\x20then\x20\x22click\x20link\x22,\x20then\x20\x22screenshot\x22.\x20Batch\x20those\x20into\x20one\x20`execute`\x20when\x20the\x20target\x20is\x20clear.\x0a10.\x20Do\x20not\x20use\x20`ask`\x20unless\x20you\x20are\x20genuinely\x20stuck\x20or\x20need\x20to\x20disambiguate\x20visible\x20page\x20content.\x20Prefer\x20reading\x20the\x20output\x20from\x20`execute`,\x20`snapshot`,\x20and\x20`verify`.\x0a11.\x20Use\x20`verify`\x20only\x20at\x20milestone\x20pages\x20that\x20map\x20directly\x20to\x20scenario\x20requirements.\x20Do\x20not\x20verify\x20after\x20every\x20click.\x0a12.\x20Take\x20screenshots\x20for\x20each\x20scenario\x20milestone\x20so\x20every\x20verified\x20step\x20has\x20reviewable\x20image\x20evidence,\x20including\x20the\x20final\x20state.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page.\x0a13.\x20After\x20the\x20required\x20initial\x20snapshot,\x20do\x20not\x20take\x20separate\x20milestone\x20snapshots\x20unless\x20you\x20cannot\x20understand\x20the\x20page\x20from\x20the\x20`execute`,\x20`verify`,\x20and\x20screenshot\x20outputs.\x0a14.\x20Mark\x20the\x20most\x20important\x20proof\x20screenshot\x20with\x20`key_`,\x20for\x20example\x20`'+_0x5812ad+'`.\x0a15.\x20As\x20soon\x20as\x20all\x20scenario\x20requirements\x20are\x20satisfied,\x20return\x20structured\x20output\x20immediately.\x20Do\x20not\x20keep\x20exploring,\x20asking,\x20or\x20taking\x20extra\x20screenshots.\x0a16.\x20Treat\x20a\x20Nova\x20`verify`\x20result\x20with\x20`ASSERTION_FAILED`\x20as\x20useful\x20evidence,\x20not\x20as\x20a\x20tool\x20crash.\x20Do\x20not\x20retry\x20the\x20same\x20assertion\x20or\x20search\x20for\x20alternatives\x20unless\x20the\x20scenario\x20explicitly\x20asks\x20you\x20to\x20find\x20any\x20matching\x20page.\x0a17.\x20Stay\x20within\x20the\x20pages\x20and\x20flow\x20named\x20by\x20the\x20scenario.\x20If\x20a\x20required\x20condition\x20is\x20absent\x20after\x20checking\x20the\x20relevant\x20named\x20page\x20once,\x20stop\x20and\x20return\x20\x22partial\x22\x20or\x20\x22failed\x22\x20with\x20the\x20missing\x20requirement.\x20Do\x20not\x20expand\x20into\x20unrelated\x20pages\x20or\x20broad\x20site\x20searches.\x0a18.\x20After\x20you\x20reach\x20and\x20screenshot\x20the\x20final\x20named\x20scenario\x20page,\x20do\x20not\x20execute\x20more\x20browser\x20commands.\x20Evaluate\x20any\x20\x22at\x20least\x20one\x20visited\x20page\x22\x20requirement\x20from\x20the\x20pages\x20already\x20visited\x20and\x20the\x20evidence\x20already\x20collected.\x0a19.\x20Do\x20not\x20run\x20`session\x20close`,\x20`session\x20list`,\x20`session\x20export`,\x20`script`,\x20`doctor`,\x20`--help`,\x20`aws`,\x20`find`,\x20`grep`,\x20`env`,\x20`printenv`,\x20package\x20managers,\x20or\x20setup\x20commands.\x20The\x20host\x20owns\x20setup,\x20auth,\x20session\x20cleanup,\x20and\x20artifact\x20export.\x0a20.\x20The\x20host\x20also\x20captures\x20final\x20screenshots,\x20snapshots,\x20and\x20exports\x20after\x20you\x20finish,\x20but\x20every\x20scenario\x20milestone\x20still\x20needs\x20an\x20accessible\x20screenshot.\x20If\x20the\x20last\x20milestone\x20is\x20the\x20final\x20browser\x20state\x20and\x20you\x20have\x20already\x20captured\x20it,\x20you\x20do\x20not\x20need\x20a\x20duplicate\x20final\x20screenshot.\x0a21.\x20Do\x20not\x20close\x20the\x20Nova\x20session.\x20The\x20host\x20exports\x20artifacts\x20after\x20you\x20finish.\x0a22.\x20The\x20structured\x20output\x20is\x20your\x20final\x20response.\x20After\x20returning\x20it,\x20do\x20not\x20write\x20a\x20separate\x20markdown\x20summary\x20or\x20repeat\x20the\x20findings.\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Nova\x20Act\x20CLI\x20commands\x20with\x20this\x20prefix:\x0a`'+_0x135115+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x50f024[_0x1a67df(0xc4)]()?'`'+_0x50f024+'`':_0x1a67df(0xbd))+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x50f024)+_0x1a67df(0x155)+_0x135115+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0x50f024+'`\x0a-\x20`'+_0x135115+_0x1a67df(0x140)+_0x50f024+_0x1a67df(0x9d)+_0x135115+_0x1a67df(0xb5)+quoteShellArg(_0x2ccda2)+'\x20'+_0x50f024+'`\x0a-\x20`'+_0x135115+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x5812ad)+'\x20'+_0x50f024+_0x1a67df(0x121);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x3316a4){const _0x4b24e9=_0x2fac39,_0x49c0e9=[..._0x3316a4[_0x4b24e9(0xcd)]()][_0x4b24e9(0xa0)]();let _0x5ae20e=0x0;for(const _0x43000b of _0x3316a4['values']()){_0x5ae20e+=_0x43000b;}return{'cliCommandCount':_0x5ae20e,'cliCommandsSeen':_0x49c0e9,'noCliCommandsCalled':_0x5ae20e===0x0};}export function createVerifyFeatureNovaCliHooks(_0x7fa5fd,_0x1c0037){const _0x1bfd4c=_0x2fac39,_0x245dda={'sheKJ':function(_0x3d1c47,_0x24d998){return _0x3d1c47!==_0x24d998;},'xpULn':'Bash','LQZTK':function(_0x49a363,_0x4c4036){return _0x49a363(_0x4c4036);},'kkNeJ':_0x1bfd4c(0xde),'tcAqd':function(_0x43c85f,_0x58dbc2){return _0x43c85f(_0x58dbc2);},'gteIe':function(_0x296d08,_0x1b5f31){return _0x296d08===_0x1b5f31;},'oINLG':_0x1bfd4c(0x141),'VXqLQ':function(_0x30dfe5,_0x4be8a5){return _0x30dfe5!==_0x4be8a5;},'TWkvJ':'PostToolUseFailure','fuihY':function(_0x457b4b,_0x2ed9be){return _0x457b4b!==_0x2ed9be;},'hlBuS':'nova_act_command_failure'},_0x2b2eb7=new Map(),_0x258caa=async _0x3459d4=>{const _0x5411b0=_0x1bfd4c;if(_0x3459d4['hook_event_name']!=='PreToolUse')return{};const _0x3654b7=_0x3459d4;if(_0x245dda['sheKJ'](_0x3654b7[_0x5411b0(0xc2)],_0x245dda[_0x5411b0(0xa6)]))return{};const _0x2bfd01=_0x3654b7['tool_input'],_0x2d78b9=extractBashCommand(_0x2bfd01);if(!_0x2d78b9)return{};const _0x36aee9=_0x245dda[_0x5411b0(0xa2)](getNovaActCliCommandBlockReason,_0x2d78b9);if(!_0x36aee9)return{};return{'decision':'block','reason':_0x36aee9};},_0xcd859d=async _0x38cb66=>{const _0xd625c3=_0x1bfd4c;if(_0x245dda['sheKJ'](_0x38cb66['hook_event_name'],'PostToolUse'))return{};const _0x2e31a0=_0x38cb66;if(_0x2e31a0[_0xd625c3(0xc2)]!==_0x245dda['xpULn'])return{};const _0x5a4805=_0x2e31a0['tool_input'],_0x3a9f6f=extractBashCommand(_0x5a4805);if(!_0x3a9f6f)return{};const _0x35f225=parseNovaActCliCommand(_0x3a9f6f);if(!_0x35f225)return{};_0x2b2eb7['set'](_0x35f225,(_0x2b2eb7['get'](_0x35f225)||0x0)+0x1),_0x7fa5fd[_0xd625c3(0x81)](_0x245dda[_0xd625c3(0x129)],{'subcommand':_0x35f225}),_0x7fa5fd['trackPhaseEnd'](_0x245dda['kkNeJ'],{'subcommand':_0x35f225,'commandPreview':_0x245dda[_0xd625c3(0xd3)](previewNovaActCliCommand,_0x3a9f6f)}),console[_0xd625c3(0xe7)](_0xd625c3(0x132)+formatNovaActCliLog(_0x3a9f6f,_0x35f225));if(_0x245dda['gteIe'](_0x35f225,'session\x20create')&&_0x1c0037)try{await _0x1c0037['start']();}catch(_0x391c4b){await _0x7fa5fd['trackPhaseError']('nova_act_artifact_recording',_0x391c4b,{'transport':_0x245dda[_0xd625c3(0x79)]});}return{};},_0x190b1b=async _0x4e9e6d=>{const _0x3b45b8=_0x1bfd4c;if(_0x245dda['VXqLQ'](_0x4e9e6d['hook_event_name'],_0x245dda['TWkvJ']))return{};const _0x11559b=_0x4e9e6d;if(_0x245dda['fuihY'](_0x11559b['tool_name'],_0x3b45b8(0xf7)))return{};return await _0x7fa5fd['trackPhaseError'](_0x245dda['hlBuS'],_0x11559b['error'],{'transport':_0x3b45b8(0x141),'toolName':'Bash'}),{};};return{'preToolUseHook':_0x258caa,'postToolUseHook':_0xcd859d,'postToolUseFailureHook':_0x190b1b,'commandCounts':_0x2b2eb7};}async function runNovaLifecycleCommand(_0x266fb5){const _0x2eeb28=_0x2fac39,_0xb7ba00={'SyyOg':function(_0x2c8a10,_0x3ab898){return _0x2c8a10(_0x3ab898);},'IUGNc':function(_0x2fe709,_0x47ebc7){return _0x2fe709(_0x47ebc7);},'qdYPc':function(_0x16c27a,_0xd8c5be){return _0x16c27a(_0xd8c5be);}},{novaOptions:_0x838a6,commandArgs:_0x20f517,telemetry:_0x3d5dc9,phase:_0x2ae0ad,metadata:_0x592fab,timeoutMs:_0x320aa5}=_0x266fb5;_0x3d5dc9['trackPhaseStart'](_0x2ae0ad,_0x592fab);try{const _0x367ac3=await _0xb7ba00[_0x2eeb28(0x145)](runNovaActCliCommand,{..._0x838a6,'commandArgs':_0x20f517,'cwd':process['cwd'](),'env':process['env'],'timeoutMs':_0x320aa5??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x3d5dc9[_0x2eeb28(0x13e)](_0x2ae0ad,{..._0x592fab,'subcommand':_0x367ac3[_0x2eeb28(0x91)]['subcommand'],'commandPreview':_0xb7ba00[_0x2eeb28(0x9a)](previewNovaActCliCommand,_0x367ac3['invocation'][_0x2eeb28(0x131)]),'stdoutPreview':previewNovaActCliCommand(_0x367ac3[_0x2eeb28(0x115)]),'stderrPreview':_0xb7ba00[_0x2eeb28(0xca)](previewNovaActCliCommand,_0x367ac3[_0x2eeb28(0x90)]),'logDir':extractNovaActLogDir(_0x367ac3['stdout'])});}catch(_0x321501){await _0x3d5dc9[_0x2eeb28(0xe9)](_0x2ae0ad,_0x321501,_0x592fab);throw _0x321501;}}export async function finalizeVerifyFeatureNovaCliSession(_0x1d9205){const _0x48ff00=_0x2fac39,_0x434271={'Wkxwu':_0x48ff00(0xba),'nGYAT':_0x48ff00(0xb4),'yGNBL':_0x48ff00(0xe6),'FVghu':'snapshot','ApxfL':function(_0x2cc870,_0x19bede,_0x17ceec){return _0x2cc870(_0x19bede,_0x17ceec);},'XAuKE':_0x48ff00(0x133),'ObvDJ':_0x48ff00(0x130),'rzRVY':function(_0x5bcafe,_0x1ffcb8,_0x3328ef){return _0x5bcafe(_0x1ffcb8,_0x3328ef);},'wiWPf':_0x48ff00(0x135),'QECcn':'export','QjGLe':_0x48ff00(0x156),'kbfch':_0x48ff00(0x102),'LxWyW':_0x48ff00(0xab),'aLxHj':'close'},{telemetry:_0x1e2266,novaOptions:_0x37947a,cliArtifactDir:_0xfe5e52,transportMetadata:_0x26e078,artifactRecorder:_0x385a63}=_0x1d9205,_0x53f7d1=[{'phase':_0x48ff00(0xec),'commandArgs':[_0x434271['Wkxwu'],_0x48ff00(0x130),buildCliArtifactPath(_0xfe5e52,_0x434271['nGYAT'])]},{'phase':_0x434271[_0x48ff00(0xcf)],'commandArgs':[_0x434271[_0x48ff00(0x8c)],_0x48ff00(0x130),_0x434271[_0x48ff00(0xcb)](buildCliArtifactPath,_0xfe5e52,'final-state.yaml')]},{'phase':_0x48ff00(0x8b),'commandArgs':[_0x434271['XAuKE'],'export',_0x48ff00(0xcc),'json',_0x434271[_0x48ff00(0xaa)],_0x434271['rzRVY'](buildCliArtifactPath,_0xfe5e52,_0x434271['wiWPf'])]},{'phase':'nova_act_session_report','commandArgs':['session',_0x434271['QECcn'],'--report',_0x434271[_0x48ff00(0xc3)],_0x434271['ApxfL'](buildCliArtifactPath,_0xfe5e52,_0x434271['kbfch'])]},{'phase':_0x434271[_0x48ff00(0x108)],'commandArgs':[_0x434271['XAuKE'],_0x434271['aLxHj']]}];for(const _0x2a31f3 of _0x53f7d1){_0x2a31f3[_0x48ff00(0xfd)]===_0x48ff00(0xab)&&await _0x385a63?.[_0x48ff00(0x144)]();try{await runNovaLifecycleCommand({'novaOptions':_0x37947a,'commandArgs':[..._0x2a31f3['commandArgs']],'telemetry':_0x1e2266,'phase':_0x2a31f3['phase'],'metadata':_0x26e078});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x5bc8bb){const _0x52656e=_0x2fac39,_0x458be4={'vwMDO':function(_0x2bb41c,_0x26f58d,_0xe6d0b4){return _0x2bb41c(_0x26f58d,_0xe6d0b4);},'neMQm':function(_0x2f2e2a,_0x4716a2){return _0x2f2e2a<_0x4716a2;},'jKjwo':function(_0x23c565,_0x3e5387){return _0x23c565+_0x3e5387;}},{cwd:_0x30b4e6,cliArtifactDir:_0x50eb1c,startTime:_0x5ed44a}=_0x5bc8bb,_0x59594d=[];await mkdir(_0x50eb1c,{'recursive':!![]});const _0x50aa64=await readdir(_0x30b4e6,{'withFileTypes':!![]});for(const _0x15dce3 of _0x50aa64){if(!_0x15dce3[_0x52656e(0x154)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x52656e(0x12c)](_0x15dce3['name']))continue;const _0x388a2f=_0x458be4[_0x52656e(0x89)](join,_0x30b4e6,_0x15dce3['name']),_0x2e8a5c=await stat(_0x388a2f);if(_0x458be4['neMQm'](_0x458be4[_0x52656e(0x12f)](_0x2e8a5c['mtimeMs'],0x7d0),_0x5ed44a))continue;const _0x534249=buildCliArtifactPath(_0x50eb1c,_0x15dce3[_0x52656e(0x148)]);if(_0x388a2f===_0x534249)continue;await rename(_0x388a2f,_0x534249),_0x59594d[_0x52656e(0xaf)](_0x15dce3['name']);}return _0x59594d[_0x52656e(0xa0)]();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x21e0c6){const _0x50cef3=_0x2fac39,_0x5ac029={'vSPgn':function(_0x4d1d78,_0x562022,_0xc5add8){return _0x4d1d78(_0x562022,_0xc5add8);},'qdlaN':'trace.zip','riQgn':function(_0x56153d,_0x29dedd){return _0x56153d(_0x29dedd);}},_0xf53c87=_0x5ac029['vSPgn'](join,_0x21e0c6,_0x5ac029['qdlaN']);try{return{'buffer':await readFile(_0xf53c87),'source':_0xf53c87};}catch{return{'buffer':await _0x5ac029[_0x50cef3(0x9f)](zipVerifyFeatureNovaArtifacts,_0x21e0c6),'source':_0x21e0c6};}}async function zipVerifyFeatureNovaArtifacts(_0x3fd64b){const _0x3647e0=_0x2fac39,_0x31dd86={'ofPTN':function(_0x103253,_0x5d9635,_0x4c68af,_0x204cb9){return _0x103253(_0x5d9635,_0x4c68af,_0x204cb9);},'CsQKG':'zip','PgFHi':_0x3647e0(0xc7),'uOSTV':'nova-user-data/*','HRyon':function(_0x4f9b9d,_0x42e10a){return _0x4f9b9d(_0x42e10a);}},_0x3eea9d=_0x31dd86['ofPTN'](join,_0x3fd64b,'..','nova-artifacts.zip');try{return await _0x31dd86['ofPTN'](execFileAsync,_0x31dd86[_0x3647e0(0x106)],[_0x31dd86['PgFHi'],_0x3eea9d,'.','-x',_0x31dd86['uOSTV']],{'cwd':_0x3fd64b}),await _0x31dd86[_0x3647e0(0xb1)](readFile,_0x3eea9d);}finally{await rm(_0x3eea9d,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x4ded53){const _0x354da7=_0x2fac39,_0x1c3cee={'cqxam':function(_0x1efbf9,_0x47140c,_0x36aee3){return _0x1efbf9(_0x47140c,_0x36aee3);}},_0x5ceb66=buildNovaActCliInvocation(_0x4ded53['novaOptions'],_0x4ded53[_0x354da7(0x10a)]);return{'command':_0x5ceb66[_0x354da7(0xe8)],'args':_0x5ceb66[_0x354da7(0xe2)],'commandPreview':previewNovaActCliCommand(_0x5ceb66['shellCommand']),'subcommand':_0x5ceb66[_0x354da7(0x11d)],'sharedOptionsSuffix':_0x1c3cee[_0x354da7(0x7b)](buildNovaActCliSharedOptionsSuffix,_0x4ded53[_0x354da7(0x10d)],_0x4ded53['commandArgs'])};}function _0x3a38(){const _0xa50888=['stderr','invocation','queueTraceSample','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x27s\x20origin.\x0a-\x20Do\x20not\x20navigate\x20to\x20any\x20different\x20protocol,\x20host,\x20or\x20port.\x0a-\x20If\x20the\x20browser\x20leaves\x20this\x20origin,\x20navigate\x20back\x20once.\x20If\x20you\x20cannot\x20recover,\x20return\x20evaluation\x20\x22blocked\x22.\x0a','getFrameDir','wait\x20for\x20page\x20condition','goto','\x20screenshot\x20--output\x20','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','allSettled','IUGNc','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','10QXLCuM','`\x0a-\x20`','pages','riQgn','sort','ptkrZ','LQZTK','startAttempted','VCEFB','JoXQO','xpULn','filter','gMlbO','ask\x20page\x20question','ObvDJ','nova_act_session_close','30040PaJBCm','\x0a\x0a##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Nova\x20Act\x20CLI\x20only.\x20Do\x20not\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20The\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20through\x20the\x20browser\x20command\x20prefix\x20below.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20check\x20AWS/auth\x20status,\x20read\x20env\x20files,\x20run\x20setup,\x20or\x20call\x20raw\x20`act\x20browser`.\x0a3.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20`','execute','push','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','HRyon','Nova\x20command\x20`','nRQGH','key_final-state.png','\x20snapshot\x20--output\x20','oZJkx','JFcFC','export\x20Nova\x20session','MtGUx','screenshot','domRef','ms-playwright','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','**\x20(','qzILX','tracingStarted','aqsdA','tool_name','QjGLe','trim','Caches','libvpx-vp9','-qr','PtlgL','en-US','qdYPc','ApxfL','--format','keys','locator','yGNBL','reverse','przje','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','tcAqd','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','short','ffmpeg-','capture\x20screenshot','pOTJR','Pykxw','oSrSo','telemetry','qxegz','-loglevel','nova_act_command','IfPOn','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','rezlk','args','999831lLuHJh','cMiAY','SNfUX','nova_act_final_snapshot','log','command','trackPhaseError','wbvvH','startsWith','nova_act_final_screenshot','session\x20create','notes','nova-video-frames','GbpFu','The\x20command\x20prefix\x20already\x20injects\x20session,\x20auth,\x20region,\x20workflow,\x20user-data,\x20headless,\x20and\x20JSON\x20options.\x0aDo\x20not\x20run\x20raw\x20`act\x20browser`.\x20Do\x20not\x20add\x20`--auth-mode`,\x20`--aws-profile`,\x20`--region`,\x20`--workflow-name`,\x20`--session-id`,\x20`--user-data-dir`,\x20`--headless`,\x20or\x20`--headed`\x20yourself.','replace','yuv420p','traceSampleTimer','\x20session\x20create\x20','xLQOf','Bash','content','key_03_success-state.png','nova_act_artifact_recording','00_initial-state.yml','3371946efcvAp','phase','error','encodeScreencastVideo','browser','videos','nova-report','traceSampleCount','frameCount',']\x20**','CsQKG','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','LxWyW','flatMap','commandArgs','stopped','unaddressedComments','novaOptions','7VwRPuB','Page.screencastFrameAck','navigate\x20browser','\x20(on\x20element:\x20<','frame-%06d.jpg','browser_pid','startTraceSampling','stdout','nQjSn','14129544dazadm','uqEzI','state','):\x20\x22','start','contexts','subcommand','qjxuz','map','bzRTQ','`\x0a\x0a##\x20Screenshot\x20Guidelines\x0aTake\x20screenshots\x20at\x20scenario\x20milestones\x20so\x20a\x20human\x20can\x20review\x20each\x20completed\x20step\x20and\x20the\x20final\x20state.\x20Use\x20numbered\x20filenames\x20and\x20prefix\x201-2\x20key\x20proof\x20screenshots\x20with\x20`key_`.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page\x20when\x20an\x20existing\x20verifier\x20screenshot\x20or\x20host\x20final\x20screenshot\x20is\x20accessible.\x0a\x0a##\x20Snapshot\x20Guidelines\x0aYou\x20must\x20take\x20the\x20initial\x20snapshot\x20listed\x20above.\x20After\x20that,\x20prefer\x20screenshots\x20plus\x20the\x20page\x20summaries\x20returned\x20by\x20`execute`\x20and\x20`verify`.\x20Only\x20call\x20`snapshot`\x20again\x20if\x20you\x20cannot\x20determine\x20the\x20next\x20action\x20or\x20evaluation\x20from\x20those\x20outputs.\x0a\x0a##\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20initial\x20snapshot\x20and\x20screenshot,\x20check\x20for\x20blocking\x20HTTP\x20errors,\x20framework\x20error\x20pages,\x20blank\x20pages,\x20and\x20authentication\x20failures.\x20If\x20any\x20blocking\x20issue\x20is\x20present,\x20stop\x20and\x20return\x20evaluation\x20\x22blocked\x22\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Failed\x20Assertions\x0aIf\x20`verify`\x20returns\x20`ASSERTION_FAILED`,\x20use\x20its\x20`actual`\x20and\x20`evidence`\x20fields\x20as\x20proof\x20for\x20the\x20final\x20evaluation.\x20Continue\x20only\x20to\x20finish\x20other\x20already-named\x20scenario\x20milestones.\x20Do\x20not\x20retry,\x20ask\x20about,\x20or\x20search\x20around\x20the\x20failed\x20condition.\x0a\x0a##\x20Final\x20Page\x20Stop\x0aWhen\x20the\x20scenario\x20names\x20a\x20final\x20page\x20or\x20final\x20navigation\x20target,\x20that\x20page\x20is\x20the\x20last\x20browser\x20milestone.\x20Once\x20it\x20is\x20loaded\x20and\x20screenshotted,\x20make\x20the\x20final\x20evaluation\x20from\x20the\x20collected\x20evidence.\x20Do\x20not\x20navigate,\x20search,\x20ask,\x20or\x20verify\x20beyond\x20that\x20final\x20page\x20unless\x20the\x20scenario\x20explicitly\x20names\x20another\x20page.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\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.','aqHwb','SPrJM','close','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','readSessionMetadataWithRetry','Evaluate\x20visited-page\x20aggregate\x20requirements\x20from\x20the\x20collected\x20URLs,\x20titles,\x20headings,\x20verify\x20results,\x20and\x20screenshots.\x20Do\x20not\x20run\x20another\x20browser\x20command\x20to\x20re-check\x20pages\x20already\x20visited.','qmoNY','kkNeJ','mqqnS','captureTraceSample','test','frameSession','utf-8','jKjwo','--output','shellCommand','[nova-act-cli]\x20','session','screencastStarted','nova-session-export.json','stopScreencast','sntdc','evaluate','element','dAKdP','toLocaleDateString','snapshot','finally','trackPhaseEnd','canonicalFlow','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','nova-act-cli','You\x20are\x20testing\x20Nova\x20Act\x20browser\x20automation.\x20Your\x20task\x20is\x20simple.\x0a\x0aUse\x20Bash\x20and\x20Nova\x20Act\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','EoLva','stop','SyyOg','scale=trunc(iw/2)*2:trunc(ih/2)*2','>\x20\x22','name','context','450WqDVVD','nova_act_artifact_recording_stop','ask','traceSampleInFlight','225005jdMKRL','9549soLvBB','2456ramsBV','-framerate','cdp_endpoint','params','isFile','\x0a\x0aExamples:\x0a-\x20`','--output-dir','description','verify','sessionId','oINLG','ffmpeg-linux','cqxam','2gXGutM','8746331TMxrby','gxVeS','KIfqa','cliArtifactDir','trackPhaseStart','tracing','.json','session-recording.webm','catch','BwSDA','zNrqn','match','vwMDO','`\x0a2.\x20Run\x20`','nova_act_session_export','FVghu','split','.act_cli','wait-for'];_0x3a38=function(){return _0xa50888;};return _0x3a38();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x5a25a7,_0x55ae86){const _0x3d734f=_0x362c,_0x2bef41=_0x5a25a7();while(!![]){try{const _0x28dde0=parseInt(_0x3d734f(0xc5))/0x1+-parseInt(_0x3d734f(0x87))/0x2+parseInt(_0x3d734f(0xbd))/0x3*(parseInt(_0x3d734f(0x7b))/0x4)+-parseInt(_0x3d734f(0x82))/0x5+-parseInt(_0x3d734f(0xb6))/0x6*(-parseInt(_0x3d734f(0xc7))/0x7)+parseInt(_0x3d734f(0x7f))/0x8*(parseInt(_0x3d734f(0x7c))/0x9)+parseInt(_0x3d734f(0x72))/0xa;if(_0x28dde0===_0x55ae86)break;else _0x2bef41['push'](_0x2bef41['shift']());}catch(_0x15ed50){_0x2bef41['push'](_0x2bef41['shift']());}}}(_0x1840,0x4b578));import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';import{parseRangerwrightCliCommand,runRangerwrightCliCommand}from'./utils/rangerwrightCli.js';const RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,RANGERWRIGHT_CLI_PREVIEW_LIMIT=0xf0;function truncatePreview(_0x1b9893,_0x226348=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x21f4f7=_0x362c;return _0x1b9893['length']>_0x226348?_0x1b9893['slice'](0x0,_0x226348)+_0x21f4f7(0x99):_0x1b9893;}function _0x362c(_0x4fc423,_0x268cd3){_0x4fc423=_0x4fc423-0x6f;const _0x18404d=_0x1840();let _0x362ce8=_0x18404d[_0x4fc423];return _0x362ce8;}function extractShellValue(_0xe93bab){if(!_0xe93bab)return null;return _0xe93bab[0x1]??_0xe93bab[0x2]??_0xe93bab[0x3]??null;}function extractFirstCommandArgument(_0x2e55f9,_0x93bfd7){const _0x57edac=_0x362c,_0x2980fa={'eNLQV':_0x57edac(0x88)},_0x12f972=_0x93bfd7['replace'](/[.*+?^${}()|[\]\\]/g,_0x2980fa[_0x57edac(0xaf)]);return extractShellValue(_0x2e55f9[_0x57edac(0x81)](new RegExp(_0x57edac(0xa1)+_0x12f972+_0x57edac(0x6f))));}function formatCommandTarget(_0x21de30){const _0x33f4a3=_0x362c;if(!_0x21de30)return _0x33f4a3(0x8d);if(/^e\d+$/i[_0x33f4a3(0x94)](_0x21de30))return'ref\x20'+_0x21de30;return JSON['stringify'](truncatePreview(_0x21de30,0x78));}function formatRangerwrightCliLog(_0x54b940,_0x188987){const _0x4378cf=_0x362c,_0x25ad98={'CdIHo':'open\x20and\x20inspect','aqjbX':_0x4378cf(0xae),'VSyoc':_0x4378cf(0x75),'PSMZe':function(_0x156338,_0x41ce03){return _0x156338(_0x41ce03);},'sEfVO':_0x4378cf(0x93),'eVjIg':'inspect','maufg':'inspect\x20page','JAIhO':'stop\x20tracing','xhXVt':_0x4378cf(0xb1),'LkXfX':'close'};switch(_0x188987){case _0x4378cf(0xad):{const _0x4e11a0=extractFirstCommandArgument(_0x54b940,_0x188987);return _0x4e11a0?'open\x20and\x20inspect\x20'+_0x4e11a0:_0x25ad98[_0x4378cf(0x92)];}case _0x25ad98[_0x4378cf(0x9c)]:return'click\x20and\x20inspect\x20'+formatCommandTarget(extractFirstCommandArgument(_0x54b940,_0x188987));case _0x25ad98[_0x4378cf(0x7a)]:case _0x4378cf(0x79):return'fill\x20'+_0x25ad98['PSMZe'](formatCommandTarget,extractFirstCommandArgument(_0x54b940,_0x188987));case'back-and-inspect':return _0x25ad98[_0x4378cf(0xa6)];case _0x25ad98['eVjIg']:return _0x25ad98['maufg'];case'tracing-stop':return _0x25ad98['JAIhO'];case _0x25ad98['xhXVt']:return'stop\x20video\x20recording';case _0x25ad98['LkXfX']:return _0x4378cf(0xba);default:return _0x188987;}}function renderScenarioSections(_0x3d4270){const _0x15cb05=_0x362c,_0x2696cb={'VTaun':'en-US','pkONp':'numeric','STjdF':function(_0x19ae93,_0x39378f){return _0x19ae93>_0x39378f;}},{checklistItem:_0xd74c07,itemFeedback:_0x6eae7d}=_0x3d4270,_0x35dbac=_0xd74c07[_0x15cb05(0x9a)]?_0x15cb05(0x85)+_0xd74c07['notes']:'';let _0x282ba4='';if(_0x6eae7d&&_0x2696cb['STjdF'](_0x6eae7d[_0x15cb05(0x86)][_0x15cb05(0x95)],0x0)){const _0x13022e=_0x6eae7d[_0x15cb05(0x86)][_0x15cb05(0xa2)](_0x46d3f6=>{const _0x212be4=_0x15cb05,_0x5e551d=new Date(_0x46d3f6[_0x212be4(0xb5)])[_0x212be4(0xa5)](_0x2696cb['VTaun'],{'month':'short','day':_0x2696cb['pkONp']}),_0x49650e=_0x46d3f6[_0x212be4(0x8f)]||_0x46d3f6['authorEmail']||'Reviewer',_0x2e24b0=_0x46d3f6['domRef']?'\x20(on\x20element:\x20<'+(_0x46d3f6[_0x212be4(0x91)][_0x212be4(0xbe)][_0x212be4(0xc0)](_0x212be4(0xb8))[_0x212be4(0xb9)]()?.['split'](':')[0x0]||'element')+'>\x20\x22'+(_0x46d3f6[_0x212be4(0x91)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return _0x212be4(0xc2)+_0x46d3f6['id']+']\x20'+_0x49650e+'\x20('+_0x5e551d+'):\x20\x22'+_0x46d3f6['content']+'\x22'+_0x2e24b0;})[_0x15cb05(0x97)]('\x0a');_0x282ba4=_0x15cb05(0x74)+_0x13022e;}const _0x178d20=_0x6eae7d?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x6eae7d[_0x15cb05(0x9e)]:'';return''+_0xd74c07[_0x15cb05(0xbb)]+_0x35dbac+_0x282ba4+_0x178d20;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x66ec69){const _0x3a5d57=_0x362c,_0x14aecf={'VJhcd':'01_initial-state.png','JuVCf':_0x3a5d57(0xb7),'PKtyN':function(_0x572c93,_0x11fc52){return _0x572c93(_0x11fc52);},'bHBjX':_0x3a5d57(0x84)},{checklistItem:_0x46696d,itemFeedback:_0x782efe,taskDescription:_0x4cdfb2,commandPrefix:_0x325723,isCdpMode:_0x448f4c,url:_0x1e1af7,cdpEndpoint:_0x5d1730,loginInstructions:_0x4244b5}=_0x66ec69,_0x2b35cc=_0x14aecf[_0x3a5d57(0x8a)],_0x24bb75=_0x14aecf['JuVCf'],_0x4acfd4=_0x448f4c?_0x325723+_0x3a5d57(0x77)+_0x14aecf['PKtyN'](quoteShellArg,_0x2b35cc):_0x325723+'\x20open-and-inspect\x20'+quoteShellArg(_0x1e1af7??_0x14aecf[_0x3a5d57(0xa3)])+_0x3a5d57(0xc6)+_0x14aecf['PKtyN'](quoteShellArg,_0x2b35cc),_0x244862=_0x448f4c?_0x3a5d57(0x76)+_0x5d1730+'.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.':_0x3a5d57(0xc3)+_0x1e1af7+_0x3a5d57(0xa8),_0x30565c=_0x4244b5?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x4244b5+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return _0x3a5d57(0xa4)+renderScenarioSections({'checklistItem':_0x46696d,'itemFeedback':_0x782efe})+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x4cdfb2+'\x0a\x0a'+_0x244862+_0x30565c+_0x3a5d57(0xb3)+_0x325723+_0x3a5d57(0x8b)+_0x4acfd4+'\x0a\x0aPrefer\x20open-and-inspect\x20and\x20click-and-inspect\x20when\x20you\x20need\x20a\x20fresh\x20snapshot\x20plus\x20evidence.\x0a\x0aUse\x20back-and-inspect\x20to\x20return\x20to\x20the\x20previous\x20page\x20after\x20checking\x20a\x20detail\x20page.\x20Refresh\x20refs\x20after\x20going\x20back.\x0a\x0aEach\x20command\x20returns\x20JSON\x20with\x20success,\x20data,\x20and\x20error\x20fields.\x0a\x0aUse\x20data.title,\x20data.headings,\x20data.pageText,\x20and\x20data.snapshotText\x20together.\x20snapshotText\x20is\x20best\x20for\x20refs\x20and\x20controls;\x20pageText\x20is\x20valid\x20visible\x20evidence\x20for\x20page\x20content.\x0a\x0aDo\x20not\x20verify\x20from\x20a\x20broad\x20landing,\x20index,\x20category,\x20search,\x20or\x20navigation\x20page\x20when\x20the\x20task\x20asks\x20for\x20a\x20specific\x20page,\x20topic,\x20item,\x20or\x20action.\x20Click\x20and\x20inspect\x20the\x20most\x20specific\x20visible\x20target\x20first;\x20if\x20no\x20specific\x20target\x20exists,\x20report\x20the\x20missing\x20target.\x0a\x0aSave\x20screenshots\x20by\x20using\x20--screenshot-path\x20on\x20inspect\x20commands.\x20Relative\x20screenshot\x20paths\x20are\x20saved\x20under\x20the\x20run\x20artifact\x20directory.\x20Do\x20not\x20call\x20screenshot\x20--path.\x0a\x0aExample:\x0a\x0a'+_0x325723+'\x20click-and-inspect\x20e37\x20--screenshot-path\x20'+quoteShellArg(_0x24bb75)+'\x0a\x0aRefs\x20like\x20e37\x20are\x20only\x20valid\x20for\x20the\x20snapshot\x20that\x20produced\x20them.\x20Refresh\x20refs\x20after\x20navigation.\x0a\x0aUse\x20short\x20concrete\x20checkpoints\x20internally:\x20what\x20target\x20is\x20visible,\x20what\x20command\x20changes\x20state,\x20and\x20what\x20evidence\x20is\x20still\x20missing.\x20Issue\x20one\x20browser\x20command\x20at\x20a\x20time.\x20After\x20navigation,\x20validation,\x20or\x20a\x20changed\x20page,\x20inspect\x20before\x20deciding\x20the\x20next\x20action.\x0a\x0aBefore\x20reporting\x20success,\x20compare\x20each\x20required\x20CTA,\x20page\x20purpose,\x20and\x20topic\x20against\x20visible\x20page\x20evidence.\x20A\x20related\x20page\x20does\x20not\x20satisfy\x20a\x20different\x20required\x20topic\x20unless\x20the\x20page\x20text\x20directly\x20supports\x20that\x20topic\x20or\x20an\x20obvious\x20synonym.\x20If\x20required\x20evidence\x20is\x20missing,\x20mismatched,\x20or\x20only\x20inferred\x20from\x20adjacent\x20content,\x20report\x20that\x20plainly\x20and\x20do\x20not\x20mark\x20the\x20task\x20verified.\x0a\x0aFor\x20goals\x20with\x20more\x20than\x20one\x20required\x20condition,\x20use\x20an\x20internal\x20checklist\x20built\x20from\x20the\x20user\x27s\x20exact\x20requested\x20conditions.\x20Verify\x20each\x20checklist\x20item\x20against\x20visible\x20evidence\x20from\x20the\x20latest\x20browser\x20result.\x20If\x20any\x20item\x20lacks\x20direct\x20evidence,\x20report\x20the\x20task\x20as\x20not\x20verified\x20and\x20name\x20the\x20missing\x20item.\x0a\x0aOn\x20forms,\x20fill\x20only\x20visible\x20task-relevant\x20editable\x20fields\x20in\x20the\x20current\x20step\x20before\x20submitting\x20or\x20advancing.\x20Use\x20labels,\x20placeholders,\x20and\x20current\x20page\x20text\x20to\x20decide\x20which\x20fields\x20are\x20required.\x20Do\x20not\x20fill\x20fields\x20that\x20are\x20not\x20visible\x20in\x20the\x20latest\x20snapshot.\x0a\x0aUse\x20one\x20fill\x20command\x20per\x20field.\x20Do\x20not\x20combine\x20multiple\x20fields\x20into\x20one\x20fill\x20command\x20with\x20semicolons.\x0a\x0aIf\x20an\x20inspect-action\x20click\x20returns\x20the\x20same\x20page\x20or\x20shows\x20validation,\x20inspect\x20the\x20current\x20page\x20and\x20fill\x20blank\x20required\x20fields\x20before\x20retrying.\x20Do\x20not\x20repeat\x20the\x20same\x20blocked\x20click\x20unchanged.\x0a\x0aIf\x20a\x20click-and-inspect\x20result\x20keeps\x20the\x20same\x20URL\x20and\x20does\x20not\x20show\x20the\x20intended\x20target,\x20treat\x20it\x20as\x20a\x20no-op.\x20Refresh\x20refs\x20and\x20choose\x20a\x20different\x20visible\x20link,\x20or\x20use\x20back-and-inspect\x20if\x20you\x20need\x20the\x20prior\x20page.\x0a\x0aA\x20page\x20with\x20visible\x20required\x20fields\x20and\x20a\x20next,\x20submit,\x20continue,\x20or\x20confirm\x20control\x20is\x20still\x20actionable.\x20Fill\x20the\x20required\x20fields\x20with\x20values\x20from\x20the\x20task\x20before\x20reporting\x20incomplete\x20or\x20blocked.\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20first\x20inspect\x20result,\x20check\x20for\x20blocking\x20errors:\x0a-\x20HTTP\x20404,\x20500,\x20400,\x20\x22Not\x20Found\x22,\x20\x22Server\x20Error\x22,\x20or\x20\x22Bad\x20Request\x22\x0a-\x20Framework\x20error\x20pages\x0a-\x20Blank\x20pages\x20with\x20no\x20content\x0a-\x20App\x20crash\x20or\x20error\x20dialogs\x0a\x0aIf\x20any\x20blocking\x20error\x20is\x20visible,\x20return\x20evaluation\x20\x22blocked\x22\x20immediately\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x589762){const _0xfb3c27=_0x362c,_0x29201a={'IgWcq':function(_0x2c3cfb,_0x1d9774){return _0x2c3cfb(_0x1d9774);}},_0x3ea0ed='01_mozilla-homepage.png',_0x3cf54d='key_02_learn-more.png';return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x20Every\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x589762['commandPrefix']+'\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x0a\x0a1.\x20Run\x20`'+_0x589762[_0xfb3c27(0xb2)]+'\x20open-and-inspect\x20'+quoteShellArg(_0x589762[_0xfb3c27(0x7d)])+_0xfb3c27(0xc6)+_0x29201a[_0xfb3c27(0xa9)](quoteShellArg,_0x3ea0ed)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0x589762['commandPrefix']+_0xfb3c27(0xb4)+quoteShellArg(_0x3cf54d)+_0xfb3c27(0x73);}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x5693f0){const _0x5edf8b=_0x362c,_0x53aea6=[..._0x5693f0['keys']()]['sort']();let _0x51ce77=0x0;for(const _0x2c87e7 of _0x5693f0[_0x5edf8b(0x9b)]()){_0x51ce77+=_0x2c87e7;}return{'cliCommandCount':_0x51ce77,'cliCommandsSeen':_0x53aea6,'noCliCommandsCalled':_0x51ce77===0x0};}export function createVerifyFeatureRangerwrightCliHooks(_0x398316){const _0x4bcb93=_0x362c,_0xf6ed22={'yIuSD':function(_0x266a8c,_0x69a0af){return _0x266a8c!==_0x69a0af;},'iTLaK':'Bash','WPtSE':function(_0x58391d,_0x36a036){return _0x58391d+_0x36a036;},'miVkY':_0x4bcb93(0xab),'jeeeO':function(_0x13d4f4,_0x4779d3){return _0x13d4f4(_0x4779d3);},'jHlhT':function(_0x102d35,_0x3ea6c4,_0x3aba23){return _0x102d35(_0x3ea6c4,_0x3aba23);},'nZdAk':function(_0x5355b6,_0x55ec9c){return _0x5355b6!==_0x55ec9c;},'AHdoR':_0x4bcb93(0xaa),'VJNDu':'rangerwright-cli'},_0x1139c5=new Map(),_0x4ab573=async _0x27d4f2=>{const _0x2a4023=_0x4bcb93;if(_0x27d4f2[_0x2a4023(0xbc)]!=='PostToolUse')return{};const _0x581d65=_0x27d4f2;if(_0xf6ed22['yIuSD'](_0x581d65[_0x2a4023(0xa7)],_0xf6ed22[_0x2a4023(0x8e)]))return{};const _0x52310b=_0x581d65['tool_input'],_0x3bbb8c=extractBashCommand(_0x52310b);if(!_0x3bbb8c)return{};const _0x8f6790=parseRangerwrightCliCommand(_0x3bbb8c);if(!_0x8f6790)return{};return _0x1139c5[_0x2a4023(0x98)](_0x8f6790,_0xf6ed22[_0x2a4023(0x71)](_0x1139c5[_0x2a4023(0xc4)](_0x8f6790)||0x0,0x1)),_0x398316[_0x2a4023(0x9f)](_0xf6ed22['miVkY'],{'subcommand':_0x8f6790}),_0x398316[_0x2a4023(0x9d)]('rangerwright_cli_command',{'subcommand':_0x8f6790,'commandPreview':_0xf6ed22[_0x2a4023(0x83)](truncatePreview,_0x3bbb8c)}),console['log'](_0x2a4023(0x96)+_0xf6ed22[_0x2a4023(0x8c)](formatRangerwrightCliLog,_0x3bbb8c,_0x8f6790)),{};},_0x34c00b=async _0x316d94=>{const _0x11cb8d=_0x4bcb93;if(_0x316d94[_0x11cb8d(0xbc)]!==_0x11cb8d(0x89))return{};const _0x477d0a=_0x316d94;if(_0xf6ed22['nZdAk'](_0x477d0a['tool_name'],_0xf6ed22['iTLaK']))return{};return await _0x398316['trackPhaseError'](_0xf6ed22['AHdoR'],_0x477d0a['error'],{'transport':_0xf6ed22['VJNDu'],'toolName':_0xf6ed22[_0x11cb8d(0x8e)]}),{};};return{'postToolUseHook':_0x4ab573,'postToolUseFailureHook':_0x34c00b,'commandCounts':_0x1139c5};}async function runRangerwrightLifecycleCommand(_0xc73541){const _0x1ac73c=_0x362c,_0x56f0e4={'hfyCy':function(_0x3c0f44,_0x2eb5a9){return _0x3c0f44??_0x2eb5a9;}},{options:_0x1124d1,commandArgs:_0x492599,env:_0xe711f0,telemetry:_0x319aea,phase:_0x55d006,metadata:_0x12eb33,timeoutMs:_0x5b5c71}=_0xc73541;_0x319aea[_0x1ac73c(0x9f)](_0x55d006,_0x12eb33);try{const _0x3ff3b8=await runRangerwrightCliCommand({..._0x1124d1,'commandArgs':_0x492599,'cwd':process['cwd'](),'env':_0xe711f0,'timeoutMs':_0x56f0e4['hfyCy'](_0x5b5c71,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x319aea['trackPhaseEnd'](_0x55d006,{..._0x12eb33,'subcommand':_0x3ff3b8[_0x1ac73c(0xb0)][_0x1ac73c(0x80)],'stdoutPreview':truncatePreview(_0x3ff3b8[_0x1ac73c(0xac)],0x7d0),'stderrPreview':truncatePreview(_0x3ff3b8[_0x1ac73c(0x90)],0x7d0)});}catch(_0x354c02){await _0x319aea['trackPhaseError'](_0x55d006,_0x354c02,_0x12eb33);throw _0x354c02;}}function _0x1840(){const _0x5c3f36=['aqjbX','trackPhaseEnd','canonicalFlow','trackPhaseStart','okfzJ','(?:^|\x5cs)','map','bHBjX','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','toLocaleDateString','sEfVO','tool_name','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port.\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists,\x20navigate\x20to\x20it\x20only\x20under\x20this\x20base\x20URL.','IgWcq','rangerwright_cli_command_failure','rangerwright_cli_command','stdout','open-and-inspect','click-and-inspect','eNLQV','invocation','video-stop','commandPrefix','\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','createdAt','4134psqlmh','key_99_final-state.png','\x20>\x20','pop','close\x20browser\x20session','description','hook_event_name','141jhOLxE','selector','rangerwright_cli_close','split','commandArgs','-\x20[','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','get','314511ebtYqD','\x20--screenshot-path\x20','3199iCXRfz','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','ynjtK','WPtSE','3601660XdOyvt','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','\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\x20in\x20addressedCommentIds.\x0a\x0a','fill','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','\x20inspect\x20--screenshot-path\x20','rangerwright_cli_video_stop','fill-and-inspect','VSyoc','24044ZwQiuk','90qxYUca','url','rangerwright_cli_tracing_stop','70792iVnNHV','subcommand','match','2541285iYMubR','jeeeO','about:blank','\x0a\x0a##\x20Additional\x20Notes\x0a','unaddressedComments','1087400iBDCRr','\x5c$&','PostToolUseFailure','VJhcd','\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x20Browser\x20Trek\x20only\x20counts\x20literal\x20Rangerwright\x20command\x20invocations.\x0a\x0aTreat\x20the\x20command\x20prefix\x20as\x20immutable.\x20Copy\x20it\x20exactly,\x20then\x20append\x20one\x20supported\x20Rangerwright\x20subcommand\x20and\x20its\x20arguments.\x20If\x20a\x20browser\x20command\x20fails\x20because\x20the\x20binary\x20path\x20is\x20missing\x20or\x20the\x20command\x20syntax\x20is\x20malformed,\x20retry\x20once\x20with\x20the\x20exact\x20prefix\x20from\x20this\x20prompt\x20before\x20deciding\x20the\x20task\x20is\x20blocked.\x0a\x0aFirst\x20command:\x0a\x0a','jHlhT','target','iTLaK','authorName','stderr','domRef','CdIHo','go\x20back\x20and\x20inspect','test','length','[rangerwright-cli]\x20','join','set','...','notes','values'];_0x1840=function(){return _0x5c3f36;};return _0x1840();}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x2b568a){const _0x4383e4=_0x362c,_0x4373c3={'ynjtK':_0x4383e4(0x78),'okfzJ':_0x4383e4(0xb1),'xzXfa':function(_0x45f651,_0x371e8f){return _0x45f651(_0x371e8f);}},{telemetry:_0x33fadc,rangerwrightOptions:_0x4d0390,env:_0x21e0dd,transportMetadata:_0x5bedab}=_0x2b568a,_0xc5f469=[{'phase':_0x4383e4(0x7e),'commandArgs':['tracing-stop']},{'phase':_0x4373c3[_0x4383e4(0x70)],'commandArgs':[_0x4373c3[_0x4383e4(0xa0)]]},{'phase':_0x4383e4(0xbf),'commandArgs':['close']}];for(const _0xb94daa of _0xc5f469){try{await _0x4373c3['xzXfa'](runRangerwrightLifecycleCommand,{'options':_0x4d0390,'commandArgs':[..._0xb94daa[_0x4383e4(0xc1)]],'env':_0x21e0dd,'telemetry':_0x33fadc,'phase':_0xb94daa['phase'],'metadata':_0x5bedab});}catch{}}}
|
|
1
|
+
(function(_0x40041b,_0x1253b0){const _0xdf0aa7=_0x1684,_0x51e5f6=_0x40041b();while(!![]){try{const _0x3f3d7d=parseInt(_0xdf0aa7(0xdf))/0x1+-parseInt(_0xdf0aa7(0xbe))/0x2+-parseInt(_0xdf0aa7(0xc1))/0x3*(-parseInt(_0xdf0aa7(0xb8))/0x4)+parseInt(_0xdf0aa7(0xd6))/0x5+parseInt(_0xdf0aa7(0xb2))/0x6+-parseInt(_0xdf0aa7(0xbf))/0x7*(parseInt(_0xdf0aa7(0xc5))/0x8)+parseInt(_0xdf0aa7(0xb9))/0x9*(-parseInt(_0xdf0aa7(0xd7))/0xa);if(_0x3f3d7d===_0x1253b0)break;else _0x51e5f6['push'](_0x51e5f6['shift']());}catch(_0x2f959f){_0x51e5f6['push'](_0x51e5f6['shift']());}}}(_0x31b4,0x304c0));import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';import{parseRangerwrightCliCommand,runRangerwrightCliCommand}from'./utils/rangerwrightCli.js';const RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,RANGERWRIGHT_CLI_PREVIEW_LIMIT=0xf0;function truncatePreview(_0x56344c,_0x164bca=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x54692b=_0x1684,_0x3b2fd3={'USBOe':function(_0x5d606a,_0x5e80e0){return _0x5d606a>_0x5e80e0;},'lGnyC':function(_0x396ae3,_0x573703){return _0x396ae3+_0x573703;},'NKNqN':_0x54692b(0xb4)};return _0x3b2fd3['USBOe'](_0x56344c['length'],_0x164bca)?_0x3b2fd3[_0x54692b(0xa9)](_0x56344c['slice'](0x0,_0x164bca),_0x3b2fd3[_0x54692b(0xda)]):_0x56344c;}function extractShellValue(_0x451247){if(!_0x451247)return null;return _0x451247[0x1]??_0x451247[0x2]??_0x451247[0x3]??null;}function extractFirstCommandArgument(_0x286b76,_0x28a8e1){const _0x46b18d=_0x1684,_0x5511b6=_0x28a8e1[_0x46b18d(0xe5)](/[.*+?^${}()|[\]\\]/g,_0x46b18d(0xb6));return extractShellValue(_0x286b76['match'](new RegExp(_0x46b18d(0xbc)+_0x5511b6+_0x46b18d(0xdb))));}function formatCommandTarget(_0x2a6aac){const _0x1d02d5=_0x1684,_0x3926dd={'xMKCx':_0x1d02d5(0xd9)};if(!_0x2a6aac)return _0x3926dd['xMKCx'];if(/^e\d+$/i[_0x1d02d5(0xc3)](_0x2a6aac))return _0x1d02d5(0xa3)+_0x2a6aac;return JSON['stringify'](truncatePreview(_0x2a6aac,0x78));}function _0x1684(_0x640ed3,_0x326df5){_0x640ed3=_0x640ed3-0x93;const _0x31b40c=_0x31b4();let _0x168476=_0x31b40c[_0x640ed3];return _0x168476;}function _0x31b4(){const _0x4b44b3=['BLEqt','numeric','slice','stop\x20video\x20recording','GOQBT','DjGqf','stop\x20tracing','Reviewer','unaddressedComments','close','747800CJwUIb','10RpXqbP','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','target','NKNqN','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','\x20(on\x20element:\x20<','ResJt','lVUKK','360597NYUuIW','domRef','hook_event_name','error','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port.\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists,\x20navigate\x20to\x20it\x20only\x20under\x20this\x20base\x20URL.','trackPhaseStart','replace','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','key_99_final-state.png','selector','[rangerwright-cli]\x20','VHvcp','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','chZYm','rangerwright_cli_tracing_stop','fill-and-inspect','JElpT','-\x20[','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','mJyCA','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','PDuLG','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x20Every\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a','commandArgs','Bash','.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.','HyhYX','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','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','ref\x20','\x20open-and-inspect\x20','VuuTu','XyQDb','split','tracing-stop','lGnyC','description','phase','01_initial-state.png','rangerwright_cli_command','Ixwea','get','jhWZd','>\x20\x22','1220280RbrDIF','click-and-inspect','...','keys','\x5c$&','vlPBL','14932NIoiAa','1032246MomGGv','):\x20\x22','video-stop','(?:^|\x5cs)','commandPrefix','658904jRNyIL','2534BmdOtP','log','99BmXzkQ','nHfMR','test','\x0a\x0aRefs\x20like\x20e37\x20are\x20only\x20valid\x20for\x20the\x20snapshot\x20that\x20produced\x20them.\x20Refresh\x20refs\x20after\x20navigation.\x0a\x0aUse\x20short\x20concrete\x20checkpoints\x20internally:\x20what\x20target\x20is\x20visible,\x20what\x20command\x20changes\x20state,\x20and\x20what\x20evidence\x20is\x20still\x20missing.\x20Issue\x20one\x20browser\x20command\x20at\x20a\x20time.\x20After\x20navigation,\x20validation,\x20or\x20a\x20changed\x20page,\x20inspect\x20before\x20deciding\x20the\x20next\x20action.\x0a\x0aBefore\x20reporting\x20success,\x20compare\x20each\x20required\x20CTA,\x20page\x20purpose,\x20and\x20topic\x20against\x20visible\x20page\x20evidence.\x20A\x20related\x20page\x20does\x20not\x20satisfy\x20a\x20different\x20required\x20topic\x20unless\x20the\x20page\x20text\x20directly\x20supports\x20that\x20topic\x20or\x20an\x20obvious\x20synonym.\x20If\x20required\x20evidence\x20is\x20missing,\x20mismatched,\x20or\x20only\x20inferred\x20from\x20adjacent\x20content,\x20report\x20that\x20plainly\x20and\x20do\x20not\x20mark\x20the\x20task\x20verified.\x0a\x0aFor\x20goals\x20with\x20more\x20than\x20one\x20required\x20condition,\x20use\x20an\x20internal\x20checklist\x20built\x20from\x20the\x20user\x27s\x20exact\x20requested\x20conditions.\x20Verify\x20each\x20checklist\x20item\x20against\x20visible\x20evidence\x20from\x20the\x20latest\x20browser\x20result.\x20If\x20any\x20item\x20lacks\x20direct\x20evidence,\x20report\x20the\x20task\x20as\x20not\x20verified\x20and\x20name\x20the\x20missing\x20item.\x0a\x0aOn\x20forms,\x20fill\x20only\x20visible\x20task-relevant\x20editable\x20fields\x20in\x20the\x20current\x20step\x20before\x20submitting\x20or\x20advancing.\x20Use\x20labels,\x20placeholders,\x20and\x20current\x20page\x20text\x20to\x20decide\x20which\x20fields\x20are\x20required.\x20Do\x20not\x20fill\x20fields\x20that\x20are\x20not\x20visible\x20in\x20the\x20latest\x20snapshot.\x0a\x0aUse\x20one\x20fill\x20command\x20per\x20field.\x20Do\x20not\x20combine\x20multiple\x20fields\x20into\x20one\x20fill\x20command\x20with\x20semicolons.\x0a\x0aIf\x20an\x20inspect-action\x20click\x20returns\x20the\x20same\x20page\x20or\x20shows\x20validation,\x20inspect\x20the\x20current\x20page\x20and\x20fill\x20blank\x20required\x20fields\x20before\x20retrying.\x20Do\x20not\x20repeat\x20the\x20same\x20blocked\x20click\x20unchanged.\x0a\x0aIf\x20a\x20click-and-inspect\x20result\x20keeps\x20the\x20same\x20URL\x20and\x20does\x20not\x20show\x20the\x20intended\x20target,\x20treat\x20it\x20as\x20a\x20no-op.\x20Refresh\x20refs\x20and\x20choose\x20a\x20different\x20visible\x20link,\x20or\x20use\x20back-and-inspect\x20if\x20you\x20need\x20the\x20prior\x20page.\x0a\x0aA\x20page\x20with\x20visible\x20required\x20fields\x20and\x20a\x20next,\x20submit,\x20continue,\x20or\x20confirm\x20control\x20is\x20still\x20actionable.\x20Fill\x20the\x20required\x20fields\x20with\x20values\x20from\x20the\x20task\x20before\x20reporting\x20incomplete\x20or\x20blocked.\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20first\x20inspect\x20result,\x20check\x20for\x20blocking\x20errors:\x0a-\x20HTTP\x20404,\x20500,\x20400,\x20\x22Not\x20Found\x22,\x20\x22Server\x20Error\x22,\x20or\x20\x22Bad\x20Request\x22\x0a-\x20Framework\x20error\x20pages\x0a-\x20Blank\x20pages\x20with\x20no\x20content\x0a-\x20App\x20crash\x20or\x20error\x20dialogs\x0a\x0aIf\x20any\x20blocking\x20error\x20is\x20visible,\x20return\x20evaluation\x20\x22blocked\x22\x20immediately\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\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.','4304Nkvult','zaliK','length','notes','AejWV','open\x20and\x20inspect\x20','authorName'];_0x31b4=function(){return _0x4b44b3;};return _0x31b4();}function formatRangerwrightCliLog(_0x2b9d71,_0x3fb9fe){const _0x4f782f=_0x1684,_0x5835e7={'XyQDb':function(_0x4a01c5,_0x127a6c){return _0x4a01c5(_0x127a6c);},'PDuLG':_0x4f782f(0x95),'lVUKK':'back-and-inspect','GdROp':'go\x20back\x20and\x20inspect','VuuTu':'inspect','chZYm':'video-stop','vlPBL':_0x4f782f(0xcf),'ResJt':_0x4f782f(0xd5)};switch(_0x3fb9fe){case'open-and-inspect':{const _0x2e2c9e=extractFirstCommandArgument(_0x2b9d71,_0x3fb9fe);return _0x2e2c9e?_0x4f782f(0xca)+_0x2e2c9e:'open\x20and\x20inspect';}case _0x4f782f(0xb3):return'click\x20and\x20inspect\x20'+_0x5835e7[_0x4f782f(0xa6)](formatCommandTarget,extractFirstCommandArgument(_0x2b9d71,_0x3fb9fe));case'fill':case _0x5835e7[_0x4f782f(0x9b)]:return'fill\x20'+_0x5835e7[_0x4f782f(0xa6)](formatCommandTarget,extractFirstCommandArgument(_0x2b9d71,_0x3fb9fe));case _0x5835e7[_0x4f782f(0xde)]:return _0x5835e7['GdROp'];case _0x5835e7[_0x4f782f(0xa5)]:return'inspect\x20page';case'tracing-stop':return _0x4f782f(0xd2);case _0x5835e7[_0x4f782f(0x93)]:return _0x5835e7[_0x4f782f(0xb7)];case _0x5835e7[_0x4f782f(0xdd)]:return'close\x20browser\x20session';default:return _0x3fb9fe;}}function renderScenarioSections(_0x327563){const _0x249e73=_0x1684,_0x4238de={'eexRW':'short','JElpT':_0x249e73(0xd3),'cVQEV':'\x20>\x20','AejWV':'element','gpNEn':function(_0x1fec5d,_0x8a9081){return _0x1fec5d>_0x8a9081;}},{checklistItem:_0x46ceed,itemFeedback:_0x579553}=_0x327563,_0x53a297=_0x46ceed[_0x249e73(0xc8)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x46ceed['notes']:'';let _0xac9917='';if(_0x579553&&_0x4238de['gpNEn'](_0x579553[_0x249e73(0xd4)][_0x249e73(0xc7)],0x0)){const _0x20d951=_0x579553[_0x249e73(0xd4)]['map'](_0x18d7e6=>{const _0x3d78a7=_0x249e73,_0x210cdc=new Date(_0x18d7e6['createdAt'])['toLocaleDateString']('en-US',{'month':_0x4238de['eexRW'],'day':_0x3d78a7(0xcd)}),_0x4b052c=_0x18d7e6[_0x3d78a7(0xcb)]||_0x18d7e6['authorEmail']||_0x4238de[_0x3d78a7(0x96)],_0x543210=_0x18d7e6[_0x3d78a7(0xe0)]?_0x3d78a7(0xdc)+(_0x18d7e6[_0x3d78a7(0xe0)][_0x3d78a7(0xe8)][_0x3d78a7(0xa7)](_0x4238de['cVQEV'])['pop']()?.[_0x3d78a7(0xa7)](':')[0x0]||_0x4238de[_0x3d78a7(0xc9)])+_0x3d78a7(0xb1)+(_0x18d7e6['domRef']['textContent']||'')[_0x3d78a7(0xce)](0x0,0x32)+'\x22)':'';return _0x3d78a7(0x97)+_0x18d7e6['id']+']\x20'+_0x4b052c+'\x20('+_0x210cdc+_0x3d78a7(0xba)+_0x18d7e6['content']+'\x22'+_0x543210;})['join']('\x0a');_0xac9917='\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\x20in\x20addressedCommentIds.\x0a\x0a'+_0x20d951;}const _0x265610=_0x579553?.['canonicalFlow']?_0x249e73(0xa2)+_0x579553['canonicalFlow']:'';return''+_0x46ceed[_0x249e73(0xaa)]+_0x53a297+_0xac9917+_0x265610;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x37a2c1){const _0x38f1ea=_0x1684,_0x66f58b={'dAkcE':_0x38f1ea(0xe7),'WHOph':function(_0x56c13d,_0x42b758){return _0x56c13d(_0x42b758);},'GOQBT':'about:blank'},{checklistItem:_0x2da618,itemFeedback:_0x33d06c,taskDescription:_0x16f035,commandPrefix:_0x5fb871,isCdpMode:_0x2f0737,url:_0x18d09c,cdpEndpoint:_0x53594f,loginInstructions:_0x1bbab5}=_0x37a2c1,_0x127efc=_0x38f1ea(0xac),_0x332d74=_0x66f58b['dAkcE'],_0x16917f=_0x2f0737?_0x5fb871+'\x20inspect\x20--screenshot-path\x20'+_0x66f58b['WHOph'](quoteShellArg,_0x127efc):_0x5fb871+_0x38f1ea(0xa4)+_0x66f58b['WHOph'](quoteShellArg,_0x18d09c??_0x66f58b[_0x38f1ea(0xd0)])+'\x20--screenshot-path\x20'+_0x66f58b['WHOph'](quoteShellArg,_0x127efc),_0x24f69a=_0x2f0737?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20'+_0x53594f+_0x38f1ea(0x9f):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x18d09c+_0x38f1ea(0xe3),_0x88180b=_0x1bbab5?_0x38f1ea(0x9a)+_0x1bbab5+_0x38f1ea(0xd8):'';return _0x38f1ea(0xa1)+_0x66f58b['WHOph'](renderScenarioSections,{'checklistItem':_0x2da618,'itemFeedback':_0x33d06c})+_0x38f1ea(0xe6)+_0x16f035+'\x0a\x0a'+_0x24f69a+_0x88180b+'\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x5fb871+'\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x20Browser\x20Trek\x20only\x20counts\x20literal\x20Rangerwright\x20command\x20invocations.\x0a\x0aTreat\x20the\x20command\x20prefix\x20as\x20immutable.\x20Copy\x20it\x20exactly,\x20then\x20append\x20one\x20supported\x20Rangerwright\x20subcommand\x20and\x20its\x20arguments.\x20If\x20a\x20browser\x20command\x20fails\x20because\x20the\x20binary\x20path\x20is\x20missing\x20or\x20the\x20command\x20syntax\x20is\x20malformed,\x20retry\x20once\x20with\x20the\x20exact\x20prefix\x20from\x20this\x20prompt\x20before\x20deciding\x20the\x20task\x20is\x20blocked.\x0a\x0aFirst\x20command:\x0a\x0a'+_0x16917f+'\x0a\x0aPrefer\x20open-and-inspect\x20and\x20click-and-inspect\x20when\x20you\x20need\x20a\x20fresh\x20snapshot\x20plus\x20evidence.\x0a\x0aUse\x20back-and-inspect\x20to\x20return\x20to\x20the\x20previous\x20page\x20after\x20checking\x20a\x20detail\x20page.\x20Refresh\x20refs\x20after\x20going\x20back.\x0a\x0aEach\x20command\x20returns\x20JSON\x20with\x20success,\x20data,\x20and\x20error\x20fields.\x0a\x0aUse\x20data.title,\x20data.headings,\x20data.pageText,\x20and\x20data.snapshotText\x20together.\x20snapshotText\x20is\x20best\x20for\x20refs\x20and\x20controls;\x20pageText\x20is\x20valid\x20visible\x20evidence\x20for\x20page\x20content.\x0a\x0aDo\x20not\x20verify\x20from\x20a\x20broad\x20landing,\x20index,\x20category,\x20search,\x20or\x20navigation\x20page\x20when\x20the\x20task\x20asks\x20for\x20a\x20specific\x20page,\x20topic,\x20item,\x20or\x20action.\x20Click\x20and\x20inspect\x20the\x20most\x20specific\x20visible\x20target\x20first;\x20if\x20no\x20specific\x20target\x20exists,\x20report\x20the\x20missing\x20target.\x0a\x0aSave\x20screenshots\x20by\x20using\x20--screenshot-path\x20on\x20inspect\x20commands.\x20Relative\x20screenshot\x20paths\x20are\x20saved\x20under\x20the\x20run\x20artifact\x20directory.\x20Do\x20not\x20call\x20screenshot\x20--path.\x0a\x0aExample:\x0a\x0a'+_0x5fb871+'\x20click-and-inspect\x20e37\x20--screenshot-path\x20'+quoteShellArg(_0x332d74)+_0x38f1ea(0xc4);}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0xbff557){const _0x4d5dcb=_0x1684,_0xe458d={'mJyCA':'01_mozilla-homepage.png','BLEqt':function(_0x50b46a,_0x3dec61){return _0x50b46a(_0x3dec61);}},_0x1ecfb8=_0xe458d[_0x4d5dcb(0x99)],_0x15e17d='key_02_learn-more.png';return _0x4d5dcb(0x9c)+_0xbff557[_0x4d5dcb(0xbd)]+'\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x0a\x0a1.\x20Run\x20`'+_0xbff557['commandPrefix']+_0x4d5dcb(0xa4)+quoteShellArg(_0xbff557['url'])+'\x20--screenshot-path\x20'+quoteShellArg(_0x1ecfb8)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0xbff557[_0x4d5dcb(0xbd)]+_0x4d5dcb(0x98)+_0xe458d[_0x4d5dcb(0xcc)](quoteShellArg,_0x15e17d)+_0x4d5dcb(0xeb);}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x4c15ba){const _0x3a2e84=_0x1684,_0x5536df={'VHvcp':function(_0x3db749,_0x2e9cf0){return _0x3db749===_0x2e9cf0;}},_0x28af9b=[..._0x4c15ba[_0x3a2e84(0xb5)]()]['sort']();let _0x3d98e0=0x0;for(const _0x24c343 of _0x4c15ba['values']()){_0x3d98e0+=_0x24c343;}return{'cliCommandCount':_0x3d98e0,'cliCommandsSeen':_0x28af9b,'noCliCommandsCalled':_0x5536df[_0x3a2e84(0xea)](_0x3d98e0,0x0)};}export function createVerifyFeatureRangerwrightCliHooks(_0x1efdd4){const _0x50035b=_0x1684,_0x51fdcf={'jhWZd':function(_0x5ca987,_0x5f2986){return _0x5ca987!==_0x5f2986;},'nHfMR':'Bash','NTyyZ':_0x50035b(0xad),'vzKeA':function(_0x374be1,_0x37f500,_0x3df839){return _0x374be1(_0x37f500,_0x3df839);},'NCvhF':'PostToolUseFailure','DjGqf':'rangerwright_cli_command_failure'},_0x48b39e=new Map(),_0x34f721=async _0x31140d=>{const _0x21dde9=_0x50035b;if(_0x31140d[_0x21dde9(0xe1)]!=='PostToolUse')return{};const _0x21103d=_0x31140d;if(_0x51fdcf[_0x21dde9(0xb0)](_0x21103d['tool_name'],_0x51fdcf['nHfMR']))return{};const _0x318ca2=_0x21103d['tool_input'],_0x345b38=extractBashCommand(_0x318ca2);if(!_0x345b38)return{};const _0x364990=parseRangerwrightCliCommand(_0x345b38);if(!_0x364990)return{};return _0x48b39e['set'](_0x364990,(_0x48b39e[_0x21dde9(0xaf)](_0x364990)||0x0)+0x1),_0x1efdd4['trackPhaseStart']('rangerwright_cli_command',{'subcommand':_0x364990}),_0x1efdd4['trackPhaseEnd'](_0x51fdcf['NTyyZ'],{'subcommand':_0x364990,'commandPreview':truncatePreview(_0x345b38)}),console[_0x21dde9(0xc0)](_0x21dde9(0xe9)+_0x51fdcf['vzKeA'](formatRangerwrightCliLog,_0x345b38,_0x364990)),{};},_0xa2f02c=async _0x17a0b6=>{const _0x5cbbd6=_0x50035b;if(_0x51fdcf['jhWZd'](_0x17a0b6[_0x5cbbd6(0xe1)],_0x51fdcf['NCvhF']))return{};const _0x4d60cc=_0x17a0b6;if(_0x4d60cc['tool_name']!==_0x5cbbd6(0x9e))return{};return await _0x1efdd4['trackPhaseError'](_0x51fdcf[_0x5cbbd6(0xd1)],_0x4d60cc[_0x5cbbd6(0xe2)],{'transport':'rangerwright-cli','toolName':_0x51fdcf[_0x5cbbd6(0xc2)]}),{};};return{'postToolUseHook':_0x34f721,'postToolUseFailureHook':_0xa2f02c,'commandCounts':_0x48b39e};}async function runRangerwrightLifecycleCommand(_0x453f24){const _0x113087=_0x1684,_0x1c8716={'Ixwea':function(_0xe62673,_0xd8e291){return _0xe62673??_0xd8e291;},'DqSIS':function(_0x356143,_0x35e934,_0x2ee972){return _0x356143(_0x35e934,_0x2ee972);}},{options:_0x4cf388,commandArgs:_0x101475,env:_0x4fd9a1,telemetry:_0x84fc0e,phase:_0x3e5b80,metadata:_0x332d63,timeoutMs:_0xa486f3}=_0x453f24;_0x84fc0e[_0x113087(0xe4)](_0x3e5b80,_0x332d63);try{const _0x369ac8=await runRangerwrightCliCommand({..._0x4cf388,'commandArgs':_0x101475,'cwd':process['cwd'](),'env':_0x4fd9a1,'timeoutMs':_0x1c8716[_0x113087(0xae)](_0xa486f3,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x84fc0e['trackPhaseEnd'](_0x3e5b80,{..._0x332d63,'subcommand':_0x369ac8['invocation']['subcommand'],'stdoutPreview':truncatePreview(_0x369ac8['stdout'],0x7d0),'stderrPreview':_0x1c8716['DqSIS'](truncatePreview,_0x369ac8['stderr'],0x7d0)});}catch(_0x487ef0){await _0x84fc0e['trackPhaseError'](_0x3e5b80,_0x487ef0,_0x332d63);throw _0x487ef0;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x48e35a){const _0x4e2399=_0x1684,_0x2630b9={'zaliK':_0x4e2399(0x94),'iBJSW':_0x4e2399(0xbb),'HyhYX':function(_0x2238f1,_0x4efa15){return _0x2238f1(_0x4efa15);}},{telemetry:_0x398592,rangerwrightOptions:_0x355db4,env:_0x4b2190,transportMetadata:_0xb67aa7}=_0x48e35a,_0x54817a=[{'phase':_0x2630b9[_0x4e2399(0xc6)],'commandArgs':[_0x4e2399(0xa8)]},{'phase':'rangerwright_cli_video_stop','commandArgs':[_0x2630b9['iBJSW']]},{'phase':'rangerwright_cli_close','commandArgs':['close']}];for(const _0x4cd3ac of _0x54817a){try{await _0x2630b9[_0x4e2399(0xa0)](runRangerwrightLifecycleCommand,{'options':_0x355db4,'commandArgs':[..._0x4cd3ac[_0x4e2399(0x9d)]],'env':_0x4b2190,'telemetry':_0x398592,'phase':_0x4cd3ac[_0x4e2399(0xab)],'metadata':_0xb67aa7});}catch{}}}
|