@ranger-testing/ranger-cli 3.1.2-alpha.b450a14-41 → 3.1.3-alpha.e1ca941-42
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/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(_0x46b255,_0x5a6228){const _0xe723e1=_0xbddf,_0x3d55b1=_0x46b255();while(!![]){try{const _0x3ebc02=parseInt(_0xe723e1(0x169))/0x1*(-parseInt(_0xe723e1(0x135))/0x2)+parseInt(_0xe723e1(0x10e))/0x3+parseInt(_0xe723e1(0x16b))/0x4*(parseInt(_0xe723e1(0x10f))/0x5)+parseInt(_0xe723e1(0x178))/0x6*(parseInt(_0xe723e1(0x16e))/0x7)+parseInt(_0xe723e1(0xfb))/0x8*(-parseInt(_0xe723e1(0x159))/0x9)+parseInt(_0xe723e1(0x158))/0xa+parseInt(_0xe723e1(0x118))/0xb*(-parseInt(_0xe723e1(0xfd))/0xc);if(_0x3ebc02===_0x5a6228)break;else _0x3d55b1['push'](_0x3d55b1['shift']());}catch(_0x378df1){_0x3d55b1['push'](_0x3d55b1['shift']());}}}(_0x4f29,0x526dc));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';function _0x4f29(){const _0x215d1f=['xHaMF',']\x20**','RtILG','string','test','OoKRK','length','set','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','xpPgf','split','BuGOE','dkWGu','run-code','\x5c$&','wqLPM','SSEXw','QnYRc','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','ysQJv','XFhFm','playwright-cli','open','jMFjR','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','fill\x20','3325160fczSlD','287361pBRpon','WUpvl','description','`:\x20\x22','gvfUy','(?:^|\x5cs)','\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.','commandArgs','tab-select','03_result-visible.png','mtimeMs','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','cijxe','log','WLxWy','cwd','37531lpikED','stringify','128OqxPLR','\x20snapshot\x20--filename\x20','capture\x20snapshot','801920OhaTFY','\x20>\x20','tool_failure','authorEmail','IOVAK','open\x20browser','sort','select\x20tab\x20','authorName','01_mozilla-homepage.png','18SnjZAv','select\x20tab','\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.','...','unaddressedComments','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','short','GMykR','snapshot','OoKVA','ysrPU','\x0a\x0a##\x20Additional\x20Notes\x0a','hOcLl','content','start\x20video\x20recording','Bash','check','HmfzG','152KwvLFc','\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','42828jaJhbj','iwqJZ','trace.trace.zip','\x20open\x20','):\x20\x22','tool_name','error','\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','en-US','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','dwriH','pop','tab-new','rrFwp','KZIgG','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','trackPhaseStart','1033743gAlaBg','104345bZOKne','click','Orsrh','name','01_initial.yml','cllyT','FRlqG','playwright_cli_video_stop','\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.','1947inYjAM','map','AAXNv','playwright_cli_tracing_stop','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','push','oTIYI','vLvfZ','\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','env','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','tracing-start','stdout','trace.zip','trackPhaseError','element','domRef','run\x20custom\x20Playwright\x20code','DStjK','trim','open\x20new\x20tab','`\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','uUymZ','target','gsgBN','**\x20(','hook_event_name','LPIpr','stop\x20tracing','6LRqhcW','trackPhaseEnd','video-stop','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','Qranb','join','\x20open`,\x20then\x20`','\x20screenshot\x20--filename\x20','click\x20'];_0x4f29=function(){return _0x215d1f;};return _0x4f29();}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(_0x466cba,_0x182113=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x2025c4=_0xbddf,_0x22c015={'IEjoe':function(_0x334c83,_0x4fad30){return _0x334c83+_0x4fad30;}};return _0x466cba[_0x2025c4(0x144)]>_0x182113?_0x22c015['IEjoe'](_0x466cba['slice'](0x0,_0x182113),_0x2025c4(0x17b)):_0x466cba;}function buildCliArtifactPath(_0x47cf7c,_0x1251d1){const _0x40c344=_0xbddf,_0x4d5fdb={'OoKRK':function(_0x424645,_0x3e90a0,_0x35f9ea){return _0x424645(_0x3e90a0,_0x35f9ea);}};return _0x4d5fdb[_0x40c344(0x143)](join,_0x47cf7c,_0x1251d1);}function toStepDisplayName(_0x407878){const _0x4aad41=_0xbddf,_0x621c0e={'cllyT':function(_0x492365,_0x5736fe){return _0x492365(_0x5736fe);},'LKXjg':function(_0x59b848,_0x42abd8){return _0x59b848(_0x42abd8);}},_0x32836a=_0x621c0e[_0x4aad41(0x114)](basename,_0x407878)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x32836a,'isKeyStep':/^key_/i['test'](_0x621c0e['LKXjg'](basename,_0x407878))};}function extractShellValue(_0x2ceea8){if(!_0x2ceea8)return null;return _0x2ceea8[0x1]??_0x2ceea8[0x2]??_0x2ceea8[0x3]??null;}function extractFilenameOption(_0x8ec00b){const _0x48fa74={'ANSDV':function(_0x4f4f70,_0x5ddd11){return _0x4f4f70(_0x5ddd11);}};return _0x48fa74['ANSDV'](extractShellValue,_0x8ec00b['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function _0xbddf(_0x561b0e,_0x26d289){_0x561b0e=_0x561b0e-0xee;const _0x4f293a=_0x4f29();let _0xbddfb8=_0x4f293a[_0x561b0e];return _0xbddfb8;}function extractFirstCommandArgument(_0x20b39e,_0x2fe477){const _0x4b596f=_0xbddf,_0x381c1e={'gvfUy':_0x4b596f(0x14c)},_0x3a434d=_0x2fe477['replace'](/[.*+?^${}()|[\]\\]/g,_0x381c1e[_0x4b596f(0x15d)]);return extractShellValue(_0x20b39e['match'](new RegExp(_0x4b596f(0x15e)+_0x3a434d+_0x4b596f(0x11c))));}function formatCommandTarget(_0x40f000){const _0x1af5d1=_0xbddf,_0x20d512={'qBCiJ':function(_0x4046e7,_0x44c8dd,_0x203d91){return _0x4046e7(_0x44c8dd,_0x203d91);}};if(!_0x40f000)return _0x1af5d1(0x12f);if(/^e\d+$/i[_0x1af5d1(0x142)](_0x40f000))return'ref\x20'+_0x40f000;return JSON[_0x1af5d1(0x16a)](_0x20d512['qBCiJ'](truncatePreview,_0x40f000,0x78));}function formatPlaywrightCliLog(_0x5f2a50,_0xb4fa68){const _0x100652=_0xbddf,_0x5d4c5d={'FRlqG':function(_0x26dced,_0x133c6a,_0x5f2d9e){return _0x26dced(_0x133c6a,_0x5f2d9e);},'LayYt':'start\x20tracing','KZIgG':'tracing-stop','jMFjR':_0x100652(0x137),'tOuqe':'stop\x20video\x20recording','OoKVA':function(_0x10f9b2,_0x48ac5d){return _0x10f9b2(_0x48ac5d);},'dOiyE':function(_0x244263,_0x269671){return _0x244263(_0x269671);},'GMykR':_0x100652(0x110),'RtILG':_0x100652(0xf9),'iwqJZ':'fill','zNJcB':function(_0x3bfa84,_0x3e6b44,_0x2377e8){return _0x3bfa84(_0x3e6b44,_0x2377e8);},'SSEXw':_0x100652(0x14b),'xpPgf':_0x100652(0x129),'vVboH':_0x100652(0x109),'xHaMF':_0x100652(0x12c),'oTIYI':_0x100652(0x161)};switch(_0xb4fa68){case _0x100652(0x154):{const _0x21152f=_0x5d4c5d[_0x100652(0x115)](extractFirstCommandArgument,_0x5f2a50,_0xb4fa68);return _0x21152f?'open\x20'+_0x21152f:_0x100652(0x173);}case _0x100652(0x123):return _0x5d4c5d['LayYt'];case _0x5d4c5d[_0x100652(0x10b)]:return _0x100652(0x134);case'video-start':return _0x100652(0xf7);case _0x5d4c5d[_0x100652(0x155)]:return _0x5d4c5d['tOuqe'];case _0x100652(0xf1):{const _0x2857dc=extractFilenameOption(_0x5f2a50);if(!_0x2857dc)return _0x100652(0x16d);const {name:_0x2f666d}=_0x5d4c5d[_0x100652(0xf2)](toStepDisplayName,_0x2857dc);return'capture\x20snapshot\x20`'+_0x2f666d+'`';}case'screenshot':{const _0x2e6dc3=_0x5d4c5d['dOiyE'](extractFilenameOption,_0x5f2a50);if(!_0x2e6dc3)return'capture\x20screenshot';const {name:_0x113f56,isKeyStep:_0x37fdae}=toStepDisplayName(_0x2e6dc3);return _0x37fdae?'capture\x20key\x20step\x20`'+_0x113f56+'`':'capture\x20step\x20`'+_0x113f56+'`';}case _0x5d4c5d[_0x100652(0xf0)]:return _0x100652(0x13d)+formatCommandTarget(_0x5d4c5d['FRlqG'](extractFirstCommandArgument,_0x5f2a50,_0xb4fa68));case _0x5d4c5d[_0x100652(0x140)]:return'check\x20'+formatCommandTarget(extractFirstCommandArgument(_0x5f2a50,_0xb4fa68));case _0x5d4c5d[_0x100652(0xfe)]:return _0x100652(0x157)+formatCommandTarget(_0x5d4c5d['zNJcB'](extractFirstCommandArgument,_0x5f2a50,_0xb4fa68));case'press':return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x5f2a50,_0xb4fa68));case _0x5d4c5d[_0x100652(0x14e)]:return _0x5d4c5d[_0x100652(0x147)];case _0x5d4c5d['vVboH']:{const _0x4c96e5=_0x5d4c5d['FRlqG'](extractFirstCommandArgument,_0x5f2a50,_0xb4fa68);return _0x4c96e5?'open\x20new\x20tab\x20'+_0x4c96e5:_0x5d4c5d[_0x100652(0x13e)];}case _0x5d4c5d[_0x100652(0x11e)]:{const _0x5b9cd2=extractFirstCommandArgument(_0x5f2a50,_0xb4fa68);return _0x5b9cd2?_0x100652(0x175)+_0x5b9cd2:_0x100652(0x179);}default:return _0xb4fa68;}}function extractPlaywrightCliToolDescription(_0x32ec62){const _0x431ff8=_0xbddf,_0x14f79e=_0x32ec62[_0x431ff8(0x15b)];if(typeof _0x14f79e!==_0x431ff8(0x141))return null;const _0x4363dc=_0x14f79e[_0x431ff8(0x12b)]()['replace'](/\s+/g,'\x20');return _0x4363dc['length']>0x0?_0x4363dc:null;}export function formatPlaywrightCliConsoleLogMessage(_0x480a3e,_0x4d4cc5,_0x5bf953){const _0x263d5b=_0xbddf,_0x3377c3={'rrFwp':function(_0x20f911,_0x2ee831,_0x588fd9){return _0x20f911(_0x2ee831,_0x588fd9);},'dkWGu':function(_0x38516f,_0x37138f){return _0x38516f(_0x37138f);}},_0x149556=_0x3377c3[_0x263d5b(0x10a)](formatPlaywrightCliLog,_0x4d4cc5,_0x5bf953),_0x356049=_0x3377c3[_0x263d5b(0x14a)](extractPlaywrightCliToolDescription,_0x480a3e);if(!_0x356049)return'[playwright-cli]\x20'+_0x149556;if(process[_0x263d5b(0x121)]['DEBUG'])return'[ranger-verification-agent]\x20'+_0x356049+'\x20('+_0x149556+')';return'[ranger-verification-agent]\x20'+_0x356049;}export function buildVerifyFeatureCliDebugPrompt(_0x2618f6,_0x2cb5ae){const _0x239bfc=_0xbddf,_0x466ed6={'AAXNv':function(_0xb8a5fd,_0x5c849c,_0x4a34cc){return _0xb8a5fd(_0x5c849c,_0x4a34cc);},'gsgBN':_0x239bfc(0x177),'ysrPU':function(_0x22da72,_0x463172,_0x45bc0e){return _0x22da72(_0x463172,_0x45bc0e);},'sLErw':'03_learn-more.png','dwriH':function(_0x5e5b64,_0x4b19ce){return _0x5e5b64(_0x4b19ce);}},_0x3ac59c=_0x466ed6['AAXNv'](buildCliArtifactPath,_0x2cb5ae,'00_mozilla-homepage.yml'),_0x121547=_0x466ed6[_0x239bfc(0x11a)](buildCliArtifactPath,_0x2cb5ae,_0x466ed6[_0x239bfc(0x130)]),_0x3fcf62=buildCliArtifactPath(_0x2cb5ae,'02_learn-more.yml'),_0x41bbc7=_0x466ed6[_0x239bfc(0xf3)](buildCliArtifactPath,_0x2cb5ae,_0x466ed6['sLErw']),_0x49be62=quoteShellArg(_0x3ac59c),_0x5038ea=_0x466ed6[_0x239bfc(0x107)](quoteShellArg,_0x121547),_0x4c877d=_0x466ed6['dwriH'](quoteShellArg,_0x3fcf62),_0x2545f5=quoteShellArg(_0x41bbc7);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x2618f6+'\x0a\x0a1.\x20Run\x20`'+_0x2618f6+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x2618f6+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x2618f6+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x2cb5ae+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x2618f6+_0x239bfc(0x16c)+_0x49be62+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x2618f6+_0x239bfc(0x13c)+_0x5038ea+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x2618f6+_0x239bfc(0x16c)+_0x4c877d+'`\x0a9.\x20Run\x20`'+_0x2618f6+'\x20screenshot\x20--filename\x20'+_0x2545f5+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x4d9dde){const _0x47a0dd=_0xbddf,_0x232039={'nnPkB':'numeric','QQNjm':'Reviewer','DStjK':_0x47a0dd(0x16f),'BuGOE':_0x47a0dd(0x113),'XFhFm':'02_state.yml','uUymZ':function(_0x1127ea,_0x1a211e,_0x3974f0){return _0x1127ea(_0x1a211e,_0x3974f0);},'yykWA':'01_initial-state.png','LPIpr':function(_0x1a98b0,_0x3989ea){return _0x1a98b0(_0x3989ea);},'ysQJv':'02_button-clicked.png','oKcwe':'key_04_success-state.png'},{checklistItem:_0x15849b,itemFeedback:_0x21ad24,taskDescription:_0x59a2b2,cliCommandPrefix:_0x2e5584,cliArtifactDir:_0x544cf8,isCdpMode:_0x5c8a29,url:_0x397b50,cdpEndpoint:_0x57cf6b,loginInstructions:_0xae1b9f}=_0x4d9dde,_0x3b58c7=buildCliArtifactPath(_0x544cf8,_0x232039[_0x47a0dd(0x149)]),_0x4fae4a=buildCliArtifactPath(_0x544cf8,_0x232039[_0x47a0dd(0x152)]),_0x18bde4=_0x232039['uUymZ'](buildCliArtifactPath,_0x544cf8,'key_03_success-state.png'),_0x4132b0=buildCliArtifactPath(_0x544cf8,_0x232039['yykWA']),_0x18ebe3=quoteShellArg(_0x3b58c7),_0x1676d2=_0x232039['LPIpr'](quoteShellArg,_0x4fae4a),_0x202645=quoteShellArg(_0x18bde4),_0x4973e0=_0x232039[_0x47a0dd(0x133)](quoteShellArg,_0x4132b0),_0x138aef=_0x15849b['notes']?_0x47a0dd(0xf4)+_0x15849b['notes']:'';let _0x5dde25='';if(_0x21ad24&&_0x21ad24['unaddressedComments'][_0x47a0dd(0x144)]>0x0){const _0x5b35ed=_0x21ad24[_0x47a0dd(0x17c)][_0x47a0dd(0x119)](_0x18673f=>{const _0x16e866=_0x47a0dd,_0x45c54d=new Date(_0x18673f['createdAt'])['toLocaleDateString'](_0x16e866(0x105),{'month':_0x16e866(0xef),'day':_0x232039['nnPkB']}),_0x4198f9=_0x18673f[_0x16e866(0x176)]||_0x18673f[_0x16e866(0x171)]||_0x232039['QQNjm'],_0x46e68c=_0x18673f['domRef']?'\x20(on\x20element:\x20<'+(_0x18673f[_0x16e866(0x128)]['selector'][_0x16e866(0x148)](_0x232039[_0x16e866(0x12a)])[_0x16e866(0x108)]()?.[_0x16e866(0x148)](':')[0x0]||_0x16e866(0x127))+'>\x20\x22'+(_0x18673f[_0x16e866(0x128)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x18673f['id']+_0x16e866(0x13f)+_0x4198f9+_0x16e866(0x131)+_0x45c54d+_0x16e866(0x101)+_0x18673f[_0x16e866(0xf6)]+'\x22'+_0x46e68c;})[_0x47a0dd(0x13a)]('\x0a');_0x5dde25='\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'+_0x5b35ed;}const _0x5bb9c5=_0x21ad24?.['canonicalFlow']?_0x47a0dd(0x122)+_0x21ad24['canonicalFlow']:'',_0x3ff62b=_0x5c8a29?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x57cf6b+_0x47a0dd(0x150):_0x47a0dd(0x106)+_0x397b50+'\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',_0x367e29=_0x397b50?quoteShellArg(_0x397b50):'',_0x555c03=_0x5c8a29?_0x47a0dd(0x10c)+_0x2e5584+_0x47a0dd(0x13b)+_0x2e5584+'\x20tracing-start`,\x20then\x20`'+_0x2e5584+_0x47a0dd(0x146)+_0x544cf8+_0x47a0dd(0x164)+_0x2e5584+'\x20snapshot\x20--filename\x20'+_0x18ebe3+'`\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`'+_0x2e5584+_0x47a0dd(0x13c)+_0x4973e0+_0x47a0dd(0x138)+_0x2e5584+'\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario':'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x2e5584+_0x47a0dd(0x100)+_0x367e29+'`,\x20then\x20`'+_0x2e5584+'\x20tracing-start`,\x20then\x20`'+_0x2e5584+_0x47a0dd(0x146)+_0x544cf8+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x2e5584+'\x20snapshot\x20--filename\x20'+_0x18ebe3+'`\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`'+_0x2e5584+_0x47a0dd(0x13c)+_0x4973e0+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x2e5584+_0x47a0dd(0x120),_0x47633d=_0x5c8a29?'\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.':_0x47a0dd(0x17a),_0x3be83e=_0xae1b9f?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0xae1b9f+_0x47a0dd(0x117):'';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'+_0x15849b['description']+_0x138aef+_0x5dde25+_0x5bb9c5+_0x47a0dd(0xee)+_0x59a2b2+'\x0a\x0a'+_0x3ff62b+_0x3be83e+'\x0a\x0a'+_0x555c03+_0x47a0dd(0x156)+_0x2e5584+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x544cf8+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x1676d2+_0x47a0dd(0x12d)+_0x202645+'`\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`'+_0x544cf8+_0x47a0dd(0x15c)+_0x4132b0+'\x22,\x20\x22'+_0x232039[_0x47a0dd(0x12e)](buildCliArtifactPath,_0x544cf8,_0x232039[_0x47a0dd(0x151)])+'\x22,\x20\x22'+_0x232039[_0x47a0dd(0x12e)](buildCliArtifactPath,_0x544cf8,_0x47a0dd(0x162))+_0x47a0dd(0xfc)+buildCliArtifactPath(_0x544cf8,_0x232039['oKcwe'])+_0x47a0dd(0x104)+_0x47633d+_0x47a0dd(0x15f);}export function summarizeVerifyFeatureCliCommandAvailability(_0x2dcaeb){const _0x563288=_0xbddf,_0x2423de=[..._0x2dcaeb['keys']()][_0x563288(0x174)]();let _0x2e4957=0x0;for(const _0x107b2e of _0x2dcaeb['values']()){_0x2e4957+=_0x107b2e;}return{'cliCommandCount':_0x2e4957,'cliCommandsSeen':_0x2423de,'noCliCommandsCalled':_0x2e4957===0x0};}export function createVerifyFeatureCliHooks(_0x1039f6){const _0x41bccf=_0xbddf,_0x22ab3e={'QnYRc':function(_0x20972f,_0x49a1c1){return _0x20972f!==_0x49a1c1;},'bAlSi':_0x41bccf(0xf8),'zmRzV':function(_0x3530a1,_0x1ea625){return _0x3530a1+_0x1ea625;},'nstNo':'tool_call','wqLPM':function(_0x4c0ed2,_0x441de7){return _0x4c0ed2(_0x441de7);},'xXbEJ':'snapshot','vLvfZ':_0x41bccf(0x170),'IOVAK':_0x41bccf(0x153)},_0x580fa4=new Map(),_0x5a2e1a=async _0x5b14f9=>{const _0x5f31d3=_0x41bccf;if(_0x22ab3e['QnYRc'](_0x5b14f9['hook_event_name'],'PostToolUse'))return{};const _0x1238bf=_0x5b14f9;if(_0x22ab3e[_0x5f31d3(0x14f)](_0x1238bf[_0x5f31d3(0x102)],_0x22ab3e['bAlSi']))return{};const _0x20d49b=_0x1238bf['tool_input'],_0x5255e4=extractBashCommand(_0x20d49b);if(!_0x5255e4)return{};const _0x9f71b0=parsePlaywrightCliCommand(_0x5255e4);if(!_0x9f71b0)return{};return _0x580fa4[_0x5f31d3(0x145)](_0x9f71b0,_0x22ab3e['zmRzV'](_0x580fa4['get'](_0x9f71b0)||0x0,0x1)),_0x1039f6[_0x5f31d3(0x10d)](_0x22ab3e['nstNo'],{'transport':'playwright-cli','toolName':_0x9f71b0}),_0x1039f6[_0x5f31d3(0x136)](_0x22ab3e['nstNo'],{'transport':_0x5f31d3(0x153),'toolName':_0x9f71b0,'bashCommandPreview':_0x22ab3e[_0x5f31d3(0x14d)](truncatePreview,_0x5255e4)}),_0x22ab3e[_0x5f31d3(0x14f)](_0x9f71b0,_0x22ab3e['xXbEJ'])&&console[_0x5f31d3(0x166)](formatPlaywrightCliConsoleLogMessage(_0x20d49b,_0x5255e4,_0x9f71b0)),{};},_0x30452b=async _0x54ef72=>{const _0xde336a=_0x41bccf;if(_0x54ef72[_0xde336a(0x132)]!=='PostToolUseFailure')return{};const _0xf4bd77=_0x54ef72;if(_0xf4bd77[_0xde336a(0x102)]!==_0xde336a(0xf8))return{};return await _0x1039f6[_0xde336a(0x126)](_0x22ab3e[_0xde336a(0x11f)],_0xf4bd77[_0xde336a(0x103)],{'transport':_0x22ab3e[_0xde336a(0x172)],'toolName':_0xde336a(0xf8)}),{};};return{'postToolUseHook':_0x5a2e1a,'postToolUseFailureHook':_0x30452b,'commandCounts':_0x580fa4};}async function runPlaywrightCliLifecycleCommand(_0x5c1df2){const _0x1e287a=_0xbddf,_0x461e51={'WLxWy':function(_0x2ad4b9,_0x1a9b44){return _0x2ad4b9??_0x1a9b44;},'WUpvl':function(_0x2d34e2,_0x21e92b,_0x24224c){return _0x2d34e2(_0x21e92b,_0x24224c);}},{sessionId:_0x285332,configPath:_0x120311,commandArgs:_0x3f948a,env:_0xb64b86,telemetry:_0x5bad0c,phase:_0x5ea4bc,metadata:_0x1c2052,timeoutMs:_0x2692cc}=_0x5c1df2;_0x5bad0c[_0x1e287a(0x10d)](_0x5ea4bc,_0x1c2052);try{const _0x149dc6=await runPlaywrightCliCommand({'sessionId':_0x285332,'configPath':_0x120311,'commandArgs':_0x3f948a,'cwd':process[_0x1e287a(0x168)](),'env':_0xb64b86,'timeoutMs':_0x461e51[_0x1e287a(0x167)](_0x2692cc,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x5bad0c['trackPhaseEnd'](_0x5ea4bc,{..._0x1c2052,'subcommand':_0x149dc6['invocation']['subcommand'],'stdoutPreview':_0x461e51['WUpvl'](truncatePreview,_0x149dc6[_0x1e287a(0x124)],0x7d0),'stderrPreview':_0x461e51[_0x1e287a(0x15a)](truncatePreview,_0x149dc6['stderr'],0x7d0)});}catch(_0x2ffe35){await _0x5bad0c['trackPhaseError'](_0x5ea4bc,_0x2ffe35,_0x1c2052);throw _0x2ffe35;}}export async function finalizeVerifyFeatureCliSession(_0x4c7f99){const _0x10b2f1=_0xbddf,_0x4e3e8e={'cijxe':_0x10b2f1(0x11b),'HmfzG':'tracing-stop','Orsrh':_0x10b2f1(0x116),'RVfFK':'playwright_cli_close','hOcLl':'close','eNOuk':function(_0x627909,_0x3e2a21){return _0x627909(_0x3e2a21);}},{telemetry:_0x2d8035,sessionId:_0x38bd35,configPath:_0x5e0bd6,cliArtifactDir:_0x203309,env:_0x43bdd8,transportMetadata:_0x2780ed}=_0x4c7f99,_0x201070=[{'phase':_0x4e3e8e[_0x10b2f1(0x165)],'commandArgs':[_0x4e3e8e[_0x10b2f1(0xfa)]]},{'phase':_0x4e3e8e[_0x10b2f1(0x111)],'commandArgs':['video-stop','--filename='+buildCliArtifactPath(_0x203309,'session-recording.webm')]},{'phase':_0x4e3e8e['RVfFK'],'commandArgs':[_0x4e3e8e[_0x10b2f1(0xf5)]]}];for(const _0x445f36 of _0x201070){try{await _0x4e3e8e['eNOuk'](runPlaywrightCliLifecycleCommand,{'sessionId':_0x38bd35,'configPath':_0x5e0bd6,'commandArgs':[..._0x445f36[_0x10b2f1(0x160)]],'env':_0x43bdd8,'telemetry':_0x2d8035,'phase':_0x445f36['phase'],'metadata':_0x2780ed});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x420c33){const _0xb63ee=_0xbddf,_0xd4fdca=[_0xb63ee(0x125),_0xb63ee(0xff)];for(const _0x452ef7 of _0xd4fdca){const _0x5a48ad=join(_0x420c33,_0x452ef7);try{return{'buffer':await readFile(_0x5a48ad),'source':_0x5a48ad};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x17785e){const _0x2ad3bd=_0xbddf,_0x2c330a={'Qranb':function(_0x3684b4,_0x42201c){return _0x3684b4<_0x42201c;},'zNiff':function(_0x4f3b2f,_0x407da4,_0x22da14){return _0x4f3b2f(_0x407da4,_0x22da14);}},{cwd:_0x33c0f6,cliArtifactDir:_0x3182f9,startTime:_0x251d93}=_0x17785e,_0x3a7cb5=[];await mkdir(_0x3182f9,{'recursive':!![]});const _0x38a0b6=await readdir(_0x33c0f6,{'withFileTypes':!![]});for(const _0x11bbcc of _0x38a0b6){if(!_0x11bbcc['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x2ad3bd(0x142)](_0x11bbcc[_0x2ad3bd(0x112)]))continue;const _0x2c34ea=join(_0x33c0f6,_0x11bbcc['name']),_0x235ee8=await stat(_0x2c34ea);if(_0x2c330a[_0x2ad3bd(0x139)](_0x235ee8[_0x2ad3bd(0x163)]+0x7d0,_0x251d93))continue;const _0x48fd9b=_0x2c330a['zNiff'](buildCliArtifactPath,_0x3182f9,_0x11bbcc['name']);if(_0x2c34ea===_0x48fd9b)continue;await rename(_0x2c34ea,_0x48fd9b),_0x3a7cb5[_0x2ad3bd(0x11d)](_0x11bbcc[_0x2ad3bd(0x112)]);}return _0x3a7cb5[_0x2ad3bd(0x174)]();}
|
|
1
|
+
(function(_0x20b1bb,_0x582769){const _0x296021=_0x16b3,_0x1ed679=_0x20b1bb();while(!![]){try{const _0x1942a7=parseInt(_0x296021(0x190))/0x1+-parseInt(_0x296021(0x119))/0x2*(parseInt(_0x296021(0x142))/0x3)+-parseInt(_0x296021(0x15e))/0x4+parseInt(_0x296021(0x165))/0x5*(-parseInt(_0x296021(0x194))/0x6)+-parseInt(_0x296021(0x178))/0x7+parseInt(_0x296021(0x11e))/0x8+parseInt(_0x296021(0x188))/0x9*(parseInt(_0x296021(0x11a))/0xa);if(_0x1942a7===_0x582769)break;else _0x1ed679['push'](_0x1ed679['shift']());}catch(_0x51df5d){_0x1ed679['push'](_0x1ed679['shift']());}}}(_0x4fef,0x1e1b6));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';function _0x4fef(){const _0x58860c=['cwd','trace.zip',']\x20**','tracing-stop','slice','replace','yNDRN','invocation','trace.trace.zip','\x22,\x20\x22','tool_name','ugcIy','toLocaleDateString','trackPhaseEnd','JcZJv','YPpca','log','video-stop','VXYqN','[playwright-cli]\x20','select\x20tab','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','subcommand','iUYCS','FJYAS','env','oJfuy','Jextf','15546VqAdiR','eCDYS','OnhvR','fill','`\x0a9.\x20Run\x20`','stop\x20tracing','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','domRef','en-US','pPBpJ','playwright_cli_tracing_stop','):\x20\x22','fOlnr','start\x20video\x20recording','snapshot','capture\x20snapshot','error','DEBUG','`\x0a-\x20`snapshot\x20--filename\x20','PostToolUse','target','textContent','\x20open`,\x20then\x20`','open\x20new\x20tab','01_initial.yml','vztnY','CYklo','trackPhaseError','636476XRRcjV','\x20open\x20','trackPhaseStart','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','QcKjV','\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','capture\x20key\x20step\x20`','5110kLxjfK','description','\x20>\x20','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','--filename=','stdout','stop\x20video\x20recording','\x5c$&','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','tab-select','authorName','01_mozilla-homepage.png','\x0a\x0a1.\x20Run\x20`','open\x20new\x20tab\x20','commandArgs','video-start','trim','awSFR','length','350224ruJLSe','>\x20\x22','content','fill\x20','phase','PostToolUseFailure','(?:^|\x5cs)','UVzCZ','stderr','03_result-visible.png','\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.','EJBiy','grcAV','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','ceRUp','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','4185081dIThTm','qtZaE','split','playwright-cli','AJgsr','press\x20','\x20tracing-start`,\x20then\x20`','map','72190Jpbrqk','lmMwR','UNxNZ','tool_failure','84XpdIfZ','\x20screenshot\x20--filename\x20','capture\x20snapshot\x20`','QvUil','playwright_cli_video_stop','\x20snapshot\x20--filename\x20','sort','\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','check\x20','authorEmail','playwright_cli_close','[ranger-verification-agent]\x20','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','hook_event_name','press','-\x20[','76jBRoVC','10oiHSdO','`\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`','name','OvSZc','51952SYeRNS','unaddressedComments','join','capture\x20screenshot','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','gwMNj','values','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'];_0x4fef=function(){return _0x58860c;};return _0x4fef();}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(_0x2f1def,_0x3e1b9e=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x2a847c=_0x16b3,_0xd55d61={'eViby':function(_0x4b1424,_0xc8dfca){return _0x4b1424>_0xc8dfca;},'XdssR':function(_0xaddd8f,_0x1fc01e){return _0xaddd8f+_0x1fc01e;}};return _0xd55d61['eViby'](_0x2f1def[_0x2a847c(0x177)],_0x3e1b9e)?_0xd55d61['XdssR'](_0x2f1def[_0x2a847c(0x12a)](0x0,_0x3e1b9e),'...'):_0x2f1def;}function buildCliArtifactPath(_0x1a6991,_0x4f3e59){return join(_0x1a6991,_0x4f3e59);}function toStepDisplayName(_0x1c7563){const _0x54d53a=_0x16b3,_0x437a03={'EGrIS':function(_0x3737a2,_0x395fcc){return _0x3737a2(_0x395fcc);}},_0x1e2fe5=basename(_0x1c7563)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x54d53a(0x12b)](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x1e2fe5,'isKeyStep':/^key_/i['test'](_0x437a03['EGrIS'](basename,_0x1c7563))};}function extractShellValue(_0x12101d){if(!_0x12101d)return null;return _0x12101d[0x1]??_0x12101d[0x2]??_0x12101d[0x3]??null;}function extractFilenameOption(_0xaf366c){return extractShellValue(_0xaf366c['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x50bdc1,_0x142804){const _0x5dc9a7=_0x16b3,_0x350c1b={'JcZJv':_0x5dc9a7(0x16c)},_0xc06bab=_0x142804[_0x5dc9a7(0x12b)](/[.*+?^${}()|[\]\\]/g,_0x350c1b[_0x5dc9a7(0x134)]);return extractShellValue(_0x50bdc1['match'](new RegExp(_0x5dc9a7(0x17e)+_0xc06bab+_0x5dc9a7(0x168))));}function _0x16b3(_0x3e2f31,_0x4a5b72){_0x3e2f31=_0x3e2f31-0x10c;const _0x4fefd7=_0x4fef();let _0x16b399=_0x4fefd7[_0x3e2f31];return _0x16b399;}function formatCommandTarget(_0x166ce6){const _0x1de7e5=_0x16b3,_0x1c7f84={'OvSZc':function(_0x3c5287,_0x371458,_0x5b31de){return _0x3c5287(_0x371458,_0x5b31de);}};if(!_0x166ce6)return _0x1de7e5(0x156);if(/^e\d+$/i['test'](_0x166ce6))return'ref\x20'+_0x166ce6;return JSON['stringify'](_0x1c7f84[_0x1de7e5(0x11d)](truncatePreview,_0x166ce6,0x78));}function formatPlaywrightCliLog(_0xb038a4,_0x4915ff){const _0x3f498=_0x16b3,_0xefffe={'UVzCZ':function(_0x3fbfa3,_0x268187,_0x1b7819){return _0x3fbfa3(_0x268187,_0x1b7819);},'qtZaE':'tracing-start','lGqFN':'start\x20tracing','bHqbh':_0x3f498(0x129),'fOlnr':_0x3f498(0x147),'iUYCS':function(_0x2b5578,_0x552970){return _0x2b5578(_0x552970);},'CYklo':_0x3f498(0x151),'oJfuy':function(_0x594a85,_0x12101a){return _0x594a85(_0x12101a);},'QcKjV':_0x3f498(0x121),'DWkIT':'check','igVxA':_0x3f498(0x145),'DtODg':_0x3f498(0x117),'iqAGh':'run-code','FJYAS':'run\x20custom\x20Playwright\x20code','eCDYS':'tab-new','XXePu':_0x3f498(0x159),'WusBj':_0x3f498(0x13a)};switch(_0x4915ff){case'open':{const _0x58b2e6=_0xefffe[_0x3f498(0x17f)](extractFirstCommandArgument,_0xb038a4,_0x4915ff);return _0x58b2e6?'open\x20'+_0x58b2e6:'open\x20browser';}case _0xefffe[_0x3f498(0x189)]:return _0xefffe['lGqFN'];case _0xefffe['bHqbh']:return _0xefffe[_0x3f498(0x14e)];case _0x3f498(0x174):return _0x3f498(0x14f);case _0x3f498(0x137):return _0x3f498(0x16b);case _0x3f498(0x150):{const _0x4c4448=_0xefffe[_0x3f498(0x13d)](extractFilenameOption,_0xb038a4);if(!_0x4c4448)return _0xefffe[_0x3f498(0x15c)];const {name:_0x43c136}=toStepDisplayName(_0x4c4448);return _0x3f498(0x196)+_0x43c136+'`';}case'screenshot':{const _0x14ed20=_0xefffe[_0x3f498(0x140)](extractFilenameOption,_0xb038a4);if(!_0x14ed20)return _0xefffe[_0x3f498(0x162)];const {name:_0x4d5ebf,isKeyStep:_0x166957}=_0xefffe['oJfuy'](toStepDisplayName,_0x14ed20);return _0x166957?_0x3f498(0x164)+_0x4d5ebf+'`':'capture\x20step\x20`'+_0x4d5ebf+'`';}case'click':return'click\x20'+_0xefffe[_0x3f498(0x13d)](formatCommandTarget,_0xefffe['UVzCZ'](extractFirstCommandArgument,_0xb038a4,_0x4915ff));case _0xefffe['DWkIT']:return _0x3f498(0x111)+formatCommandTarget(extractFirstCommandArgument(_0xb038a4,_0x4915ff));case _0xefffe['igVxA']:return _0x3f498(0x17b)+formatCommandTarget(_0xefffe[_0x3f498(0x17f)](extractFirstCommandArgument,_0xb038a4,_0x4915ff));case _0xefffe['DtODg']:return _0x3f498(0x18d)+formatCommandTarget(_0xefffe['UVzCZ'](extractFirstCommandArgument,_0xb038a4,_0x4915ff));case _0xefffe['iqAGh']:return _0xefffe[_0x3f498(0x13e)];case _0xefffe[_0x3f498(0x143)]:{const _0x1d9eb3=extractFirstCommandArgument(_0xb038a4,_0x4915ff);return _0x1d9eb3?_0x3f498(0x172)+_0x1d9eb3:_0xefffe['XXePu'];}case _0x3f498(0x16e):{const _0x2db94f=extractFirstCommandArgument(_0xb038a4,_0x4915ff);return _0x2db94f?'select\x20tab\x20'+_0x2db94f:_0xefffe['WusBj'];}default:return _0x4915ff;}}function extractPlaywrightCliToolDescription(_0x56fa00){const _0x2bc206=_0x16b3,_0x5dfce7={'HZxWr':function(_0xc72625,_0x4c16a3){return _0xc72625!==_0x4c16a3;},'ceRUp':function(_0x978902,_0x58d42f){return _0x978902>_0x58d42f;}},_0xa217b8=_0x56fa00[_0x2bc206(0x166)];if(_0x5dfce7['HZxWr'](typeof _0xa217b8,'string'))return null;const _0x565ac8=_0xa217b8[_0x2bc206(0x175)]()[_0x2bc206(0x12b)](/\s+/g,'\x20');return _0x5dfce7[_0x2bc206(0x186)](_0x565ac8['length'],0x0)?_0x565ac8:null;}export function formatPlaywrightCliConsoleLogMessage(_0xe90aa8,_0x4ea7ca,_0x59ee95){const _0x1e42ce=_0x16b3,_0x53ad03={'BZJdS':function(_0x5f6a34,_0xea286d){return _0x5f6a34(_0xea286d);}},_0x480e21=formatPlaywrightCliLog(_0x4ea7ca,_0x59ee95),_0x19af71=_0x53ad03['BZJdS'](extractPlaywrightCliToolDescription,_0xe90aa8);if(!_0x19af71)return _0x1e42ce(0x139)+_0x480e21;if(process[_0x1e42ce(0x13f)][_0x1e42ce(0x153)])return _0x1e42ce(0x114)+_0x19af71+'\x20('+_0x480e21+')';return _0x1e42ce(0x114)+_0x19af71;}export function buildVerifyFeatureCliDebugPrompt(_0x3f17a9,_0x43f673){const _0x34f36f=_0x16b3,_0x1fc712={'Jextf':function(_0x1e35f7,_0x2f75eb,_0x33724d){return _0x1e35f7(_0x2f75eb,_0x33724d);},'sBqSO':'00_mozilla-homepage.yml','ZjxAS':function(_0x31e7fb,_0x3a28b2,_0x280fea){return _0x31e7fb(_0x3a28b2,_0x280fea);},'wsIxO':'03_learn-more.png','soFNI':function(_0x58be11,_0x316abf){return _0x58be11(_0x316abf);},'gWGzj':function(_0x3b4d4b,_0x1b7ab8){return _0x3b4d4b(_0x1b7ab8);}},_0x7d7b20=_0x1fc712[_0x34f36f(0x141)](buildCliArtifactPath,_0x43f673,_0x1fc712['sBqSO']),_0x5e869b=buildCliArtifactPath(_0x43f673,_0x34f36f(0x170)),_0x3cb26f=_0x1fc712[_0x34f36f(0x141)](buildCliArtifactPath,_0x43f673,'02_learn-more.yml'),_0x52032a=_0x1fc712['ZjxAS'](buildCliArtifactPath,_0x43f673,_0x1fc712['wsIxO']),_0x50183d=_0x1fc712['soFNI'](quoteShellArg,_0x7d7b20),_0x5e5fa4=quoteShellArg(_0x5e869b),_0x26936f=quoteShellArg(_0x3cb26f),_0x1be674=_0x1fc712['gWGzj'](quoteShellArg,_0x52032a);return _0x34f36f(0x148)+_0x3f17a9+_0x34f36f(0x171)+_0x3f17a9+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x3f17a9+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x3f17a9+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x43f673+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x3f17a9+'\x20snapshot\x20--filename\x20'+_0x50183d+_0x34f36f(0x125)+_0x3f17a9+_0x34f36f(0x195)+_0x5e5fa4+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x3f17a9+'\x20snapshot\x20--filename\x20'+_0x26936f+_0x34f36f(0x146)+_0x3f17a9+_0x34f36f(0x195)+_0x1be674+_0x34f36f(0x185);}export function buildVerifyFeatureCliPrompt(_0x37da8f){const _0x515791=_0x16b3,_0x5af6b3={'awSFR':'numeric','gdGpY':'Reviewer','AJgsr':_0x515791(0x167),'lmMwR':function(_0x439ce6,_0x26b4e4,_0x588e0f){return _0x439ce6(_0x26b4e4,_0x588e0f);},'gwMNj':_0x515791(0x15a),'ojMhy':function(_0x676208,_0x106929,_0x1328d4){return _0x676208(_0x106929,_0x1328d4);},'jZLrr':function(_0x18f6fe,_0x36a303){return _0x18f6fe(_0x36a303);},'TKhPP':function(_0x589604,_0x1dd0e0){return _0x589604>_0x1dd0e0;},'EJBiy':function(_0x2ea5ed,_0xc7bcf7){return _0x2ea5ed(_0xc7bcf7);},'QvUil':function(_0x57f774,_0x366704,_0x20e6da){return _0x57f774(_0x366704,_0x20e6da);},'ZysaN':'02_button-clicked.png','phSbG':_0x515791(0x181),'ILBsT':'key_04_success-state.png'},{checklistItem:_0x262c4b,itemFeedback:_0x1eef0b,taskDescription:_0xefee81,cliCommandPrefix:_0xbc5fda,cliArtifactDir:_0x30662e,isCdpMode:_0x1583af,url:_0x22fa8e,cdpEndpoint:_0x66ecbe,loginInstructions:_0x21d3c9}=_0x37da8f,_0x3b9c26=_0x5af6b3[_0x515791(0x191)](buildCliArtifactPath,_0x30662e,_0x5af6b3[_0x515791(0x123)]),_0xe5402d=_0x5af6b3['ojMhy'](buildCliArtifactPath,_0x30662e,'02_state.yml'),_0x34fdd4=buildCliArtifactPath(_0x30662e,'key_03_success-state.png'),_0x446f1c=_0x5af6b3[_0x515791(0x191)](buildCliArtifactPath,_0x30662e,'01_initial-state.png'),_0x44fbbe=quoteShellArg(_0x3b9c26),_0x1643df=quoteShellArg(_0xe5402d),_0x412fcf=quoteShellArg(_0x34fdd4),_0x5b04c3=_0x5af6b3['jZLrr'](quoteShellArg,_0x446f1c),_0x3267b7=_0x262c4b['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x262c4b['notes']:'';let _0xd6c337='';if(_0x1eef0b&&_0x5af6b3['TKhPP'](_0x1eef0b['unaddressedComments'][_0x515791(0x177)],0x0)){const _0x563ef6=_0x1eef0b[_0x515791(0x11f)][_0x515791(0x18f)](_0x2bfb66=>{const _0x5ce80c=_0x515791,_0x2d26b9=new Date(_0x2bfb66['createdAt'])[_0x5ce80c(0x132)](_0x5ce80c(0x14a),{'month':'short','day':_0x5af6b3[_0x5ce80c(0x176)]}),_0x3d8464=_0x2bfb66[_0x5ce80c(0x16f)]||_0x2bfb66[_0x5ce80c(0x112)]||_0x5af6b3['gdGpY'],_0x39e5e6=_0x2bfb66[_0x5ce80c(0x149)]?'\x20(on\x20element:\x20<'+(_0x2bfb66[_0x5ce80c(0x149)]['selector'][_0x5ce80c(0x18a)](_0x5af6b3[_0x5ce80c(0x18c)])['pop']()?.['split'](':')[0x0]||'element')+_0x5ce80c(0x179)+(_0x2bfb66[_0x5ce80c(0x149)][_0x5ce80c(0x157)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0x5ce80c(0x118)+_0x2bfb66['id']+_0x5ce80c(0x128)+_0x3d8464+'**\x20('+_0x2d26b9+_0x5ce80c(0x14d)+_0x2bfb66[_0x5ce80c(0x17a)]+'\x22'+_0x39e5e6;})[_0x515791(0x120)]('\x0a');_0xd6c337=_0x515791(0x110)+_0x563ef6;}const _0x9f9fad=_0x1eef0b?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x1eef0b['canonicalFlow']:'',_0x40d887=_0x1583af?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x66ecbe+_0x515791(0x122):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x22fa8e+'\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',_0x5c062c=_0x22fa8e?_0x5af6b3[_0x515791(0x183)](quoteShellArg,_0x22fa8e):'',_0x9f9c8d=_0x1583af?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0xbc5fda+_0x515791(0x158)+_0xbc5fda+_0x515791(0x18e)+_0xbc5fda+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x30662e+_0x515791(0x187)+_0xbc5fda+_0x515791(0x10e)+_0x44fbbe+'`\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`'+_0xbc5fda+'\x20screenshot\x20--filename\x20'+_0x5b04c3+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0xbc5fda+_0x515791(0x163):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0xbc5fda+_0x515791(0x15f)+_0x5c062c+'`,\x20then\x20`'+_0xbc5fda+_0x515791(0x18e)+_0xbc5fda+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x30662e+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0xbc5fda+_0x515791(0x10e)+_0x44fbbe+'`\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`'+_0xbc5fda+_0x515791(0x195)+_0x5b04c3+_0x515791(0x161)+_0xbc5fda+'\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',_0x5ba351=_0x1583af?_0x515791(0x182):'\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.',_0x11b383=_0x21d3c9?_0x515791(0x13b)+_0x21d3c9+'\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'+_0x262c4b['description']+_0x3267b7+_0xd6c337+_0x9f9fad+_0x515791(0x16d)+_0xefee81+'\x0a\x0a'+_0x40d887+_0x11b383+'\x0a\x0a'+_0x9f9c8d+_0x515791(0x115)+_0xbc5fda+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x30662e+_0x515791(0x154)+_0x1643df+'`\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'+_0x412fcf+_0x515791(0x11b)+_0x30662e+'`:\x20\x22'+_0x446f1c+'\x22,\x20\x22'+_0x5af6b3[_0x515791(0x10c)](buildCliArtifactPath,_0x30662e,_0x5af6b3['ZysaN'])+_0x515791(0x12f)+_0x5af6b3['lmMwR'](buildCliArtifactPath,_0x30662e,_0x5af6b3['phSbG'])+'\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22'+buildCliArtifactPath(_0x30662e,_0x5af6b3['ILBsT'])+'\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'+_0x5ba351+'\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function summarizeVerifyFeatureCliCommandAvailability(_0x39609d){const _0x44b65b=_0x16b3,_0x1f0f02={'bXmKB':function(_0x3030d1,_0x530563){return _0x3030d1===_0x530563;}},_0x49a1ec=[..._0x39609d['keys']()][_0x44b65b(0x10f)]();let _0x27ec37=0x0;for(const _0x2aa1d6 of _0x39609d[_0x44b65b(0x124)]()){_0x27ec37+=_0x2aa1d6;}return{'cliCommandCount':_0x27ec37,'cliCommandsSeen':_0x49a1ec,'noCliCommandsCalled':_0x1f0f02['bXmKB'](_0x27ec37,0x0)};}export function createVerifyFeatureCliHooks(_0x3c1f89){const _0x4d48e7=_0x16b3,_0x3853a6={'vBTCg':function(_0x23680a,_0x49947e){return _0x23680a!==_0x49947e;},'VXYqN':function(_0x8c1d23,_0x527166){return _0x8c1d23(_0x527166);},'tJSSc':function(_0x10ae72,_0x37af1f){return _0x10ae72(_0x37af1f);},'hCVJZ':function(_0x4556b9,_0x233b85,_0x2c13f3,_0x22d29b){return _0x4556b9(_0x233b85,_0x2c13f3,_0x22d29b);},'mJANx':_0x4d48e7(0x193),'yNDRN':'playwright-cli','GXUQx':'Bash'},_0x2b8c2f=new Map(),_0x48d7a7=async _0x1a1d5f=>{const _0x255806=_0x4d48e7;if(_0x1a1d5f['hook_event_name']!==_0x255806(0x155))return{};const _0xf7e588=_0x1a1d5f;if(_0x3853a6['vBTCg'](_0xf7e588['tool_name'],'Bash'))return{};const _0x5ce4d1=_0xf7e588['tool_input'],_0x420073=_0x3853a6[_0x255806(0x138)](extractBashCommand,_0x5ce4d1);if(!_0x420073)return{};const _0x4b3ca0=_0x3853a6['tJSSc'](parsePlaywrightCliCommand,_0x420073);if(!_0x4b3ca0)return{};return _0x2b8c2f['set'](_0x4b3ca0,(_0x2b8c2f['get'](_0x4b3ca0)||0x0)+0x1),_0x3c1f89[_0x255806(0x160)]('tool_call',{'transport':_0x255806(0x18b),'toolName':_0x4b3ca0}),_0x3c1f89[_0x255806(0x133)]('tool_call',{'transport':'playwright-cli','toolName':_0x4b3ca0,'bashCommandPreview':truncatePreview(_0x420073)}),_0x4b3ca0!==_0x255806(0x150)&&console[_0x255806(0x136)](_0x3853a6['hCVJZ'](formatPlaywrightCliConsoleLogMessage,_0x5ce4d1,_0x420073,_0x4b3ca0)),{};},_0x113541=async _0x2210a3=>{const _0x30ba34=_0x4d48e7;if(_0x2210a3[_0x30ba34(0x116)]!==_0x30ba34(0x17d))return{};const _0x3ed385=_0x2210a3;if(_0x3ed385[_0x30ba34(0x130)]!=='Bash')return{};return await _0x3c1f89[_0x30ba34(0x15d)](_0x3853a6['mJANx'],_0x3ed385[_0x30ba34(0x152)],{'transport':_0x3853a6[_0x30ba34(0x12c)],'toolName':_0x3853a6['GXUQx']}),{};};return{'postToolUseHook':_0x48d7a7,'postToolUseFailureHook':_0x113541,'commandCounts':_0x2b8c2f};}async function runPlaywrightCliLifecycleCommand(_0x4623ef){const _0x25ce79=_0x16b3,_0x2e5c75={'grcAV':function(_0x1bbbc4,_0x4b367f){return _0x1bbbc4(_0x4b367f);},'hZMxt':function(_0x3a4186,_0x550083,_0x5e6c21){return _0x3a4186(_0x550083,_0x5e6c21);}},{sessionId:_0xf9aab5,configPath:_0x2a8373,commandArgs:_0x152eb5,env:_0x48eb4d,telemetry:_0x485c59,phase:_0x41f953,metadata:_0x35bbc5,timeoutMs:_0x2e04f7}=_0x4623ef;_0x485c59['trackPhaseStart'](_0x41f953,_0x35bbc5);try{const _0x44881c=await _0x2e5c75[_0x25ce79(0x184)](runPlaywrightCliCommand,{'sessionId':_0xf9aab5,'configPath':_0x2a8373,'commandArgs':_0x152eb5,'cwd':process[_0x25ce79(0x126)](),'env':_0x48eb4d,'timeoutMs':_0x2e04f7??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x485c59['trackPhaseEnd'](_0x41f953,{..._0x35bbc5,'subcommand':_0x44881c[_0x25ce79(0x12d)][_0x25ce79(0x13c)],'stdoutPreview':_0x2e5c75['hZMxt'](truncatePreview,_0x44881c[_0x25ce79(0x16a)],0x7d0),'stderrPreview':truncatePreview(_0x44881c[_0x25ce79(0x180)],0x7d0)});}catch(_0x2c1438){await _0x485c59['trackPhaseError'](_0x41f953,_0x2c1438,_0x35bbc5);throw _0x2c1438;}}export async function finalizeVerifyFeatureCliSession(_0x329629){const _0x49fbea=_0x16b3,_0x3e15db={'OnhvR':_0x49fbea(0x14c),'UNxNZ':'tracing-stop','ugcIy':_0x49fbea(0x113),'YPpca':function(_0x40b0c6,_0x3e273e){return _0x40b0c6(_0x3e273e);}},{telemetry:_0x11f041,sessionId:_0x301ab3,configPath:_0xb7da,cliArtifactDir:_0x299af3,env:_0x17dd44,transportMetadata:_0x180eda}=_0x329629,_0x2114af=[{'phase':_0x3e15db[_0x49fbea(0x144)],'commandArgs':[_0x3e15db[_0x49fbea(0x192)]]},{'phase':_0x49fbea(0x10d),'commandArgs':['video-stop',_0x49fbea(0x169)+buildCliArtifactPath(_0x299af3,'session-recording.webm')]},{'phase':_0x3e15db[_0x49fbea(0x131)],'commandArgs':['close']}];for(const _0xdec5d5 of _0x2114af){try{await _0x3e15db[_0x49fbea(0x135)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x301ab3,'configPath':_0xb7da,'commandArgs':[..._0xdec5d5[_0x49fbea(0x173)]],'env':_0x17dd44,'telemetry':_0x11f041,'phase':_0xdec5d5[_0x49fbea(0x17c)],'metadata':_0x180eda});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x5ba51d){const _0x2e9157=_0x16b3,_0x3d9a53={'bBesu':_0x2e9157(0x12e),'aqVcy':function(_0x3fd262,_0x5a79d2,_0x30b9ba){return _0x3fd262(_0x5a79d2,_0x30b9ba);},'OzSLF':function(_0x4956e3,_0x4274d0){return _0x4956e3(_0x4274d0);}},_0x302aa5=[_0x2e9157(0x127),_0x3d9a53['bBesu']];for(const _0x2c42a6 of _0x302aa5){const _0x573277=_0x3d9a53['aqVcy'](join,_0x5ba51d,_0x2c42a6);try{return{'buffer':await _0x3d9a53['OzSLF'](readFile,_0x573277),'source':_0x573277};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x2c0ed6){const _0x2c3fea=_0x16b3,_0x5a61f7={'pPBpJ':function(_0x1f7f58,_0x56a4d0){return _0x1f7f58(_0x56a4d0);},'cihpg':function(_0x434b10,_0x2df794){return _0x434b10+_0x2df794;},'vztnY':function(_0x5d3052,_0x3a728b,_0x5e353e){return _0x5d3052(_0x3a728b,_0x5e353e);}},{cwd:_0x53e2ee,cliArtifactDir:_0x3ff394,startTime:_0x25be2b}=_0x2c0ed6,_0x131f95=[];await mkdir(_0x3ff394,{'recursive':!![]});const _0x2902c6=await readdir(_0x53e2ee,{'withFileTypes':!![]});for(const _0x5e01cd of _0x2902c6){if(!_0x5e01cd['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x5e01cd['name']))continue;const _0x12660e=join(_0x53e2ee,_0x5e01cd[_0x2c3fea(0x11c)]),_0x896ecc=await _0x5a61f7[_0x2c3fea(0x14b)](stat,_0x12660e);if(_0x5a61f7['cihpg'](_0x896ecc['mtimeMs'],0x7d0)<_0x25be2b)continue;const _0x48997e=buildCliArtifactPath(_0x3ff394,_0x5e01cd[_0x2c3fea(0x11c)]);if(_0x12660e===_0x48997e)continue;await _0x5a61f7[_0x2c3fea(0x15b)](rename,_0x12660e,_0x48997e),_0x131f95['push'](_0x5e01cd[_0x2c3fea(0x11c)]);}return _0x131f95[_0x2c3fea(0x10f)]();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x262ef1=_0x45ee;(function(_0x5ec739,_0x5224ec){const _0x5407e3=_0x45ee,_0x48b37c=_0x5ec739();while(!![]){try{const _0x5561db=-parseInt(_0x5407e3(0x123))/0x1*(-parseInt(_0x5407e3(0x10b))/0x2)+-parseInt(_0x5407e3(0x112))/0x3+-parseInt(_0x5407e3(0x110))/0x4*(parseInt(_0x5407e3(0x11b))/0x5)+parseInt(_0x5407e3(0x12b))/0x6+parseInt(_0x5407e3(0x10f))/0x7+parseInt(_0x5407e3(0x162))/0x8*(parseInt(_0x5407e3(0x177))/0x9)+-parseInt(_0x5407e3(0x182))/0xa;if(_0x5561db===_0x5224ec)break;else _0x48b37c['push'](_0x48b37c['shift']());}catch(_0x1ce57b){_0x48b37c['push'](_0x48b37c['shift']());}}}(_0x15d6,0xebfe7));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(['session\x20create','execute',_0x262ef1(0x1ce),'ask','goto','wait-for',_0x262ef1(0x1bf),_0x262ef1(0x1ba)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x1a979d,_0x4ae73b){const _0x531d36=_0x262ef1,_0x646eb0={'lZZVR':function(_0x2592d8,_0xccb64b,_0x283a73){return _0x2592d8(_0xccb64b,_0x283a73);}};return _0x646eb0[_0x531d36(0x1a4)](join,_0x1a979d,_0x4ae73b);}export class NovaActArtifactRecorder{['params'];[_0x262ef1(0x195)]=null;['context']=null;[_0x262ef1(0x150)]=null;[_0x262ef1(0x13c)]=[];['frameCount']=0x0;[_0x262ef1(0x163)]=0x0;['traceSampleTimer']=null;[_0x262ef1(0x143)]=null;[_0x262ef1(0x1b7)]=![];[_0x262ef1(0x132)]=![];[_0x262ef1(0x1d1)]=![];['stopped']=![];constructor(_0x4ce186){this['params']=_0x4ce186;}async[_0x262ef1(0x13a)](){const _0x4f7a6d=_0x262ef1,_0x5f1b13={'oeQxq':_0x4f7a6d(0x12e)};if(this['startAttempted'])return;this['startAttempted']=!![];const _0x190996=await this[_0x4f7a6d(0x1ae)](),_0x35fd94=_0x190996[_0x4f7a6d(0x1b1)];if(!_0x35fd94)throw new Error(_0x4f7a6d(0x1a0)+this[_0x4f7a6d(0x107)]['novaOptions'][_0x4f7a6d(0x185)]);await mkdir(this['params']['cliArtifactDir'],{'recursive':!![]}),this['browser']=await chromium['connectOverCDP'](_0x35fd94,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this['context']=this['browser'][_0x4f7a6d(0x15c)]()[0x0]??null;if(!this['context'])throw new Error(_0x4f7a6d(0x139));await this[_0x4f7a6d(0x14c)]['tracing'][_0x4f7a6d(0x13a)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this[_0x4f7a6d(0x1b7)]=!![],this[_0x4f7a6d(0x158)](),await this['startScreencast'](),this['params'][_0x4f7a6d(0x12a)]['trackPhaseStart'](_0x5f1b13[_0x4f7a6d(0x178)],{...this[_0x4f7a6d(0x107)]['transportMetadata'],'cdpEndpoint':_0x35fd94,'browserPid':_0x190996['browser_pid'],'sessionState':_0x190996[_0x4f7a6d(0x154)]}),this['params']['telemetry'][_0x4f7a6d(0x1ab)](_0x4f7a6d(0x12e),{...this[_0x4f7a6d(0x107)]['transportMetadata'],'tracingStarted':this[_0x4f7a6d(0x1b7)],'screencastStarted':this['screencastStarted']});}async['stop'](){const _0x1889c6=_0x262ef1,_0x114b93={'GakiI':_0x1889c6(0x10a),'lggQv':function(_0x4b39e6,_0x437c71,_0x35ce6a){return _0x4b39e6(_0x437c71,_0x35ce6a);}};if(this['stopped'])return;this[_0x1889c6(0x173)]=!![];const _0x3d6736={...this[_0x1889c6(0x107)]['transportMetadata'],'frameCount':this[_0x1889c6(0x151)],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x1889c6(0x132)]};this['params']['telemetry']['trackPhaseStart'](_0x114b93['GakiI'],_0x3d6736);try{await this[_0x1889c6(0x1a7)](),await this[_0x1889c6(0xfa)](),await this['stopScreencast'](),await Promise['allSettled'](this['frameWrites']);this['context']&&this['tracingStarted']&&await this[_0x1889c6(0x14c)][_0x1889c6(0x1b8)]['stop']({'path':_0x114b93[_0x1889c6(0x12d)](buildCliArtifactPath,this['params']['cliArtifactDir'],_0x1889c6(0x122))});const _0x55a8ed=await this[_0x1889c6(0x11e)]();this['params'][_0x1889c6(0x12a)]['trackPhaseEnd'](_0x114b93[_0x1889c6(0x109)],{..._0x3d6736,'videoPath':_0x55a8ed});}catch(_0x13dbd6){await this['params']['telemetry']['trackPhaseError']('nova_act_artifact_recording_stop',_0x13dbd6,_0x3d6736);}finally{await this['browser']?.['close']()['catch'](()=>undefined),this[_0x1889c6(0x195)]=null,this['context']=null,this['frameSession']=null;}}async['readSessionMetadataWithRetry'](){const _0x5aa5ce=_0x262ef1,_0x810ee4={'rGPsi':function(_0x11a704,_0x2d121a,_0x398277,_0x1a4af6,_0x57e613,_0x1cc233){return _0x11a704(_0x2d121a,_0x398277,_0x1a4af6,_0x57e613,_0x1cc233);},'OhTNR':'browser','FkqeT':function(_0x34d271,_0x236c97,_0xd86c4d){return _0x34d271(_0x236c97,_0xd86c4d);},'dCdQp':function(_0x55946e,_0x41d950){return _0x55946e(_0x41d950);},'hkghp':function(_0x1e5d6d,_0x3f6f63){return _0x1e5d6d instanceof _0x3f6f63;}},_0x241f81=_0x810ee4[_0x5aa5ce(0x14d)](join,homedir(),'.act_cli',_0x810ee4[_0x5aa5ce(0x1cc)],'sessions',this[_0x5aa5ce(0x107)][_0x5aa5ce(0x116)]['sessionId']+_0x5aa5ce(0x1d0)),_0x19d82b=Date[_0x5aa5ce(0x13f)]();let _0x54a7b2;do{try{const _0x457318=JSON['parse'](await _0x810ee4[_0x5aa5ce(0x1c2)](readFile,_0x241f81,_0x5aa5ce(0x1a3)));if(_0x457318['cdp_endpoint'])return _0x457318;_0x54a7b2=new Error(_0x5aa5ce(0x147)+_0x241f81);}catch(_0x404016){_0x54a7b2=_0x404016;}await _0x810ee4[_0x5aa5ce(0x1aa)](delay,0x64);}while(Date[_0x5aa5ce(0x13f)]()-_0x19d82b<NOVA_ARTIFACT_METADATA_WAIT_MS);if(_0x810ee4['hkghp'](_0x54a7b2,Error))throw _0x54a7b2;throw new Error('Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20'+_0x241f81);}async['startScreencast'](){const _0x50b5ac=_0x262ef1,_0xf38fc9={'jsZji':function(_0x1a765c,_0xe9f764){return _0x1a765c(_0xe9f764);},'pDGdU':_0x50b5ac(0x1b6),'VBXaV':function(_0x439fb8,_0xd5313e,_0x1430a7){return _0x439fb8(_0xd5313e,_0x1430a7);},'CjMml':_0x50b5ac(0x17f),'tjuSr':_0x50b5ac(0x13b),'LuOIl':'jpeg'};if(!this['context'])return;const _0x1a1f72=this['context'][_0x50b5ac(0x1ad)]()[0x0];if(!_0x1a1f72)return;const _0x412f52=this['getFrameDir']();await _0xf38fc9[_0x50b5ac(0x1c1)](mkdir,_0x412f52,{'recursive':!![]});const _0x4a9a3f=await this[_0x50b5ac(0x14c)][_0x50b5ac(0x14e)](_0x1a1f72);this['frameSession']=_0x4a9a3f,_0x4a9a3f['on'](_0xf38fc9[_0x50b5ac(0x19b)],_0x147296=>{const _0x14023d=_0x50b5ac,_0x288c48=++this['frameCount'],_0x5ff13e=join(_0x412f52,'frame-'+_0xf38fc9[_0x14023d(0x12c)](String,_0x288c48)[_0x14023d(0x135)](0x6,'0')+'.jpg'),_0x5bac02=writeFile(_0x5ff13e,Buffer['from'](_0x147296['data'],_0xf38fc9[_0x14023d(0x129)]))['catch'](()=>undefined)['finally'](()=>_0x4a9a3f['send']('Page.screencastFrameAck',{'sessionId':_0x147296['sessionId']}))[_0x14023d(0x175)](()=>undefined)['catch'](()=>undefined);this[_0x14023d(0x13c)][_0x14023d(0x172)](_0x5bac02);}),await _0x4a9a3f[_0x50b5ac(0x18c)](_0xf38fc9['tjuSr'],{'format':_0xf38fc9[_0x50b5ac(0x194)],'quality':0x4b,'everyNthFrame':0x6}),this[_0x50b5ac(0x132)]=!![];}async['stopScreencast'](){const _0x48a1a1=_0x262ef1;if(!this[_0x48a1a1(0x150)]||!this[_0x48a1a1(0x132)])return;await this['frameSession']['send'](_0x48a1a1(0x189))['catch'](()=>undefined);}['startTraceSampling'](){const _0x5a58af=_0x262ef1,_0x1180df={'WdEXJ':function(_0x262f5d,_0x345b5b,_0x760195){return _0x262f5d(_0x345b5b,_0x760195);}};this[_0x5a58af(0x11c)](),this[_0x5a58af(0x197)]=_0x1180df['WdEXJ'](setInterval,()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x262ef1(0x11c)](){if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this['captureTraceSample']()['finally'](()=>{this['traceSampleInFlight']=null;});}async[_0x262ef1(0x1a7)](){const _0x25963a=_0x262ef1;this[_0x25963a(0x197)]&&(clearInterval(this['traceSampleTimer']),this['traceSampleTimer']=null),await this['traceSampleInFlight']?.['catch'](()=>undefined);}async[_0x262ef1(0xfa)](){const _0x29973c=_0x262ef1,_0x3f6106=this['context']?.[_0x29973c(0x1ad)]()[0x0];if(!_0x3f6106)return;try{await _0x3f6106[_0x29973c(0x146)](_0x29973c(0x1c9))[_0x29973c(0x1af)](_0x36fc07=>_0x36fc07['tagName'],undefined,{'timeout':0x3e8}),this[_0x29973c(0x163)]++;}catch{}}async['encodeScreencastVideo'](){const _0xa60600=_0x262ef1,_0xb46aec={'QfUSX':function(_0x1c240b,_0x46a3ea){return _0x1c240b<_0x46a3ea;},'WfoRd':function(_0x3ba413,_0x3d3bee,_0x4d050f){return _0x3ba413(_0x3d3bee,_0x4d050f);},'OTbhM':'videos','TirPr':_0xa60600(0x1a6),'KVcov':_0xa60600(0x16e),'AwsDw':'-c:v','ARhrR':'libvpx-vp9','cFhpr':_0xa60600(0x196)};if(_0xb46aec[_0xa60600(0x160)](this[_0xa60600(0x151)],0x2))return null;const _0x12dd4e=await resolveFfmpegPath();if(!_0x12dd4e)return null;const _0x495afa=_0xb46aec['WfoRd'](join,this['params'][_0xa60600(0x18d)],_0xb46aec[_0xa60600(0xfc)]);await _0xb46aec['WfoRd'](mkdir,_0x495afa,{'recursive':!![]});const _0x1884d1=join(_0x495afa,'session-recording.webm');return await _0xb46aec[_0xa60600(0x133)](execFileAsync,_0x12dd4e,['-y','-hide_banner','-loglevel','error',_0xa60600(0x152),'10','-i',_0xb46aec[_0xa60600(0x133)](join,this['getFrameDir'](),_0xa60600(0xfb)),_0xb46aec['TirPr'],_0xb46aec[_0xa60600(0x184)],_0xb46aec[_0xa60600(0x191)],_0xb46aec[_0xa60600(0x15b)],_0xb46aec[_0xa60600(0x114)],'yuv420p',_0x1884d1]),_0x1884d1;}[_0x262ef1(0xf3)](){const _0x3a4aa2=_0x262ef1;return join(this['params'][_0x3a4aa2(0x18d)],_0x3a4aa2(0x1bc));}}async function delay(_0x176a87){await new Promise(_0x4d8773=>setTimeout(_0x4d8773,_0x176a87));}async function resolveFfmpegPath(){const _0x65a582=_0x262ef1,_0x4178e2={'vuKkn':function(_0x5ae3ca,_0x2c5962){return _0x5ae3ca(_0x2c5962);},'NRCXk':'ffmpeg','yGDbQ':function(_0x495886,_0x45d4c3,_0x202970,_0x2f9b22,_0x27c188){return _0x495886(_0x45d4c3,_0x202970,_0x2f9b22,_0x27c188);},'WUJmw':_0x65a582(0x1ca),'nKKJp':function(_0x512622,_0x53e5fe,_0x1b2fc7,_0x330655){return _0x512622(_0x53e5fe,_0x1b2fc7,_0x330655);},'ijEdi':function(_0x30d040,_0x416807){return _0x30d040(_0x416807);}};if(await _0x4178e2[_0x65a582(0x187)](canRunFfmpeg,_0x4178e2['NRCXk']))return'ffmpeg';const _0x34de06=[_0x4178e2[_0x65a582(0xfe)](join,homedir(),'Library',_0x65a582(0x18b),_0x4178e2['WUJmw']),_0x4178e2['nKKJp'](join,homedir(),_0x65a582(0x1a8),_0x65a582(0x1ca))];for(const _0x27d66f of _0x34de06){try{const _0xf0a303=await readdir(_0x27d66f),_0x19499d=_0xf0a303[_0x65a582(0x1cf)](_0x5d9967=>_0x5d9967['startsWith'](_0x65a582(0x159)))[_0x65a582(0x106)]()[_0x65a582(0x111)]()['flatMap'](_0x4bfa8a=>[join(_0x27d66f,_0x4bfa8a,'ffmpeg-mac'),join(_0x27d66f,_0x4bfa8a,'ffmpeg-linux'),join(_0x27d66f,_0x4bfa8a,'ffmpeg.exe')]);for(const _0xcf42a2 of _0x19499d){if(await _0x4178e2[_0x65a582(0x119)](canRunFfmpeg,_0xcf42a2))return _0xcf42a2;}}catch{}}return null;}async function canRunFfmpeg(_0x39817e){const _0x2a1df0={'naONL':function(_0x22c5bf,_0x737c5c,_0x10180b){return _0x22c5bf(_0x737c5c,_0x10180b);},'xIyfI':'-version'};try{return await _0x2a1df0['naONL'](execFileAsync,_0x39817e,[_0x2a1df0['xIyfI']]),!![];}catch{return![];}}function toStepDisplayName(_0x14b0fa){const _0x16e400=_0x262ef1,_0xfb7104={'zuGaH':function(_0x46e2f9,_0x2186c1){return _0x46e2f9(_0x2186c1);}},_0x46f2a1=basename(_0x14b0fa)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x16e400(0x190)](/^key_/i,'')[_0x16e400(0x190)](/^\d+_/,'')[_0x16e400(0x190)](/-/g,'\x20');return{'name':_0x46f2a1,'isKeyStep':/^key_/i[_0x16e400(0xff)](_0xfb7104[_0x16e400(0x170)](basename,_0x14b0fa))};}function extractShellValue(_0x222b68){if(!_0x222b68)return null;return _0x222b68[0x1]??_0x222b68[0x2]??_0x222b68[0x3]??null;}function extractOutputOption(_0x5d33a2){return extractShellValue(_0x5d33a2['match'](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x2b4609,_0x4b4017){const _0x2f0f52=_0x262ef1,_0x22281f={'DQOcn':'ask\x20page\x20question','uoQfx':_0x2f0f52(0x13d),'atdfj':_0x2f0f52(0x13e),'GkMGm':'snapshot','QRMGE':_0x2f0f52(0x100),'jsDFh':function(_0xcc7781,_0x25c859){return _0xcc7781(_0x25c859);},'JyxJa':_0x2f0f52(0x14a)};switch(_0x4b4017){case _0x2f0f52(0x176):return _0x2f0f52(0x16c);case _0x2f0f52(0x15d):return _0x2f0f52(0x121);case _0x2f0f52(0x1ce):return'verify\x20page\x20condition';case _0x2f0f52(0x131):return _0x22281f['DQOcn'];case _0x22281f[_0x2f0f52(0xf5)]:return _0x22281f[_0x2f0f52(0x1bd)];case _0x2f0f52(0xfd):return _0x2f0f52(0x183);case _0x22281f['GkMGm']:{const _0x24461c=extractOutputOption(_0x2b4609);if(!_0x24461c)return _0x22281f[_0x2f0f52(0x179)];const {name:_0x8f0a6}=_0x22281f['jsDFh'](toStepDisplayName,_0x24461c);return'capture\x20snapshot\x20`'+_0x8f0a6+'`';}case'screenshot':{const _0x4a7afa=extractOutputOption(_0x2b4609);if(!_0x4a7afa)return _0x2f0f52(0x161);const {name:_0x198083,isKeyStep:_0x52f270}=_0x22281f['jsDFh'](toStepDisplayName,_0x4a7afa);return _0x52f270?'capture\x20key\x20step\x20`'+_0x198083+'`':'capture\x20step\x20`'+_0x198083+'`';}case _0x22281f['JyxJa']:return'export\x20Nova\x20session';default:return _0x4b4017;}}function getNovaActCliCommandBlockReason(_0x5049ed){const _0x36b510=_0x262ef1,_0x3b2cfb={'xApFO':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','eHgYN':function(_0x1ba24f,_0xa7b0b1){return _0x1ba24f===_0xa7b0b1;},'eYwHE':_0x36b510(0x1ce)},_0x51356d=parseNovaActCliCommand(_0x5049ed);if(!_0x51356d)return _0x3b2cfb['xApFO'];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x36b510(0x145)](_0x51356d))return'Nova\x20command\x20`'+_0x51356d+_0x36b510(0x156);if(_0x3b2cfb['eHgYN'](_0x51356d,_0x3b2cfb['eYwHE'])&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i[_0x36b510(0xff)](_0x5049ed))return'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.';if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x5049ed))return'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.';return null;}function _0x45ee(_0x275a36,_0x4e628b){_0x275a36=_0x275a36-0xf2;const _0x15d66d=_0x15d6();let _0x45ee45=_0x15d66d[_0x275a36];return _0x45ee45;}function buildFeedbackSection(_0x3ceb39){const _0x7255a0=_0x262ef1,_0x55992d={'pmTrJ':'en-US','xfwOI':_0x7255a0(0x19e),'xTWcD':_0x7255a0(0x118),'hqbEh':_0x7255a0(0x17d),'utiKo':'element','PizZu':function(_0x4d2e2a,_0xd5e3f0){return _0x4d2e2a===_0xd5e3f0;}};if(!_0x3ceb39||_0x55992d[_0x7255a0(0x19d)](_0x3ceb39['unaddressedComments'][_0x7255a0(0x144)],0x0))return'';const _0x3fb1b1=_0x3ceb39[_0x7255a0(0x1c5)][_0x7255a0(0x126)](_0xf3f1ce=>{const _0x303023=_0x7255a0,_0x49deb4=new Date(_0xf3f1ce[_0x303023(0x137)])['toLocaleDateString'](_0x55992d[_0x303023(0x1a2)],{'month':_0x55992d['xfwOI'],'day':_0x303023(0x1a9)}),_0x4a333b=_0xf3f1ce['authorName']||_0xf3f1ce['authorEmail']||_0x55992d[_0x303023(0x16a)],_0x3ff229=_0xf3f1ce['domRef']?'\x20(on\x20element:\x20<'+(_0xf3f1ce[_0x303023(0x193)]['selector']['split'](_0x55992d['hqbEh'])['pop']()?.[_0x303023(0x1bb)](':')[0x0]||_0x55992d['utiKo'])+_0x303023(0x188)+(_0xf3f1ce[_0x303023(0x193)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0xf3f1ce['id']+']\x20**'+_0x4a333b+'**\x20('+_0x49deb4+_0x303023(0x18a)+_0xf3f1ce['content']+'\x22'+_0x3ff229;})['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'+_0x3fb1b1;}function buildNovaSharedOptionsInstruction(_0x7eb88d){if(!_0x7eb88d['trim']())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'+_0x7eb88d;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x4dfeb5){const _0x44d06a=_0x262ef1,_0x3e3620={'vhDaz':function(_0x9e3684,_0xf253c8,_0x4c3fb0){return _0x9e3684(_0xf253c8,_0x4c3fb0);},'bGtwu':'01_initial-state.png','McDgC':_0x44d06a(0x167),'GQuXP':function(_0x12c7ee,_0x8056cd){return _0x12c7ee(_0x8056cd);}},{novaCommandPrefix:_0x3c25c1,novaSharedOptionsSuffix:_0x2035ec,cliArtifactDir:_0xdface0,url:_0x5a9acc}=_0x4dfeb5,_0x410e11=_0x3e3620[_0x44d06a(0x164)](buildCliArtifactPath,_0xdface0,'00_initial-state.yml'),_0x42f743=_0x3e3620[_0x44d06a(0x164)](buildCliArtifactPath,_0xdface0,_0x3e3620['bGtwu']),_0x292773=buildCliArtifactPath(_0xdface0,_0x3e3620['McDgC']),_0xa38a04=buildCliArtifactPath(_0xdface0,_0x44d06a(0xf9));return'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'+_0x3c25c1+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x2035ec)+_0x44d06a(0x12f)+_0x3c25c1+'\x20session\x20create\x20'+quoteShellArg(_0x5a9acc)+'\x20'+_0x2035ec+'`\x0a2.\x20Run\x20`'+_0x3c25c1+'\x20snapshot\x20--output\x20'+_0x3e3620[_0x44d06a(0x1c3)](quoteShellArg,_0x410e11)+'\x20'+_0x2035ec+_0x44d06a(0x120)+_0x3c25c1+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x42f743)+'\x20'+_0x2035ec+_0x44d06a(0x11f)+_0x3c25c1+'\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`'+_0x3c25c1+_0x44d06a(0x127)+_0x3e3620[_0x44d06a(0x1c3)](quoteShellArg,_0x292773)+'\x20'+_0x2035ec+'`\x0a6.\x20Run\x20`'+_0x3c25c1+_0x44d06a(0x186)+_0x3e3620['GQuXP'](quoteShellArg,_0xa38a04)+'\x20'+_0x2035ec+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0xdface0+_0x44d06a(0x1ac);}export function buildVerifyFeatureNovaCliPrompt(_0xff9797){const _0x19539e=_0x262ef1,_0x2732dd={'JLoUX':function(_0xa751a6,_0x1a926d,_0x1e5332){return _0xa751a6(_0x1a926d,_0x1e5332);},'fnoDC':_0x19539e(0x19a),'sumhA':function(_0x2bef16,_0xab4c78){return _0x2bef16(_0xab4c78);},'GuDOa':function(_0x247105,_0x31ce9d){return _0x247105(_0x31ce9d);}},{checklistItem:_0x428cd2,itemFeedback:_0x52e3b0,taskDescription:_0x32bb15,novaCommandPrefix:_0x58de1a,novaSharedOptionsSuffix:_0x5cf7cf,cliArtifactDir:_0x439ec9,url:_0x279858,loginInstructions:_0x5ed2b9}=_0xff9797,_0x1d415f=_0x428cd2[_0x19539e(0x1c4)]?_0x19539e(0x1cb)+_0x428cd2['notes']:'',_0x2cc632=buildFeedbackSection(_0x52e3b0),_0x441e7e=_0x52e3b0?.['canonicalFlow']?_0x19539e(0x136)+_0x52e3b0[_0x19539e(0x102)]:'',_0x4e5a5f=_0x5ed2b9?_0x19539e(0x166)+_0x5ed2b9+_0x19539e(0x198):'',_0x28ccb3=_0x2732dd[_0x19539e(0x11d)](buildCliArtifactPath,_0x439ec9,'01_initial.yml'),_0x3dc4ad=_0x2732dd[_0x19539e(0x11d)](buildCliArtifactPath,_0x439ec9,_0x2732dd[_0x19539e(0x1c6)]),_0x1ad0ab=buildCliArtifactPath(_0x439ec9,'key_03_success-state.png');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'+_0x428cd2[_0x19539e(0x153)]+_0x1d415f+_0x2cc632+_0x441e7e+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x32bb15+_0x19539e(0x10c)+_0x279858+_0x19539e(0x142)+_0x4e5a5f+_0x19539e(0x169)+_0x58de1a+_0x19539e(0x1c8)+_0x2732dd['sumhA'](quoteShellArg,_0x279858)+'\x20'+_0x5cf7cf+_0x19539e(0x17b)+_0x439ec9+_0x19539e(0x181)+_0x58de1a+'\x20snapshot\x20--output\x20'+_0x2732dd[_0x19539e(0x17a)](quoteShellArg,_0x28ccb3)+'\x20'+_0x5cf7cf+_0x19539e(0x105)+_0x58de1a+_0x19539e(0x186)+_0x2732dd['sumhA'](quoteShellArg,_0x3dc4ad)+'\x20'+_0x5cf7cf+_0x19539e(0x15e)+_0x1ad0ab+_0x19539e(0x1d2)+_0x58de1a+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x5cf7cf[_0x19539e(0x1be)]()?'`'+_0x5cf7cf+'`':'`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`')+'\x0a\x0a'+_0x2732dd[_0x19539e(0x16f)](buildNovaSharedOptionsInstruction,_0x5cf7cf)+_0x19539e(0x19f)+_0x58de1a+_0x19539e(0x155)+_0x5cf7cf+_0x19539e(0x1c0)+_0x58de1a+_0x19539e(0xf6)+_0x5cf7cf+'`\x0a-\x20`'+_0x58de1a+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x28ccb3)+'\x20'+_0x5cf7cf+_0x19539e(0x1c0)+_0x58de1a+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x1ad0ab)+'\x20'+_0x5cf7cf+'`\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(_0x161ed1){const _0x4bc764=_0x262ef1,_0x42fd11={'jcIWZ':function(_0x55c6b1,_0x25a1e9){return _0x55c6b1===_0x25a1e9;}},_0x5b2d8d=[..._0x161ed1['keys']()][_0x4bc764(0x106)]();let _0x5baa28=0x0;for(const _0x477cde of _0x161ed1[_0x4bc764(0x16d)]()){_0x5baa28+=_0x477cde;}return{'cliCommandCount':_0x5baa28,'cliCommandsSeen':_0x5b2d8d,'noCliCommandsCalled':_0x42fd11[_0x4bc764(0x14b)](_0x5baa28,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x277748,_0x366258){const _0x50bdd9=_0x262ef1,_0x25e31b={'wxXgg':function(_0x3d1dce,_0x34bd02){return _0x3d1dce!==_0x34bd02;},'WZGON':_0x50bdd9(0x134),'dpUaL':function(_0x197c16,_0x1878fe){return _0x197c16(_0x1878fe);},'JxBEi':function(_0x57bf8e,_0x22ba5f){return _0x57bf8e(_0x22ba5f);},'lUjvK':_0x50bdd9(0x17e),'LXcAp':_0x50bdd9(0x141),'yWwkc':function(_0x5ca2f9,_0x5dcc28){return _0x5ca2f9+_0x5dcc28;},'jLNIq':'nova_act_command','gKyme':function(_0x95795f,_0x2a9129,_0x5a1695){return _0x95795f(_0x2a9129,_0x5a1695);},'wHIPR':'nova_act_artifact_recording','aXJBy':function(_0x1c177b,_0x377af4){return _0x1c177b!==_0x377af4;},'dLKzM':_0x50bdd9(0x199),'vggEp':_0x50bdd9(0x117),'sOjvc':'nova-act-cli'},_0x48f86d=new Map(),_0x32726b=async _0x36e04b=>{const _0x3a9527=_0x50bdd9;if(_0x25e31b['wxXgg'](_0x36e04b[_0x3a9527(0x1b0)],_0x3a9527(0x149)))return{};const _0x49b59c=_0x36e04b;if(_0x25e31b['wxXgg'](_0x49b59c[_0x3a9527(0x180)],_0x25e31b[_0x3a9527(0x18e)]))return{};const _0x5eef94=_0x49b59c[_0x3a9527(0x113)],_0x5a9065=_0x25e31b['dpUaL'](extractBashCommand,_0x5eef94);if(!_0x5a9065)return{};const _0x23e539=_0x25e31b[_0x3a9527(0x19c)](getNovaActCliCommandBlockReason,_0x5a9065);if(!_0x23e539)return{};return{'decision':_0x25e31b['lUjvK'],'reason':_0x23e539};},_0x2da34a=async _0x2d5f26=>{const _0x10feef=_0x50bdd9;if(_0x25e31b[_0x10feef(0x171)](_0x2d5f26[_0x10feef(0x1b0)],_0x25e31b['LXcAp']))return{};const _0x30a52c=_0x2d5f26;if(_0x30a52c['tool_name']!==_0x10feef(0x134))return{};const _0x4c5336=_0x30a52c[_0x10feef(0x113)],_0xf249af=extractBashCommand(_0x4c5336);if(!_0xf249af)return{};const _0x17eaad=parseNovaActCliCommand(_0xf249af);if(!_0x17eaad)return{};_0x48f86d['set'](_0x17eaad,_0x25e31b['yWwkc'](_0x48f86d['get'](_0x17eaad)||0x0,0x1)),_0x277748[_0x10feef(0x1a5)](_0x25e31b[_0x10feef(0x17c)],{'subcommand':_0x17eaad}),_0x277748[_0x10feef(0x1ab)](_0x10feef(0x1cd),{'subcommand':_0x17eaad,'commandPreview':previewNovaActCliCommand(_0xf249af)}),console['log'](_0x10feef(0x1b4)+_0x25e31b[_0x10feef(0x101)](formatNovaActCliLog,_0xf249af,_0x17eaad));if(_0x17eaad===_0x10feef(0x176)&&_0x366258)try{await _0x366258['start']();}catch(_0x3fb55f){await _0x277748[_0x10feef(0x115)](_0x25e31b['wHIPR'],_0x3fb55f,{'transport':_0x10feef(0x14f)});}return{};},_0x5321c3=async _0x1bc9d7=>{const _0x54ee03=_0x50bdd9;if(_0x25e31b[_0x54ee03(0x104)](_0x1bc9d7['hook_event_name'],_0x25e31b['dLKzM']))return{};const _0x3ca70b=_0x1bc9d7;if(_0x25e31b[_0x54ee03(0x171)](_0x3ca70b['tool_name'],_0x25e31b['WZGON']))return{};return await _0x277748['trackPhaseError'](_0x25e31b['vggEp'],_0x3ca70b['error'],{'transport':_0x25e31b[_0x54ee03(0x125)],'toolName':'Bash'}),{};};return{'preToolUseHook':_0x32726b,'postToolUseHook':_0x2da34a,'postToolUseFailureHook':_0x5321c3,'commandCounts':_0x48f86d};}async function runNovaLifecycleCommand(_0x31d0f7){const _0x4c9770=_0x262ef1,_0x200061={'xmXsh':function(_0x579d2a,_0x34dfc5){return _0x579d2a??_0x34dfc5;},'VBZsw':function(_0x2cab4c,_0x15d589){return _0x2cab4c(_0x15d589);},'XFyNT':function(_0x3a6495,_0x433673){return _0x3a6495(_0x433673);}},{novaOptions:_0x2d980e,commandArgs:_0x543b9e,telemetry:_0x342196,phase:_0x5e9d5e,metadata:_0x322cb3,timeoutMs:_0x5ef9cc}=_0x31d0f7;_0x342196['trackPhaseStart'](_0x5e9d5e,_0x322cb3);try{const _0x2c1847=await runNovaActCliCommand({..._0x2d980e,'commandArgs':_0x543b9e,'cwd':process['cwd'](),'env':process['env'],'timeoutMs':_0x200061['xmXsh'](_0x5ef9cc,NOVA_ACT_CLI_COMMAND_TIMEOUT_MS)});_0x342196[_0x4c9770(0x1ab)](_0x5e9d5e,{..._0x322cb3,'subcommand':_0x2c1847[_0x4c9770(0x1b2)][_0x4c9770(0x10d)],'commandPreview':previewNovaActCliCommand(_0x2c1847[_0x4c9770(0x1b2)]['shellCommand']),'stdoutPreview':_0x200061[_0x4c9770(0x128)](previewNovaActCliCommand,_0x2c1847['stdout']),'stderrPreview':_0x200061[_0x4c9770(0x1b5)](previewNovaActCliCommand,_0x2c1847[_0x4c9770(0x138)]),'logDir':extractNovaActLogDir(_0x2c1847['stdout'])});}catch(_0xd832c8){await _0x342196[_0x4c9770(0x115)](_0x5e9d5e,_0xd832c8,_0x322cb3);throw _0xd832c8;}}export async function finalizeVerifyFeatureNovaCliSession(_0x1ea590){const _0xb3c4e0=_0x262ef1,_0xdc1a61={'ekIuI':'nova_act_final_screenshot','uQPlY':_0xb3c4e0(0x10e),'jGISw':_0xb3c4e0(0x1bf),'xmEuC':_0xb3c4e0(0x192),'ZZjph':'--output','SLKqT':'export','JssoP':'close','lBDUr':function(_0x4cad35,_0x8ea4f){return _0x4cad35(_0x8ea4f);}},{telemetry:_0x3dd20e,novaOptions:_0x940869,cliArtifactDir:_0x4caec6,transportMetadata:_0x478901,artifactRecorder:_0x24fcb7}=_0x1ea590,_0x5e6666=[{'phase':_0xdc1a61[_0xb3c4e0(0xf4)],'commandArgs':[_0xb3c4e0(0x1ba),'--output',buildCliArtifactPath(_0x4caec6,_0xb3c4e0(0x130))]},{'phase':_0xdc1a61['uQPlY'],'commandArgs':[_0xdc1a61['jGISw'],_0xb3c4e0(0x16b),buildCliArtifactPath(_0x4caec6,'final-state.yaml')]},{'phase':'nova_act_session_export','commandArgs':[_0xdc1a61[_0xb3c4e0(0x174)],_0xb3c4e0(0x1b3),'--format',_0xb3c4e0(0x1d3),_0xdc1a61['ZZjph'],buildCliArtifactPath(_0x4caec6,_0xb3c4e0(0x168))]},{'phase':'nova_act_session_report','commandArgs':[_0xb3c4e0(0x192),_0xdc1a61[_0xb3c4e0(0x124)],_0xb3c4e0(0x108),'--output-dir',buildCliArtifactPath(_0x4caec6,'nova-report')]},{'phase':'nova_act_session_close','commandArgs':[_0xdc1a61['xmEuC'],_0xdc1a61['JssoP']]}];for(const _0x26b530 of _0x5e6666){_0x26b530[_0xb3c4e0(0x140)]===_0xb3c4e0(0xf8)&&await _0x24fcb7?.['stop']();try{await _0xdc1a61[_0xb3c4e0(0xf2)](runNovaLifecycleCommand,{'novaOptions':_0x940869,'commandArgs':[..._0x26b530[_0xb3c4e0(0x11a)]],'telemetry':_0x3dd20e,'phase':_0x26b530['phase'],'metadata':_0x478901});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x7acc88){const _0x4c7bf4=_0x262ef1,_0x4c48c5={'KUpvy':function(_0x277347,_0x5785d4,_0x3f5b60){return _0x277347(_0x5785d4,_0x3f5b60);},'tOlGC':function(_0x5e885e,_0x1f67e0,_0x77a4ac){return _0x5e885e(_0x1f67e0,_0x77a4ac);},'DFNwG':function(_0x30c18f,_0x45f15a){return _0x30c18f(_0x45f15a);},'ABgue':function(_0x5c6dca,_0xecb32c){return _0x5c6dca===_0xecb32c;}},{cwd:_0x3e51fe,cliArtifactDir:_0x4944a1,startTime:_0xcdfb94}=_0x7acc88,_0x212e86=[];await _0x4c48c5[_0x4c7bf4(0x18f)](mkdir,_0x4944a1,{'recursive':!![]});const _0x4570aa=await _0x4c48c5[_0x4c7bf4(0x157)](readdir,_0x3e51fe,{'withFileTypes':!![]});for(const _0x2336ea of _0x4570aa){if(!_0x2336ea[_0x4c7bf4(0x103)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x4c7bf4(0xff)](_0x2336ea['name']))continue;const _0x461b09=_0x4c48c5[_0x4c7bf4(0x157)](join,_0x3e51fe,_0x2336ea['name']),_0x2dfd64=await _0x4c48c5['DFNwG'](stat,_0x461b09);if(_0x2dfd64['mtimeMs']+0x7d0<_0xcdfb94)continue;const _0x22ed32=buildCliArtifactPath(_0x4944a1,_0x2336ea['name']);if(_0x4c48c5[_0x4c7bf4(0x15f)](_0x461b09,_0x22ed32))continue;await rename(_0x461b09,_0x22ed32),_0x212e86[_0x4c7bf4(0x172)](_0x2336ea['name']);}return _0x212e86['sort']();}function _0x15d6(){const _0x58ec1d=['encodeScreencastVideo','`\x0a4.\x20Run\x20one\x20batched\x20`','`\x0a3.\x20Run\x20`','execute\x20Nova\x20browser\x20action','trace.zip','1177237vuawAD','SLKqT','sOjvc','map','\x20snapshot\x20--output\x20','VBZsw','pDGdU','telemetry','1518708nOSvlL','jsZji','lggQv','nova_act_artifact_recording','\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`','key_final-state.png','ask','screencastStarted','WfoRd','Bash','padStart','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','createdAt','stderr','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','start','Page.startScreencast','frameWrites','goto','navigate\x20browser','now','phase','PostToolUse','\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','traceSampleInFlight','length','has','locator','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','shellCommand','PreToolUse','session\x20export','jcIWZ','context','rGPsi','newCDPSession','nova-act-cli','frameSession','frameCount','-framerate','description','state','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','tOlGC','startTraceSampling','ffmpeg-','NNFkE','ARhrR','contexts','execute','`.\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`','ABgue','QfUSX','capture\x20screenshot','3353312jxNqYg','traceSampleCount','vhDaz','-qr','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','02_final-state.yml','nova-session-export.json','\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`','xTWcD','--output','create\x20Nova\x20browser\x20session','values','scale=trunc(iw/2)*2:trunc(ih/2)*2','GuDOa','zuGaH','wxXgg','push','stopped','xmEuC','then','session\x20create','36wqFDiG','oeQxq','QRMGE','sumhA','`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','jLNIq','\x20>\x20','block','Page.screencastFrame','tool_name','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','9065900HmKkKh','wait\x20for\x20page\x20condition','KVcov','sessionId','\x20screenshot\x20--output\x20','vuKkn','>\x20\x22','Page.stopScreencast','):\x20\x22','Caches','send','cliArtifactDir','WZGON','KUpvy','replace','AwsDw','session','domRef','LuOIl','browser','-pix_fmt','traceSampleTimer','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','PostToolUseFailure','01_initial-state.png','CjMml','JxBEi','PizZu','short','\x0a\x0aExamples:\x0a-\x20`','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','zip','pmTrJ','utf-8','lZZVR','trackPhaseStart','-vf','stopTraceSampling','.cache','numeric','dCdQp','trackPhaseEnd','`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','pages','readSessionMetadataWithRetry','evaluate','hook_event_name','cdp_endpoint','invocation','export','[nova-act-cli]\x20','XFyNT','base64','tracingStarted','tracing','nova-user-data/*','screenshot','split','nova-video-frames','atdfj','trim','snapshot','`\x0a-\x20`','VBXaV','FkqeT','GQuXP','notes','unaddressedComments','fnoDC','cuImE','\x20session\x20create\x20','body','ms-playwright','\x0a\x0a##\x20Additional\x20Notes\x0a','OhTNR','nova_act_command','verify','filter','.json','startAttempted','`.\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`','json','lBDUr','getFrameDir','ekIuI','uoQfx','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','nova-artifacts.zip','nova_act_session_close','03_final-state.png','captureTraceSample','frame-%06d.jpg','OTbhM','wait-for','yGDbQ','test','capture\x20snapshot','gKyme','canonicalFlow','isFile','aXJBy','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','sort','params','--report','GakiI','nova_act_artifact_recording_stop','2vjgPqA','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','subcommand','nova_act_final_snapshot','1508178NcPUxY','209884UipXgG','reverse','727233heMYrp','tool_input','cFhpr','trackPhaseError','novaOptions','nova_act_command_failure','Reviewer','ijEdi','commandArgs','115LjhhCy','queueTraceSample','JLoUX'];_0x15d6=function(){return _0x58ec1d;};return _0x15d6();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x5dc237){const _0x4c2669=_0x262ef1,_0x10443f={'NNFkE':function(_0xdf07a4,_0x4508cf,_0x313ca5){return _0xdf07a4(_0x4508cf,_0x313ca5);}},_0x7dbc4b=_0x10443f[_0x4c2669(0x15a)](join,_0x5dc237,'trace.zip');try{return{'buffer':await readFile(_0x7dbc4b),'source':_0x7dbc4b};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0x5dc237),'source':_0x5dc237};}}async function zipVerifyFeatureNovaArtifacts(_0x457a83){const _0x2f5032=_0x262ef1,_0x6f59e6={'tglnD':function(_0x1cffd6,_0x3bafbf,_0x40200b,_0x3b779e){return _0x1cffd6(_0x3bafbf,_0x40200b,_0x3b779e);},'cuImE':_0x2f5032(0x1a1),'oqnDA':function(_0x14f1c7,_0x3a946d,_0x283c7e){return _0x14f1c7(_0x3a946d,_0x283c7e);}},_0x3f0690=_0x6f59e6['tglnD'](join,_0x457a83,'..',_0x2f5032(0xf7));try{return await execFileAsync(_0x6f59e6[_0x2f5032(0x1c7)],[_0x2f5032(0x165),_0x3f0690,'.','-x',_0x2f5032(0x1b9)],{'cwd':_0x457a83}),await readFile(_0x3f0690);}finally{await _0x6f59e6['oqnDA'](rm,_0x3f0690,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x31af22){const _0x2c2ffa=_0x262ef1,_0x5b43a5={'STTyN':function(_0x4ade04,_0x3d83e){return _0x4ade04(_0x3d83e);}},_0x12211b=buildNovaActCliInvocation(_0x31af22['novaOptions'],_0x31af22[_0x2c2ffa(0x11a)]);return{'command':_0x12211b['command'],'args':_0x12211b['args'],'commandPreview':_0x5b43a5['STTyN'](previewNovaActCliCommand,_0x12211b[_0x2c2ffa(0x148)]),'subcommand':_0x12211b['subcommand'],'sharedOptionsSuffix':buildNovaActCliSharedOptionsSuffix(_0x31af22['novaOptions'],_0x31af22[_0x2c2ffa(0x11a)])};}
|
|
1
|
+
const _0x25fb66=_0x50de;function _0x50de(_0x3859a7,_0xfbab63){_0x3859a7=_0x3859a7-0xd6;const _0x2436a4=_0x2436();let _0x50de86=_0x2436a4[_0x3859a7];return _0x50de86;}(function(_0x454ae3,_0x39400f){const _0xb9a781=_0x50de,_0x2a57e4=_0x454ae3();while(!![]){try{const _0x5ec47a=-parseInt(_0xb9a781(0x129))/0x1*(-parseInt(_0xb9a781(0x14c))/0x2)+parseInt(_0xb9a781(0x1ab))/0x3+-parseInt(_0xb9a781(0x11f))/0x4*(-parseInt(_0xb9a781(0xd8))/0x5)+parseInt(_0xb9a781(0x1ae))/0x6+-parseInt(_0xb9a781(0x191))/0x7+-parseInt(_0xb9a781(0x106))/0x8+-parseInt(_0xb9a781(0x13a))/0x9*(parseInt(_0xb9a781(0xf8))/0xa);if(_0x5ec47a===_0x39400f)break;else _0x2a57e4['push'](_0x2a57e4['shift']());}catch(_0x52baa9){_0x2a57e4['push'](_0x2a57e4['shift']());}}}(_0x2436,0xbd117));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([_0x25fb66(0x1b0),_0x25fb66(0x162),_0x25fb66(0x18a),'ask','goto','wait-for','snapshot',_0x25fb66(0x101)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x41ed3f,_0x45aa0b){return join(_0x41ed3f,_0x45aa0b);}export class NovaActArtifactRecorder{['params'];['browser']=null;['context']=null;[_0x25fb66(0x167)]=null;[_0x25fb66(0xda)]=[];['frameCount']=0x0;['traceSampleCount']=0x0;['traceSampleTimer']=null;[_0x25fb66(0x153)]=null;[_0x25fb66(0x17d)]=![];[_0x25fb66(0x120)]=![];[_0x25fb66(0x187)]=![];[_0x25fb66(0x17f)]=![];constructor(_0x55819f){this['params']=_0x55819f;}async[_0x25fb66(0xe6)](){const _0x43f553=_0x25fb66,_0x4f11ce={'oagjf':function(_0x3e5258,_0x1d2bbb,_0x661f08){return _0x3e5258(_0x1d2bbb,_0x661f08);},'RLHyR':'Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context'};if(this[_0x43f553(0x187)])return;this['startAttempted']=!![];const _0x2004f7=await this['readSessionMetadataWithRetry'](),_0x5e2950=_0x2004f7[_0x43f553(0x1b2)];if(!_0x5e2950)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this['params'][_0x43f553(0x139)]['sessionId']);await _0x4f11ce[_0x43f553(0x192)](mkdir,this['params']['cliArtifactDir'],{'recursive':!![]}),this[_0x43f553(0x171)]=await chromium['connectOverCDP'](_0x5e2950,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this['context']=this[_0x43f553(0x171)]['contexts']()[0x0]??null;if(!this['context'])throw new Error(_0x4f11ce['RLHyR']);await this[_0x43f553(0x124)]['tracing']['start']({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x43f553(0xdc)](),await this[_0x43f553(0x102)](),this[_0x43f553(0x114)][_0x43f553(0x13b)]['trackPhaseStart']('nova_act_artifact_recording',{...this[_0x43f553(0x114)][_0x43f553(0x18e)],'cdpEndpoint':_0x5e2950,'browserPid':_0x2004f7['browser_pid'],'sessionState':_0x2004f7[_0x43f553(0x157)]}),this['params'][_0x43f553(0x13b)][_0x43f553(0x163)](_0x43f553(0x122),{...this[_0x43f553(0x114)]['transportMetadata'],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x43f553(0x120)]});}async['stop'](){const _0x3690fa=_0x25fb66,_0x2c585c={'ZBpKL':function(_0x3e9cf0,_0x8f3c25,_0x6e4518){return _0x3e9cf0(_0x8f3c25,_0x6e4518);},'ZXfmr':_0x3690fa(0x133),'NGVys':'nova_act_artifact_recording_stop'};if(this[_0x3690fa(0x17f)])return;this['stopped']=!![];const _0x4e3b5d={...this[_0x3690fa(0x114)]['transportMetadata'],'frameCount':this[_0x3690fa(0x13c)],'traceSampleCount':this[_0x3690fa(0x174)],'tracingStarted':this[_0x3690fa(0x17d)],'screencastStarted':this[_0x3690fa(0x120)]};this[_0x3690fa(0x114)][_0x3690fa(0x13b)][_0x3690fa(0xdd)]('nova_act_artifact_recording_stop',_0x4e3b5d);try{await this['stopTraceSampling'](),await this[_0x3690fa(0x138)](),await this[_0x3690fa(0x10f)](),await Promise[_0x3690fa(0x197)](this[_0x3690fa(0xda)]);this[_0x3690fa(0x124)]&&this['tracingStarted']&&await this['context'][_0x3690fa(0x150)][_0x3690fa(0x14a)]({'path':_0x2c585c['ZBpKL'](buildCliArtifactPath,this[_0x3690fa(0x114)][_0x3690fa(0x1a1)],_0x2c585c['ZXfmr'])});const _0x12a480=await this['encodeScreencastVideo']();this['params']['telemetry'][_0x3690fa(0x163)]('nova_act_artifact_recording_stop',{..._0x4e3b5d,'videoPath':_0x12a480});}catch(_0x152a78){await this[_0x3690fa(0x114)][_0x3690fa(0x13b)]['trackPhaseError'](_0x2c585c['NGVys'],_0x152a78,_0x4e3b5d);}finally{await this[_0x3690fa(0x171)]?.['close']()[_0x3690fa(0x166)](()=>undefined),this['browser']=null,this[_0x3690fa(0x124)]=null,this[_0x3690fa(0x167)]=null;}}async[_0x25fb66(0x180)](){const _0x5a3308=_0x25fb66,_0xb1527d={'DGeYn':_0x5a3308(0x144),'cWhgF':function(_0x1f3dd1,_0x4ecfe4){return _0x1f3dd1(_0x4ecfe4);},'Jjavg':function(_0xdba962,_0xd96741){return _0xdba962<_0xd96741;}},_0x40293e=join(homedir(),_0xb1527d['DGeYn'],'browser','sessions',this['params'][_0x5a3308(0x139)][_0x5a3308(0xff)]+'.json'),_0x113bf7=Date['now']();let _0x58d166;do{try{const _0x2e4102=JSON[_0x5a3308(0x151)](await readFile(_0x40293e,_0x5a3308(0x12d)));if(_0x2e4102['cdp_endpoint'])return _0x2e4102;_0x58d166=new Error(_0x5a3308(0xf9)+_0x40293e);}catch(_0x566172){_0x58d166=_0x566172;}await _0xb1527d['cWhgF'](delay,0x64);}while(_0xb1527d['Jjavg'](Date[_0x5a3308(0xf2)]()-_0x113bf7,NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x58d166 instanceof Error)throw _0x58d166;throw new Error('Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20'+_0x40293e);}async['startScreencast'](){const _0x2727a8=_0x25fb66,_0x32c603={'KCZxV':function(_0x4d398c,_0x2ab09a,_0x4a3a82){return _0x4d398c(_0x2ab09a,_0x4a3a82);},'mBwut':function(_0x6888d6,_0x3e3a36){return _0x6888d6(_0x3e3a36);},'YuxLC':_0x2727a8(0x136),'vlVjm':'jpeg'};if(!this[_0x2727a8(0x124)])return;const _0xa57d15=this['context'][_0x2727a8(0x10e)]()[0x0];if(!_0xa57d15)return;const _0x4f05bf=this[_0x2727a8(0x1ad)]();await mkdir(_0x4f05bf,{'recursive':!![]});const _0x251cfe=await this['context'][_0x2727a8(0x1a5)](_0xa57d15);this[_0x2727a8(0x167)]=_0x251cfe,_0x251cfe['on']('Page.screencastFrame',_0x31f99e=>{const _0x23e750=_0x2727a8,_0x3c8cee=++this['frameCount'],_0x4b3bf8=_0x32c603[_0x23e750(0xe3)](join,_0x4f05bf,'frame-'+_0x32c603['mBwut'](String,_0x3c8cee)[_0x23e750(0x156)](0x6,'0')+_0x23e750(0x104)),_0x788a45=writeFile(_0x4b3bf8,Buffer[_0x23e750(0xfc)](_0x31f99e['data'],_0x23e750(0x137)))[_0x23e750(0x166)](()=>undefined)[_0x23e750(0xea)](()=>_0x251cfe[_0x23e750(0x1a2)]('Page.screencastFrameAck',{'sessionId':_0x31f99e['sessionId']}))['then'](()=>undefined)[_0x23e750(0x166)](()=>undefined);this['frameWrites'][_0x23e750(0x147)](_0x788a45);}),await _0x251cfe['send'](_0x32c603[_0x2727a8(0x10a)],{'format':_0x32c603['vlVjm'],'quality':0x4b,'everyNthFrame':0x6}),this[_0x2727a8(0x120)]=!![];}async['stopScreencast'](){const _0x1d8f50=_0x25fb66;if(!this['frameSession']||!this[_0x1d8f50(0x120)])return;await this[_0x1d8f50(0x167)][_0x1d8f50(0x1a2)]('Page.stopScreencast')['catch'](()=>undefined);}[_0x25fb66(0xdc)](){const _0x3387ca=_0x25fb66,_0x1658e7={'JKFMY':function(_0x33c3e8,_0x58e56d,_0x43721b){return _0x33c3e8(_0x58e56d,_0x43721b);}};this[_0x3387ca(0xd9)](),this['traceSampleTimer']=_0x1658e7['JKFMY'](setInterval,()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x25fb66(0xd9)](){const _0x18b38d=_0x25fb66;if(this[_0x18b38d(0x153)])return;this['traceSampleInFlight']=this[_0x18b38d(0x138)]()[_0x18b38d(0xea)](()=>{const _0x4ca36d=_0x18b38d;this[_0x4ca36d(0x153)]=null;});}async['stopTraceSampling'](){const _0x4d9fdb=_0x25fb66,_0x59463e={'oaObP':function(_0x5f5da1,_0x2899fe){return _0x5f5da1(_0x2899fe);}};this['traceSampleTimer']&&(_0x59463e['oaObP'](clearInterval,this[_0x4d9fdb(0x13d)]),this[_0x4d9fdb(0x13d)]=null),await this['traceSampleInFlight']?.[_0x4d9fdb(0x166)](()=>undefined);}async[_0x25fb66(0x138)](){const _0x580b93=_0x25fb66,_0x4a56b1=this[_0x580b93(0x124)]?.[_0x580b93(0x10e)]()[0x0];if(!_0x4a56b1)return;try{await _0x4a56b1[_0x580b93(0xfa)](_0x580b93(0xe8))['evaluate'](_0x840ea8=>_0x840ea8['tagName'],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async[_0x25fb66(0x112)](){const _0x2395b4=_0x25fb66,_0xaa9ca1={'hYggg':function(_0x1bf171,_0x5a4c61){return _0x1bf171<_0x5a4c61;},'WVRHO':function(_0xa94f27,_0x38581c,_0x39c7d0){return _0xa94f27(_0x38581c,_0x39c7d0);},'hJuJY':'session-recording.webm','IdMOV':'error','dfvMv':_0x2395b4(0x155),'jsItD':function(_0x2545f8,_0x589bf5,_0x1e8f07){return _0x2545f8(_0x589bf5,_0x1e8f07);},'pEnfH':_0x2395b4(0x15d),'JotjE':_0x2395b4(0xf1),'fUwJp':_0x2395b4(0x17a),'quUGB':_0x2395b4(0x19f)};if(_0xaa9ca1['hYggg'](this[_0x2395b4(0x13c)],0x2))return null;const _0xbfb3bc=await resolveFfmpegPath();if(!_0xbfb3bc)return null;const _0x19a7ff=_0xaa9ca1[_0x2395b4(0x12f)](join,this['params']['cliArtifactDir'],_0x2395b4(0x181));await _0xaa9ca1[_0x2395b4(0x12f)](mkdir,_0x19a7ff,{'recursive':!![]});const _0x24938e=join(_0x19a7ff,_0xaa9ca1['hJuJY']);return await _0xaa9ca1['WVRHO'](execFileAsync,_0xbfb3bc,['-y',_0x2395b4(0xd7),_0x2395b4(0x1a9),_0xaa9ca1['IdMOV'],_0xaa9ca1[_0x2395b4(0x121)],'10','-i',_0xaa9ca1['jsItD'](join,this[_0x2395b4(0x1ad)](),'frame-%06d.jpg'),_0xaa9ca1['pEnfH'],'scale=trunc(iw/2)*2:trunc(ih/2)*2',_0xaa9ca1['JotjE'],_0xaa9ca1['fUwJp'],'-pix_fmt',_0xaa9ca1['quUGB'],_0x24938e]),_0x24938e;}[_0x25fb66(0x1ad)](){const _0x510bb9=_0x25fb66;return join(this[_0x510bb9(0x114)][_0x510bb9(0x1a1)],'nova-video-frames');}}async function delay(_0x4a9198){await new Promise(_0x3b4244=>setTimeout(_0x3b4244,_0x4a9198));}async function resolveFfmpegPath(){const _0x5b8c48=_0x25fb66,_0x352ccb={'oLCmo':function(_0x332965,_0x30a5af){return _0x332965(_0x30a5af);},'rGYTg':function(_0x223ef0,_0x2483d4,_0x424931,_0x4a52d6,_0x1e157f){return _0x223ef0(_0x2483d4,_0x424931,_0x4a52d6,_0x1e157f);},'fzoTs':_0x5b8c48(0x16c),'ErPkv':_0x5b8c48(0x189),'ictoy':'ms-playwright'};if(await _0x352ccb[_0x5b8c48(0x10b)](canRunFfmpeg,'ffmpeg'))return _0x5b8c48(0x126);const _0xc99a4=[_0x352ccb['rGYTg'](join,homedir(),_0x352ccb[_0x5b8c48(0x1b1)],'Caches',_0x5b8c48(0x11c)),join(homedir(),_0x352ccb[_0x5b8c48(0x110)],_0x352ccb[_0x5b8c48(0x108)])];for(const _0x520a4b of _0xc99a4){try{const _0x505f32=await _0x352ccb['oLCmo'](readdir,_0x520a4b),_0x40b7c8=_0x505f32['filter'](_0x405908=>_0x405908[_0x5b8c48(0x185)]('ffmpeg-'))[_0x5b8c48(0x186)]()['reverse']()[_0x5b8c48(0x159)](_0x271e3a=>[join(_0x520a4b,_0x271e3a,'ffmpeg-mac'),join(_0x520a4b,_0x271e3a,'ffmpeg-linux'),join(_0x520a4b,_0x271e3a,'ffmpeg.exe')]);for(const _0xfe1d2d of _0x40b7c8){if(await canRunFfmpeg(_0xfe1d2d))return _0xfe1d2d;}}catch{}}return null;}async function canRunFfmpeg(_0x2fb2f6){const _0x1030d9=_0x25fb66,_0x1ede3a={'syFOK':function(_0x11d79b,_0x1eec08,_0xa0adc5){return _0x11d79b(_0x1eec08,_0xa0adc5);},'kDkfS':_0x1030d9(0x1a6)};try{return await _0x1ede3a[_0x1030d9(0xf6)](execFileAsync,_0x2fb2f6,[_0x1ede3a[_0x1030d9(0x16a)]]),!![];}catch{return![];}}function toStepDisplayName(_0x30587b){const _0x23fef7=_0x25fb66,_0x159778={'pdhAU':function(_0x45d8f1,_0x3a47a3){return _0x45d8f1(_0x3a47a3);}},_0x4f7cea=_0x159778['pdhAU'](basename,_0x30587b)[_0x23fef7(0x12a)](/\.(?:png|ya?ml)$/i,'')[_0x23fef7(0x12a)](/^key_/i,'')['replace'](/^\d+_/,'')[_0x23fef7(0x12a)](/-/g,'\x20');return{'name':_0x4f7cea,'isKeyStep':/^key_/i[_0x23fef7(0xdb)](_0x159778['pdhAU'](basename,_0x30587b))};}function extractShellValue(_0x1253c){if(!_0x1253c)return null;return _0x1253c[0x1]??_0x1253c[0x2]??_0x1253c[0x3]??null;}function extractOutputOption(_0x2a6cdc){const _0x3efc09=_0x25fb66;return extractShellValue(_0x2a6cdc[_0x3efc09(0x177)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x292d7c,_0x22628e){const _0x2ed8ec=_0x25fb66,_0x59f25b={'meKGD':_0x2ed8ec(0x1b0),'EdSGi':'execute','zAlkv':'execute\x20Nova\x20browser\x20action','DZUzi':'verify','rrFsa':_0x2ed8ec(0xfb),'CGHio':_0x2ed8ec(0x19a),'ORGIM':_0x2ed8ec(0x14b),'NTWdo':_0x2ed8ec(0x101),'vdrXX':'session\x20export'};switch(_0x22628e){case _0x59f25b['meKGD']:return _0x2ed8ec(0x198);case _0x59f25b['EdSGi']:return _0x59f25b[_0x2ed8ec(0xed)];case _0x59f25b[_0x2ed8ec(0x10c)]:return'verify\x20page\x20condition';case'ask':return _0x59f25b['rrFsa'];case'goto':return _0x2ed8ec(0x13e);case _0x2ed8ec(0x19d):return _0x59f25b[_0x2ed8ec(0xe1)];case _0x2ed8ec(0x143):{const _0x4e50d3=extractOutputOption(_0x292d7c);if(!_0x4e50d3)return _0x59f25b[_0x2ed8ec(0x16d)];const {name:_0x59aad7}=toStepDisplayName(_0x4e50d3);return _0x2ed8ec(0x130)+_0x59aad7+'`';}case _0x59f25b[_0x2ed8ec(0x14e)]:{const _0x106cb7=extractOutputOption(_0x292d7c);if(!_0x106cb7)return _0x2ed8ec(0xeb);const {name:_0x4fa8b6,isKeyStep:_0x411e92}=toStepDisplayName(_0x106cb7);return _0x411e92?_0x2ed8ec(0x1a0)+_0x4fa8b6+'`':'capture\x20step\x20`'+_0x4fa8b6+'`';}case _0x59f25b['vdrXX']:return _0x2ed8ec(0xee);default:return _0x22628e;}}function getNovaActCliCommandBlockReason(_0x4b1413){const _0x4531d2=_0x25fb66,_0x40538b={'vUnAz':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','IPQGN':function(_0x137924,_0x2d84b4){return _0x137924===_0x2d84b4;},'GjoMX':'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.'},_0x4dcbed=parseNovaActCliCommand(_0x4b1413);if(!_0x4dcbed)return _0x40538b['vUnAz'];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x4531d2(0x14d)](_0x4dcbed))return _0x4531d2(0x117)+_0x4dcbed+_0x4531d2(0xe9);if(_0x40538b[_0x4531d2(0x16e)](_0x4dcbed,_0x4531d2(0x18a))&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x4b1413))return'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.';if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x4b1413))return _0x40538b[_0x4531d2(0x17b)];return null;}function buildFeedbackSection(_0x307f47){const _0x37ae0f=_0x25fb66,_0x178b17={'AUGWT':_0x37ae0f(0x1aa),'gMsYr':_0x37ae0f(0x100)};if(!_0x307f47||_0x307f47[_0x37ae0f(0x18f)]['length']===0x0)return'';const _0x1dd085=_0x307f47['unaddressedComments']['map'](_0x1034be=>{const _0x4b4a81=_0x37ae0f,_0x22bfb6=new Date(_0x1034be[_0x4b4a81(0x188)])[_0x4b4a81(0x107)](_0x4b4a81(0x160),{'month':_0x178b17[_0x4b4a81(0x1a3)],'day':'numeric'}),_0x3fe8ab=_0x1034be[_0x4b4a81(0x142)]||_0x1034be[_0x4b4a81(0x170)]||'Reviewer',_0x3f3d82=_0x1034be[_0x4b4a81(0x105)]?'\x20(on\x20element:\x20<'+(_0x1034be[_0x4b4a81(0x105)]['selector']['split'](_0x178b17[_0x4b4a81(0x10d)])['pop']()?.[_0x4b4a81(0x18d)](':')[0x0]||'element')+'>\x20\x22'+(_0x1034be[_0x4b4a81(0x105)]['textContent']||'')[_0x4b4a81(0x190)](0x0,0x32)+'\x22)':'';return _0x4b4a81(0x15b)+_0x1034be['id']+']\x20**'+_0x3fe8ab+'**\x20('+_0x22bfb6+'):\x20\x22'+_0x1034be['content']+'\x22'+_0x3f3d82;})['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'+_0x1dd085;}function buildNovaSharedOptionsInstruction(_0x353f21){const _0x30e06d=_0x25fb66;if(!_0x353f21['trim']())return _0x30e06d(0x115);return _0x30e06d(0x118)+_0x353f21;}function _0x2436(){const _0x116430=['--output-dir','canonicalFlow','catch','frameSession','nova_act_session_close','QJOsI','kDkfS','euCNo','Library','ORGIM','IPQGN','nfGvW','authorEmail','browser','iQLyY','export','traceSampleCount','block','YGKSu','match','PreToolUse','nova_act_session_report','libvpx-vp9','GjoMX','`\x0a4.\x20Run\x20one\x20batched\x20`','tracingStarted','\x20screenshot\x20--output\x20','stopped','readSessionMetadataWithRetry','videos','\x20snapshot\x20--output\x20','keys','nova-session-export.json','startsWith','sort','startAttempted','createdAt','.cache','verify','cwd','hook_event_name','split','transportMetadata','unaddressedComments','slice','7733523AHvUbQ','oagjf','key_final-state.png','gPZsR','GSRZl','RRFfk','allSettled','create\x20Nova\x20browser\x20session','name','wait\x20for\x20page\x20condition','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','isFile','wait-for','phase','yuv420p','capture\x20key\x20step\x20`','cliArtifactDir','send','AUGWT','close','newCDPSession','-version','subcommand','description','-loglevel','short','310122fgoqXF','args','getFrameDir','4139970gKaXSH','CZsRN','session\x20create','fzoTs','cdp_endpoint','00_initial-state.yml','FOzhf','-hide_banner','6470tHJAWP','queueTraceSample','frameWrites','test','startTraceSampling','trackPhaseStart','BDnZS','koKvN','mtimeMs','CGHio','untqu','KCZxV','JQDgW','jvoez','start','key_03_success-state.png','body','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','finally','capture\x20screenshot','01_initial-state.png','zAlkv','export\x20Nova\x20session','\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`','QARMT','-c:v','now','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','Bash','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','syFOK','mWeJr','10UeLeKe','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','locator','ask\x20page\x20question','from','nova-user-data/*','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','sessionId','\x20>\x20','screenshot','startScreencast','\x20session\x20create\x20','.jpg','domRef','19608IsbXvG','toLocaleDateString','ictoy','\x0a\x0a##\x20Additional\x20Notes\x0a','YuxLC','oLCmo','DZUzi','gMsYr','pages','stopScreencast','ErPkv','WHrcG','encodeScreencastVideo','CFLQc','params','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.','tool_name','Nova\x20command\x20`','Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a','final-state.yaml','nova-act-cli','zip','ms-playwright','invocation','-qr','2440cQdHqO','screencastStarted','dfvMv','nova_act_artifact_recording','notes','context','command','ffmpeg','`\x0a-\x20`','\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`','197FcIaRD','replace','nova_act_final_screenshot','\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','utf-8','ezSIt','WVRHO','capture\x20snapshot\x20`','PsiFt','nova_act_command','trace.zip','commandArgs','01_initial.yml','Page.startScreencast','base64','captureTraceSample','novaOptions','1623123jkNifR','telemetry','frameCount','traceSampleTimer','navigate\x20browser','--output','fymWS','`\x0a3.\x20Run\x20`','authorName','snapshot','.act_cli','03_final-state.png','--format','push','`.\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`','keCfJ','stop','capture\x20snapshot','4866HkBUij','has','NTWdo','tool_input','tracing','parse','error','traceSampleInFlight','nova_act_session_export','-framerate','padStart','state','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','flatMap','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','-\x20[','nFFfY','-vf','PostToolUse','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','en-US','ThkOR','execute','trackPhaseEnd'];_0x2436=function(){return _0x116430;};return _0x2436();}export function buildVerifyFeatureNovaCliDebugPrompt(_0x49e1cf){const _0x2f8071=_0x25fb66,_0x34dd81={'fymWS':_0x2f8071(0x1b3),'eDnrC':_0x2f8071(0xec),'QJOsI':function(_0x36804c,_0x1e4d02,_0xf17fa0){return _0x36804c(_0x1e4d02,_0xf17fa0);},'ThkOR':function(_0x5dab9a,_0x5960b1){return _0x5dab9a(_0x5960b1);},'DwHdh':function(_0x438c49,_0x1b405b){return _0x438c49(_0x1b405b);}},{novaCommandPrefix:_0x30670a,novaSharedOptionsSuffix:_0x87f613,cliArtifactDir:_0x4b64ed,url:_0x5a6a35}=_0x49e1cf,_0x777609=buildCliArtifactPath(_0x4b64ed,_0x34dd81[_0x2f8071(0x140)]),_0x594e5=buildCliArtifactPath(_0x4b64ed,_0x34dd81['eDnrC']),_0xce9d74=_0x34dd81[_0x2f8071(0x169)](buildCliArtifactPath,_0x4b64ed,'02_final-state.yml'),_0x2de99d=_0x34dd81['QJOsI'](buildCliArtifactPath,_0x4b64ed,_0x2f8071(0x145));return'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'+_0x30670a+'\x0a\x0a'+_0x34dd81[_0x2f8071(0x161)](buildNovaSharedOptionsInstruction,_0x87f613)+_0x2f8071(0x128)+_0x30670a+'\x20session\x20create\x20'+_0x34dd81['DwHdh'](quoteShellArg,_0x5a6a35)+'\x20'+_0x87f613+'`\x0a2.\x20Run\x20`'+_0x30670a+_0x2f8071(0x182)+quoteShellArg(_0x777609)+'\x20'+_0x87f613+_0x2f8071(0x141)+_0x30670a+_0x2f8071(0x17e)+_0x34dd81['ThkOR'](quoteShellArg,_0x594e5)+'\x20'+_0x87f613+_0x2f8071(0x17c)+_0x30670a+'\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`'+_0x30670a+_0x2f8071(0x182)+quoteShellArg(_0xce9d74)+'\x20'+_0x87f613+'`\x0a6.\x20Run\x20`'+_0x30670a+_0x2f8071(0x17e)+quoteShellArg(_0x2de99d)+'\x20'+_0x87f613+_0x2f8071(0x19b)+_0x4b64ed+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x3122c6){const _0x160df9=_0x25fb66,_0x30ec34={'keCfJ':function(_0x3dbcef,_0x5c538a){return _0x3dbcef(_0x5c538a);},'AXtUH':function(_0x4bb650,_0x31ba58,_0x495a23){return _0x4bb650(_0x31ba58,_0x495a23);},'AQUjS':'`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`'},{checklistItem:_0x39f08c,itemFeedback:_0x625066,taskDescription:_0x2566cf,novaCommandPrefix:_0x40b1f8,novaSharedOptionsSuffix:_0x2a1627,cliArtifactDir:_0x321194,url:_0x4bfb27,loginInstructions:_0xfc2ae4}=_0x3122c6,_0x51a01d=_0x39f08c[_0x160df9(0x123)]?_0x160df9(0x109)+_0x39f08c['notes']:'',_0x4d2575=_0x30ec34[_0x160df9(0x149)](buildFeedbackSection,_0x625066),_0x3ad60c=_0x625066?.[_0x160df9(0x165)]?_0x160df9(0xf3)+_0x625066[_0x160df9(0x165)]:'',_0x309c88=_0xfc2ae4?_0x160df9(0xf5)+_0xfc2ae4+_0x160df9(0x15f):'',_0xab47fd=buildCliArtifactPath(_0x321194,_0x160df9(0x135)),_0x29f808=_0x30ec34['AXtUH'](buildCliArtifactPath,_0x321194,_0x160df9(0xec)),_0x2a0217=buildCliArtifactPath(_0x321194,_0x160df9(0xe7));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'+_0x39f08c[_0x160df9(0x1a8)]+_0x51a01d+_0x4d2575+_0x3ad60c+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x2566cf+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x4bfb27+_0x160df9(0x12c)+_0x309c88+_0x160df9(0xef)+_0x40b1f8+_0x160df9(0x103)+_0x30ec34['keCfJ'](quoteShellArg,_0x4bfb27)+'\x20'+_0x2a1627+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x321194+'`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`'+_0x40b1f8+_0x160df9(0x182)+quoteShellArg(_0xab47fd)+'\x20'+_0x2a1627+_0x160df9(0xfe)+_0x40b1f8+_0x160df9(0x17e)+quoteShellArg(_0x29f808)+'\x20'+_0x2a1627+'`.\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`'+_0x2a0217+_0x160df9(0x148)+_0x40b1f8+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x2a1627['trim']()?'`'+_0x2a1627+'`':_0x30ec34['AQUjS'])+'\x0a\x0a'+_0x30ec34['keCfJ'](buildNovaSharedOptionsInstruction,_0x2a1627)+'\x0a\x0aExamples:\x0a-\x20`'+_0x40b1f8+_0x160df9(0x15a)+_0x2a1627+_0x160df9(0x127)+_0x40b1f8+_0x160df9(0x158)+_0x2a1627+_0x160df9(0x127)+_0x40b1f8+'\x20snapshot\x20--output\x20'+_0x30ec34[_0x160df9(0x149)](quoteShellArg,_0xab47fd)+'\x20'+_0x2a1627+'`\x0a-\x20`'+_0x40b1f8+_0x160df9(0x17e)+quoteShellArg(_0x2a0217)+'\x20'+_0x2a1627+'`\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(_0x5d12c9){const _0x5df7f4=_0x25fb66,_0x4c4d01=[..._0x5d12c9[_0x5df7f4(0x183)]()]['sort']();let _0x3f23bf=0x0;for(const _0x44fa67 of _0x5d12c9['values']()){_0x3f23bf+=_0x44fa67;}return{'cliCommandCount':_0x3f23bf,'cliCommandsSeen':_0x4c4d01,'noCliCommandsCalled':_0x3f23bf===0x0};}export function createVerifyFeatureNovaCliHooks(_0x302887,_0x98d06c){const _0x2d1330=_0x25fb66,_0x4c79fe={'STFLA':_0x2d1330(0x178),'gPZsR':_0x2d1330(0xf4),'nFFfY':_0x2d1330(0x175),'HlbBG':function(_0x4ede54,_0x12b725){return _0x4ede54!==_0x12b725;},'zvgnT':function(_0x59e728,_0xd21be3){return _0x59e728(_0xd21be3);},'OaKnh':_0x2d1330(0x1b0),'YGKSu':_0x2d1330(0x122),'rlHUF':_0x2d1330(0x11a),'untqu':function(_0x44ff11,_0x2b2496){return _0x44ff11!==_0x2b2496;},'KeVRc':'PostToolUseFailure'},_0x3da86e=new Map(),_0x10db1b=async _0x540175=>{const _0x16ede7=_0x2d1330;if(_0x540175['hook_event_name']!==_0x4c79fe['STFLA'])return{};const _0xbb35aa=_0x540175;if(_0xbb35aa[_0x16ede7(0x116)]!==_0x4c79fe['gPZsR'])return{};const _0x3f057a=_0xbb35aa['tool_input'],_0x75e8e=extractBashCommand(_0x3f057a);if(!_0x75e8e)return{};const _0x58b0ea=getNovaActCliCommandBlockReason(_0x75e8e);if(!_0x58b0ea)return{};return{'decision':_0x4c79fe[_0x16ede7(0x15c)],'reason':_0x58b0ea};},_0x52145d=async _0x46ea5d=>{const _0x13faad=_0x2d1330;if(_0x4c79fe['HlbBG'](_0x46ea5d[_0x13faad(0x18c)],_0x13faad(0x15e)))return{};const _0x20bfac=_0x46ea5d;if(_0x20bfac[_0x13faad(0x116)]!==_0x13faad(0xf4))return{};const _0x353aae=_0x20bfac[_0x13faad(0x14f)],_0x35cbe9=extractBashCommand(_0x353aae);if(!_0x35cbe9)return{};const _0x574d70=_0x4c79fe['zvgnT'](parseNovaActCliCommand,_0x35cbe9);if(!_0x574d70)return{};_0x3da86e['set'](_0x574d70,(_0x3da86e['get'](_0x574d70)||0x0)+0x1),_0x302887[_0x13faad(0xdd)](_0x13faad(0x132),{'subcommand':_0x574d70}),_0x302887['trackPhaseEnd'](_0x13faad(0x132),{'subcommand':_0x574d70,'commandPreview':previewNovaActCliCommand(_0x35cbe9)}),console['log']('[nova-act-cli]\x20'+formatNovaActCliLog(_0x35cbe9,_0x574d70));if(_0x574d70===_0x4c79fe['OaKnh']&&_0x98d06c)try{await _0x98d06c[_0x13faad(0xe6)]();}catch(_0x5e54f5){await _0x302887['trackPhaseError'](_0x4c79fe[_0x13faad(0x176)],_0x5e54f5,{'transport':_0x4c79fe['rlHUF']});}return{};},_0x48923a=async _0x5841c3=>{const _0x17df3b=_0x2d1330;if(_0x4c79fe[_0x17df3b(0xe2)](_0x5841c3[_0x17df3b(0x18c)],_0x4c79fe['KeVRc']))return{};const _0x3d465f=_0x5841c3;if(_0x3d465f[_0x17df3b(0x116)]!==_0x17df3b(0xf4))return{};return await _0x302887['trackPhaseError']('nova_act_command_failure',_0x3d465f[_0x17df3b(0x152)],{'transport':_0x4c79fe['rlHUF'],'toolName':_0x4c79fe[_0x17df3b(0x194)]}),{};};return{'preToolUseHook':_0x10db1b,'postToolUseHook':_0x52145d,'postToolUseFailureHook':_0x48923a,'commandCounts':_0x3da86e};}async function runNovaLifecycleCommand(_0x15a4ff){const _0x5aecb4=_0x25fb66,_0x8272e2={'jvoez':function(_0xec479,_0x1c8b2b){return _0xec479(_0x1c8b2b);},'CesAx':function(_0x3759b7,_0x19a1cf){return _0x3759b7(_0x19a1cf);}},{novaOptions:_0x4532f6,commandArgs:_0x28ff4b,telemetry:_0x397192,phase:_0x12aa00,metadata:_0x268a3a,timeoutMs:_0x1fd457}=_0x15a4ff;_0x397192['trackPhaseStart'](_0x12aa00,_0x268a3a);try{const _0x56af06=await _0x8272e2[_0x5aecb4(0xe5)](runNovaActCliCommand,{..._0x4532f6,'commandArgs':_0x28ff4b,'cwd':process[_0x5aecb4(0x18b)](),'env':process['env'],'timeoutMs':_0x1fd457??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x397192['trackPhaseEnd'](_0x12aa00,{..._0x268a3a,'subcommand':_0x56af06['invocation'][_0x5aecb4(0x1a7)],'commandPreview':previewNovaActCliCommand(_0x56af06[_0x5aecb4(0x11d)]['shellCommand']),'stdoutPreview':_0x8272e2['CesAx'](previewNovaActCliCommand,_0x56af06['stdout']),'stderrPreview':previewNovaActCliCommand(_0x56af06['stderr']),'logDir':extractNovaActLogDir(_0x56af06['stdout'])});}catch(_0x145a6c){await _0x397192['trackPhaseError'](_0x12aa00,_0x145a6c,_0x268a3a);throw _0x145a6c;}}export async function finalizeVerifyFeatureNovaCliSession(_0x2d2e44){const _0x493a02=_0x25fb66,_0x3f7161={'ZOEaL':_0x493a02(0x12b),'euCNo':_0x493a02(0x101),'QARMT':function(_0x296007,_0x35f750,_0xb1192f){return _0x296007(_0x35f750,_0xb1192f);},'XUtPx':'nova_act_final_snapshot','FOzhf':'--output','BDnZS':_0x493a02(0x154),'Dmurf':'session','iQLyY':_0x493a02(0x173),'lEdhk':_0x493a02(0x184),'GSRZl':_0x493a02(0x164),'PsiFt':function(_0x4687a7,_0x4312e7){return _0x4687a7===_0x4312e7;},'mWeJr':function(_0x312fb0,_0x268a46){return _0x312fb0(_0x268a46);}},{telemetry:_0x2f2e41,novaOptions:_0x370d04,cliArtifactDir:_0x596505,transportMetadata:_0x45b937,artifactRecorder:_0x5ba8ea}=_0x2d2e44,_0x48e5e4=[{'phase':_0x3f7161['ZOEaL'],'commandArgs':[_0x3f7161[_0x493a02(0x16b)],_0x493a02(0x13f),_0x3f7161['QARMT'](buildCliArtifactPath,_0x596505,_0x493a02(0x193))]},{'phase':_0x3f7161['XUtPx'],'commandArgs':[_0x493a02(0x143),_0x3f7161[_0x493a02(0xd6)],_0x3f7161[_0x493a02(0xf0)](buildCliArtifactPath,_0x596505,_0x493a02(0x119))]},{'phase':_0x3f7161[_0x493a02(0xde)],'commandArgs':[_0x3f7161['Dmurf'],_0x3f7161[_0x493a02(0x172)],_0x493a02(0x146),'json',_0x3f7161['FOzhf'],buildCliArtifactPath(_0x596505,_0x3f7161['lEdhk'])]},{'phase':_0x493a02(0x179),'commandArgs':[_0x3f7161['Dmurf'],'export','--report',_0x3f7161[_0x493a02(0x195)],buildCliArtifactPath(_0x596505,'nova-report')]},{'phase':_0x493a02(0x168),'commandArgs':[_0x3f7161['Dmurf'],_0x493a02(0x1a4)]}];for(const _0x4f7a5e of _0x48e5e4){_0x3f7161[_0x493a02(0x131)](_0x4f7a5e['phase'],_0x493a02(0x168))&&await _0x5ba8ea?.[_0x493a02(0x14a)]();try{await _0x3f7161[_0x493a02(0xf7)](runNovaLifecycleCommand,{'novaOptions':_0x370d04,'commandArgs':[..._0x4f7a5e['commandArgs']],'telemetry':_0x2f2e41,'phase':_0x4f7a5e[_0x493a02(0x19e)],'metadata':_0x45b937});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x21d6ec){const _0x97ed8c=_0x25fb66,_0xe7ddd1={'CZsRN':function(_0x278b9a,_0x4a55c9){return _0x278b9a(_0x4a55c9);},'koKvN':function(_0x2e76da,_0x446ec1){return _0x2e76da<_0x446ec1;},'CEUTZ':function(_0x1dd4c8,_0x4746ff){return _0x1dd4c8+_0x4746ff;},'ezSIt':function(_0x416608,_0xfbd710,_0x21ec20){return _0x416608(_0xfbd710,_0x21ec20);},'KyzJh':function(_0x123d5b,_0xfee62a){return _0x123d5b===_0xfee62a;}},{cwd:_0x296ce4,cliArtifactDir:_0x5c7cda,startTime:_0x598961}=_0x21d6ec,_0x3219a9=[];await mkdir(_0x5c7cda,{'recursive':!![]});const _0x3df977=await readdir(_0x296ce4,{'withFileTypes':!![]});for(const _0x54cedf of _0x3df977){if(!_0x54cedf[_0x97ed8c(0x19c)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN['test'](_0x54cedf['name']))continue;const _0x52695e=join(_0x296ce4,_0x54cedf['name']),_0x1e43e9=await _0xe7ddd1[_0x97ed8c(0x1af)](stat,_0x52695e);if(_0xe7ddd1[_0x97ed8c(0xdf)](_0xe7ddd1['CEUTZ'](_0x1e43e9[_0x97ed8c(0xe0)],0x7d0),_0x598961))continue;const _0x17e42a=_0xe7ddd1[_0x97ed8c(0x12e)](buildCliArtifactPath,_0x5c7cda,_0x54cedf[_0x97ed8c(0x199)]);if(_0xe7ddd1['KyzJh'](_0x52695e,_0x17e42a))continue;await rename(_0x52695e,_0x17e42a),_0x3219a9['push'](_0x54cedf[_0x97ed8c(0x199)]);}return _0x3219a9['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x2aae70){const _0x175b04=_0x25fb66,_0x2cd4d6={'CFLQc':function(_0x217741,_0x3859f3,_0x87a0e0){return _0x217741(_0x3859f3,_0x87a0e0);},'mlyso':'trace.zip','RRFfk':function(_0x995435,_0x119e0a){return _0x995435(_0x119e0a);}},_0x3f5718=_0x2cd4d6[_0x175b04(0x113)](join,_0x2aae70,_0x2cd4d6['mlyso']);try{return{'buffer':await _0x2cd4d6[_0x175b04(0x196)](readFile,_0x3f5718),'source':_0x3f5718};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0x2aae70),'source':_0x2aae70};}}async function zipVerifyFeatureNovaArtifacts(_0x2ecfbf){const _0x398ebe=_0x25fb66,_0x5ea751={'nfGvW':function(_0x350e17,_0x5daf5c,_0x3c0331,_0x5eacb4){return _0x350e17(_0x5daf5c,_0x3c0331,_0x5eacb4);},'JQDgW':'nova-artifacts.zip','nwzXp':_0x398ebe(0x11e)},_0x5380e4=_0x5ea751[_0x398ebe(0x16f)](join,_0x2ecfbf,'..',_0x5ea751[_0x398ebe(0xe4)]);try{return await execFileAsync(_0x398ebe(0x11b),[_0x5ea751['nwzXp'],_0x5380e4,'.','-x',_0x398ebe(0xfd)],{'cwd':_0x2ecfbf}),await readFile(_0x5380e4);}finally{await rm(_0x5380e4,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x5adff6){const _0x4fef5b=_0x25fb66,_0x4a9f93={'WHrcG':function(_0x28e2df,_0x20f1fa,_0xef4ed7){return _0x28e2df(_0x20f1fa,_0xef4ed7);},'CCNZV':function(_0x147800,_0x5cf363){return _0x147800(_0x5cf363);}},_0x331626=_0x4a9f93['WHrcG'](buildNovaActCliInvocation,_0x5adff6[_0x4fef5b(0x139)],_0x5adff6[_0x4fef5b(0x134)]);return{'command':_0x331626[_0x4fef5b(0x125)],'args':_0x331626[_0x4fef5b(0x1ac)],'commandPreview':_0x4a9f93['CCNZV'](previewNovaActCliCommand,_0x331626['shellCommand']),'subcommand':_0x331626[_0x4fef5b(0x1a7)],'sharedOptionsSuffix':_0x4a9f93[_0x4fef5b(0x111)](buildNovaActCliSharedOptionsSuffix,_0x5adff6[_0x4fef5b(0x139)],_0x5adff6[_0x4fef5b(0x134)])};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x5a95e0,_0x489eee){const _0x278f49=_0xec39,_0x53e998=_0x5a95e0();while(!![]){try{const _0x20ca27=parseInt(_0x278f49(0xf0))/0x1+parseInt(_0x278f49(0x100))/0x2*(-parseInt(_0x278f49(0xfa))/0x3)+parseInt(_0x278f49(0xd9))/0x4+-parseInt(_0x278f49(0xff))/0x5+-parseInt(_0x278f49(0x10e))/0x6+parseInt(_0x278f49(0xc6))/0x7*(parseInt(_0x278f49(0x10a))/0x8)+-parseInt(_0x278f49(0xd4))/0x9*(-parseInt(_0x278f49(0xea))/0xa);if(_0x20ca27===_0x489eee)break;else _0x53e998['push'](_0x53e998['shift']());}catch(_0x43a626){_0x53e998['push'](_0x53e998['shift']());}}}(_0x1d1d,0xb3cda));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(_0x3942df,_0x575f94=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x9694e6=_0xec39;return _0x3942df['length']>_0x575f94?_0x3942df[_0x9694e6(0xef)](0x0,_0x575f94)+_0x9694e6(0xc8):_0x3942df;}function extractShellValue(_0x2c6e21){if(!_0x2c6e21)return null;return _0x2c6e21[0x1]??_0x2c6e21[0x2]??_0x2c6e21[0x3]??null;}function extractFirstCommandArgument(_0x4147d2,_0x37c32c){const _0x363b40=_0xec39,_0x12c0ec={'ngSQp':'\x5c$&','DRlSG':function(_0x27db37,_0x443a20){return _0x27db37(_0x443a20);}},_0x4e4186=_0x37c32c[_0x363b40(0xd8)](/[.*+?^${}()|[\]\\]/g,_0x12c0ec['ngSQp']);return _0x12c0ec['DRlSG'](extractShellValue,_0x4147d2[_0x363b40(0x112)](new RegExp('(?:^|\x5cs)'+_0x4e4186+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x1a3cca){const _0xd0ef7b=_0xec39,_0x328304={'oTeiH':function(_0xcccdf5,_0x232ceb,_0x1dfe71){return _0xcccdf5(_0x232ceb,_0x1dfe71);}};if(!_0x1a3cca)return'target';if(/^e\d+$/i[_0xd0ef7b(0x10c)](_0x1a3cca))return'ref\x20'+_0x1a3cca;return JSON['stringify'](_0x328304['oTeiH'](truncatePreview,_0x1a3cca,0x78));}function _0xec39(_0x5cf5bf,_0x3e5982){_0x5cf5bf=_0x5cf5bf-0xbc;const _0x1d1dc8=_0x1d1d();let _0xec3960=_0x1d1dc8[_0x5cf5bf];return _0xec3960;}function formatRangerwrightCliLog(_0x5755d9,_0x462525){const _0x211f36=_0xec39,_0x4d6b50={'TpBLa':function(_0x30a805,_0x15d5c4,_0x5f772f){return _0x30a805(_0x15d5c4,_0x5f772f);},'YXCrE':'click-and-inspect','uCsTP':_0x211f36(0xcd),'ptsoq':_0x211f36(0xc9),'rfZoT':_0x211f36(0x10b),'Jhhft':'stop\x20tracing'};switch(_0x462525){case _0x211f36(0xda):{const _0x224d84=_0x4d6b50['TpBLa'](extractFirstCommandArgument,_0x5755d9,_0x462525);return _0x224d84?_0x211f36(0xbf)+_0x224d84:_0x211f36(0xfe);}case _0x4d6b50[_0x211f36(0xc7)]:return _0x211f36(0x103)+formatCommandTarget(_0x4d6b50[_0x211f36(0xf3)](extractFirstCommandArgument,_0x5755d9,_0x462525));case'fill':case _0x4d6b50['uCsTP']:return'fill\x20'+formatCommandTarget(_0x4d6b50['TpBLa'](extractFirstCommandArgument,_0x5755d9,_0x462525));case _0x211f36(0x10f):return'go\x20back\x20and\x20inspect';case _0x4d6b50[_0x211f36(0xe6)]:return _0x211f36(0x108);case _0x4d6b50[_0x211f36(0xe3)]:return _0x4d6b50['Jhhft'];case'video-stop':return'stop\x20video\x20recording';case _0x211f36(0xe4):return _0x211f36(0xf2);default:return _0x462525;}}function renderScenarioSections(_0x35c261){const _0x55d886=_0xec39,_0x3392ce={'KAQzu':_0x55d886(0xf6),'LOEQZ':_0x55d886(0x10d),'EfGoG':function(_0x498951,_0x391e0a){return _0x498951>_0x391e0a;}},{checklistItem:_0x2bb448,itemFeedback:_0x2fd15}=_0x35c261,_0x1fe66a=_0x2bb448['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x2bb448['notes']:'';let _0x8d9910='';if(_0x2fd15&&_0x3392ce['EfGoG'](_0x2fd15['unaddressedComments']['length'],0x0)){const _0x2f4bc0=_0x2fd15['unaddressedComments'][_0x55d886(0xbc)](_0x821fc2=>{const _0x42e51b=_0x55d886,_0x94b649=new Date(_0x821fc2[_0x42e51b(0xe1)])[_0x42e51b(0xc1)](_0x3392ce[_0x42e51b(0xd1)],{'month':_0x42e51b(0xce),'day':_0x42e51b(0xca)}),_0x42db36=_0x821fc2[_0x42e51b(0x101)]||_0x821fc2['authorEmail']||_0x42e51b(0xc0),_0x1308dc=_0x821fc2[_0x42e51b(0xf4)]?'\x20(on\x20element:\x20<'+(_0x821fc2['domRef']['selector']['split'](_0x3392ce[_0x42e51b(0x106)])[_0x42e51b(0xe2)]()?.['split'](':')[0x0]||_0x42e51b(0xfc))+'>\x20\x22'+(_0x821fc2[_0x42e51b(0xf4)][_0x42e51b(0xeb)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x821fc2['id']+']\x20'+_0x42db36+'\x20('+_0x94b649+'):\x20\x22'+_0x821fc2[_0x42e51b(0xcc)]+'\x22'+_0x1308dc;})[_0x55d886(0xdb)]('\x0a');_0x8d9910='\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'+_0x2f4bc0;}const _0x2068b5=_0x2fd15?.[_0x55d886(0x107)]?_0x55d886(0x105)+_0x2fd15['canonicalFlow']:'';return''+_0x2bb448[_0x55d886(0xdd)]+_0x1fe66a+_0x8d9910+_0x2068b5;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x5da51f){const _0x46b923=_0xec39,_0x24cc85={'fTiFT':function(_0x295594,_0xfbcdb7){return _0x295594(_0xfbcdb7);},'owYJw':function(_0x4e9541,_0x2fe314){return _0x4e9541??_0x2fe314;},'LPgfv':'about:blank','jWGmU':function(_0x36738a,_0x3f4df4){return _0x36738a(_0x3f4df4);}},{checklistItem:_0x9bee36,itemFeedback:_0x345bb8,taskDescription:_0x34e0b8,commandPrefix:_0x526f21,isCdpMode:_0x3f8835,url:_0x43db9e,cdpEndpoint:_0x56e139,loginInstructions:_0x30408b}=_0x5da51f,_0x1d80ff='01_initial-state.png',_0xcb0271='key_99_final-state.png',_0x42ce4f=_0x3f8835?_0x526f21+_0x46b923(0xd3)+_0x24cc85[_0x46b923(0xde)](quoteShellArg,_0x1d80ff):_0x526f21+'\x20open-and-inspect\x20'+_0x24cc85[_0x46b923(0xde)](quoteShellArg,_0x24cc85[_0x46b923(0x110)](_0x43db9e,_0x24cc85[_0x46b923(0xf5)]))+_0x46b923(0xfd)+_0x24cc85['jWGmU'](quoteShellArg,_0x1d80ff),_0x4322f7=_0x3f8835?_0x46b923(0xbe)+_0x56e139+'.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.':_0x46b923(0x114)+_0x43db9e+_0x46b923(0xee),_0x458aa6=_0x30408b?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x30408b+_0x46b923(0xd0):'';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'+_0x24cc85['fTiFT'](renderScenarioSections,{'checklistItem':_0x9bee36,'itemFeedback':_0x345bb8})+_0x46b923(0xc3)+_0x34e0b8+'\x0a\x0a'+_0x4322f7+_0x458aa6+'\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x526f21+'\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'+_0x42ce4f+'\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'+_0x526f21+'\x20click-and-inspect\x20e37\x20--screenshot-path\x20'+quoteShellArg(_0xcb0271)+_0x46b923(0xf8);}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x56280c){const _0x465c98=_0xec39,_0x2a08e6={'FGRRh':_0x465c98(0xc4),'nfbDZ':function(_0x544822,_0x56e27e){return _0x544822(_0x56e27e);}},_0xff69cc='01_mozilla-homepage.png',_0x31a027=_0x2a08e6[_0x465c98(0xf1)];return _0x465c98(0xd2)+_0x56280c['commandPrefix']+_0x465c98(0xe7)+_0x56280c['commandPrefix']+_0x465c98(0xdf)+_0x2a08e6['nfbDZ'](quoteShellArg,_0x56280c['url'])+_0x465c98(0xfd)+quoteShellArg(_0xff69cc)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0x56280c['commandPrefix']+_0x465c98(0xd7)+_0x2a08e6['nfbDZ'](quoteShellArg,_0x31a027)+_0x465c98(0xc2);}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x159c46){const _0x1cfcf9=_0xec39,_0x23d497={'BlkRq':function(_0x1c99fa,_0x487da1){return _0x1c99fa===_0x487da1;}},_0x370081=[..._0x159c46[_0x1cfcf9(0xbd)]()]['sort']();let _0x1dd153=0x0;for(const _0x15acc5 of _0x159c46['values']()){_0x1dd153+=_0x15acc5;}return{'cliCommandCount':_0x1dd153,'cliCommandsSeen':_0x370081,'noCliCommandsCalled':_0x23d497[_0x1cfcf9(0xcf)](_0x1dd153,0x0)};}export function createVerifyFeatureRangerwrightCliHooks(_0x15cff0){const _0x19e69a=_0xec39,_0x53bf0c={'IDgrl':function(_0x55bb65,_0x13c462){return _0x55bb65(_0x13c462);},'RmAMR':'rangerwright_cli_command','OMKaA':function(_0x41dc56,_0x3f41ef){return _0x41dc56!==_0x3f41ef;},'JFbOE':'Bash','ZaowG':_0x19e69a(0xed)},_0x48b081=new Map(),_0x756afa=async _0x16ebc9=>{const _0x5ee011=_0x19e69a;if(_0x16ebc9[_0x5ee011(0xf7)]!=='PostToolUse')return{};const _0x593d9d=_0x16ebc9;if(_0x593d9d[_0x5ee011(0xe0)]!=='Bash')return{};const _0x99b227=_0x593d9d['tool_input'],_0x203318=extractBashCommand(_0x99b227);if(!_0x203318)return{};const _0x345f25=_0x53bf0c['IDgrl'](parseRangerwrightCliCommand,_0x203318);if(!_0x345f25)return{};return _0x48b081['set'](_0x345f25,(_0x48b081[_0x5ee011(0xd6)](_0x345f25)||0x0)+0x1),_0x15cff0[_0x5ee011(0x104)](_0x53bf0c[_0x5ee011(0xfb)],{'subcommand':_0x345f25}),_0x15cff0[_0x5ee011(0xcb)]('rangerwright_cli_command',{'subcommand':_0x345f25,'commandPreview':truncatePreview(_0x203318)}),console[_0x5ee011(0xd5)](_0x5ee011(0xf9)+formatRangerwrightCliLog(_0x203318,_0x345f25)),{};},_0x2ab417=async _0xaf8607=>{const _0x43cdb4=_0x19e69a;if(_0x53bf0c[_0x43cdb4(0x111)](_0xaf8607['hook_event_name'],'PostToolUseFailure'))return{};const _0x114287=_0xaf8607;if(_0x114287[_0x43cdb4(0xe0)]!==_0x53bf0c['JFbOE'])return{};return await _0x15cff0['trackPhaseError']('rangerwright_cli_command_failure',_0x114287['error'],{'transport':_0x53bf0c['ZaowG'],'toolName':_0x53bf0c[_0x43cdb4(0xdc)]}),{};};return{'postToolUseHook':_0x756afa,'postToolUseFailureHook':_0x2ab417,'commandCounts':_0x48b081};}function _0x1d1d(){const _0x39fc50=['trackPhaseError','8aJlvJi','tracing-stop','test','\x20>\x20','5272266ThCIqz','back-and-inspect','owYJw','OMKaA','match','phase','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','map','keys','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','open\x20and\x20inspect\x20','Reviewer','toLocaleDateString','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','key_02_learn-more.png','rangerwright_cli_tracing_stop','10275237pCdmAO','YXCrE','...','inspect','numeric','trackPhaseEnd','content','fill-and-inspect','short','BlkRq','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','KAQzu','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','\x20inspect\x20--screenshot-path\x20','155889Pbvhet','log','get','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','replace','2126504qqJlva','open-and-inspect','join','JFbOE','description','fTiFT','\x20open-and-inspect\x20','tool_name','createdAt','pop','rfZoT','close','xRjbL','ptsoq','\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`','stderr','mmZmo','90KojNSD','textContent','video-stop','rangerwright-cli','\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.','slice','65603kVzqqk','FGRRh','close\x20browser\x20session','TpBLa','domRef','LPgfv','en-US','hook_event_name','\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.','[rangerwright-cli]\x20','491901maXboC','RmAMR','element','\x20--screenshot-path\x20','open\x20and\x20inspect','2209285aEoOaN','2iamRYZ','authorName','commandArgs','click\x20and\x20inspect\x20','trackPhaseStart','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','LOEQZ','canonicalFlow','inspect\x20page'];_0x1d1d=function(){return _0x39fc50;};return _0x1d1d();}async function runRangerwrightLifecycleCommand(_0x1d52ca){const _0x4040aa=_0xec39,_0xa5ff95={'Ytyha':function(_0x1fcf49,_0x3e656a){return _0x1fcf49(_0x3e656a);},'xRjbL':function(_0x3e361c,_0x266e79){return _0x3e361c??_0x266e79;},'FrqNm':function(_0x43bdd1,_0x2ded97,_0x54b06f){return _0x43bdd1(_0x2ded97,_0x54b06f);},'teQjN':function(_0x1984ab,_0x34a95d,_0xe2f639){return _0x1984ab(_0x34a95d,_0xe2f639);}},{options:_0x1ce5b2,commandArgs:_0x3709a8,env:_0x1e7b8f,telemetry:_0x3ff871,phase:_0x3792d5,metadata:_0x47d7c2,timeoutMs:_0x512a4e}=_0x1d52ca;_0x3ff871[_0x4040aa(0x104)](_0x3792d5,_0x47d7c2);try{const _0x40301b=await _0xa5ff95['Ytyha'](runRangerwrightCliCommand,{..._0x1ce5b2,'commandArgs':_0x3709a8,'cwd':process['cwd'](),'env':_0x1e7b8f,'timeoutMs':_0xa5ff95[_0x4040aa(0xe5)](_0x512a4e,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x3ff871[_0x4040aa(0xcb)](_0x3792d5,{..._0x47d7c2,'subcommand':_0x40301b['invocation']['subcommand'],'stdoutPreview':_0xa5ff95['FrqNm'](truncatePreview,_0x40301b['stdout'],0x7d0),'stderrPreview':_0xa5ff95['teQjN'](truncatePreview,_0x40301b[_0x4040aa(0xe8)],0x7d0)});}catch(_0x1d161c){await _0x3ff871[_0x4040aa(0x109)](_0x3792d5,_0x1d161c,_0x47d7c2);throw _0x1d161c;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x5b733b){const _0xa2d5be=_0xec39,_0x45dec0={'mmZmo':'tracing-stop','jtLnt':_0xa2d5be(0xe4)},{telemetry:_0x3628da,rangerwrightOptions:_0x1ae0e8,env:_0x1dcfe9,transportMetadata:_0x5d13ad}=_0x5b733b,_0x3922bb=[{'phase':_0xa2d5be(0xc5),'commandArgs':[_0x45dec0[_0xa2d5be(0xe9)]]},{'phase':'rangerwright_cli_video_stop','commandArgs':[_0xa2d5be(0xec)]},{'phase':'rangerwright_cli_close','commandArgs':[_0x45dec0['jtLnt']]}];for(const _0x6d88b9 of _0x3922bb){try{await runRangerwrightLifecycleCommand({'options':_0x1ae0e8,'commandArgs':[..._0x6d88b9[_0xa2d5be(0x102)]],'env':_0x1dcfe9,'telemetry':_0x3628da,'phase':_0x6d88b9[_0xa2d5be(0x113)],'metadata':_0x5d13ad});}catch{}}}
|
|
1
|
+
(function(_0x1baa53,_0x1dee75){const _0x3fd5d=_0x3c53,_0x35053b=_0x1baa53();while(!![]){try{const _0x58a581=parseInt(_0x3fd5d(0x1eb))/0x1*(-parseInt(_0x3fd5d(0x20a))/0x2)+-parseInt(_0x3fd5d(0x1db))/0x3*(parseInt(_0x3fd5d(0x211))/0x4)+-parseInt(_0x3fd5d(0x1b9))/0x5+parseInt(_0x3fd5d(0x202))/0x6*(-parseInt(_0x3fd5d(0x1fd))/0x7)+-parseInt(_0x3fd5d(0x200))/0x8*(parseInt(_0x3fd5d(0x212))/0x9)+-parseInt(_0x3fd5d(0x20f))/0xa*(parseInt(_0x3fd5d(0x1ff))/0xb)+-parseInt(_0x3fd5d(0x1bd))/0xc*(-parseInt(_0x3fd5d(0x203))/0xd);if(_0x58a581===_0x1dee75)break;else _0x35053b['push'](_0x35053b['shift']());}catch(_0x4a0495){_0x35053b['push'](_0x35053b['shift']());}}}(_0x23ed,0xeb768));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(_0x411ce6,_0x5ddc60=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x4938de=_0x3c53,_0x493654={'seVxm':function(_0x438972,_0x55e7c3){return _0x438972>_0x55e7c3;},'SGUWg':'...'};return _0x493654['seVxm'](_0x411ce6[_0x4938de(0x1f3)],_0x5ddc60)?_0x411ce6['slice'](0x0,_0x5ddc60)+_0x493654[_0x4938de(0x1e8)]:_0x411ce6;}function extractShellValue(_0x423cbc){if(!_0x423cbc)return null;return _0x423cbc[0x1]??_0x423cbc[0x2]??_0x423cbc[0x3]??null;}function extractFirstCommandArgument(_0x185971,_0x1e3e5c){const _0x53fd32=_0x3c53,_0x57ae15={'VWSpY':_0x53fd32(0x20c),'sDril':function(_0xfc00bb,_0x56e6e6){return _0xfc00bb(_0x56e6e6);}},_0x556b9a=_0x1e3e5c[_0x53fd32(0x213)](/[.*+?^${}()|[\]\\]/g,_0x57ae15['VWSpY']);return _0x57ae15['sDril'](extractShellValue,_0x185971[_0x53fd32(0x1ba)](new RegExp('(?:^|\x5cs)'+_0x556b9a+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x1bee5b){const _0x320568=_0x3c53,_0x5602e7={'aZUvS':function(_0x26e317,_0x4fba58,_0x55986f){return _0x26e317(_0x4fba58,_0x55986f);}};if(!_0x1bee5b)return'target';if(/^e\d+$/i['test'](_0x1bee5b))return _0x320568(0x1ef)+_0x1bee5b;return JSON[_0x320568(0x1d7)](_0x5602e7['aZUvS'](truncatePreview,_0x1bee5b,0x78));}function _0x23ed(){const _0x411d43=['toLocaleDateString','38854gzovVz','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','\x5c$&','invocation','pop','10wINZOf','unaddressedComments','2587484zTEZMY','51147ZmFXUJ','replace','\x20--screenshot-path\x20','error','ybZNw','\x20click-and-inspect\x20e37\x20--screenshot-path\x20','\x20>\x20','open\x20and\x20inspect','5812975GdoNzF','match','HRZgm','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','3384QVgbYO','about:blank','cwd','rangerwright_cli_tracing_stop','key_02_learn-more.png','SNlRZ','inspect\x20page','XKJHO','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','\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','open-and-inspect','trackPhaseError','fill\x20','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','close','-\x20[','stop\x20tracing','01_mozilla-homepage.png','\x0a\x0a##\x20Additional\x20Notes\x0a','):\x20\x22','01_initial-state.png','selector','inspect','authorName','>\x20\x22','FVPYD','stringify','asPCV','tracing-stop','[rangerwright-cli]\x20','3iDqJhK','hook_event_name','FAOBo','element','split','\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','trackPhaseEnd','stop\x20video\x20recording','content','click-and-inspect','PkOzz','values','fill-and-inspect','SGUWg','rangerwright_cli_close','vXlAh','36VNYrNU','trackPhaseStart','url','tool_input','ref\x20','PsnDk','\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.','PostToolUse','length','MNZCL','notes','get','CtGDU','FHjKN','\x20(on\x20element:\x20<','set','\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`','tool_name','470708GURjsr','rangerwright_cli_command_failure','5908397HrgYyn','2648QwjobZ','rangerwright_cli_command','42giLQsZ','293293jcaSXH','mNGDA','authorEmail','map','wEvBh','video-stop'];_0x23ed=function(){return _0x411d43;};return _0x23ed();}function formatRangerwrightCliLog(_0x4385c6,_0xafc7e1){const _0x414646=_0x3c53,_0x9bed68={'VFNqK':_0x414646(0x1c7),'tfWZR':function(_0x30c96a,_0x2b9e3d,_0x10fc15){return _0x30c96a(_0x2b9e3d,_0x10fc15);},'ybZNw':function(_0x5dacdc,_0x4224eb){return _0x5dacdc(_0x4224eb);},'HRZgm':'fill','VIUCD':_0x414646(0x1e7),'CtGDU':function(_0x4d0def,_0x338515){return _0x4d0def(_0x338515);},'SNlRZ':'back-and-inspect','qVCjj':'go\x20back\x20and\x20inspect','PkOzz':_0x414646(0x1d3),'vXlAh':_0x414646(0x1c3),'xnTyu':'tracing-stop','CHvxt':_0x414646(0x1cd),'XKJHO':_0x414646(0x208),'OoJtN':'close\x20browser\x20session'};switch(_0xafc7e1){case _0x9bed68['VFNqK']:{const _0x54ef5d=_0x9bed68['tfWZR'](extractFirstCommandArgument,_0x4385c6,_0xafc7e1);return _0x54ef5d?'open\x20and\x20inspect\x20'+_0x54ef5d:_0x414646(0x1b8);}case _0x414646(0x1e4):return'click\x20and\x20inspect\x20'+_0x9bed68[_0x414646(0x216)](formatCommandTarget,extractFirstCommandArgument(_0x4385c6,_0xafc7e1));case _0x9bed68[_0x414646(0x1bb)]:case _0x9bed68['VIUCD']:return _0x414646(0x1c9)+_0x9bed68[_0x414646(0x1f7)](formatCommandTarget,extractFirstCommandArgument(_0x4385c6,_0xafc7e1));case _0x9bed68[_0x414646(0x1c2)]:return _0x9bed68['qVCjj'];case _0x9bed68[_0x414646(0x1e5)]:return _0x9bed68[_0x414646(0x1ea)];case _0x9bed68['xnTyu']:return _0x9bed68['CHvxt'];case _0x9bed68[_0x414646(0x1c4)]:return _0x414646(0x1e2);case'close':return _0x9bed68['OoJtN'];default:return _0xafc7e1;}}function renderScenarioSections(_0x3b1f82){const _0x5d909a=_0x3c53,_0x3ac393={'PsnDk':function(_0x7909a,_0x4ba10f){return _0x7909a>_0x4ba10f;}},{checklistItem:_0x358fab,itemFeedback:_0x228b12}=_0x3b1f82,_0x11766f=_0x358fab[_0x5d909a(0x1f5)]?_0x5d909a(0x1cf)+_0x358fab[_0x5d909a(0x1f5)]:'';let _0x567171='';if(_0x228b12&&_0x3ac393[_0x5d909a(0x1f0)](_0x228b12[_0x5d909a(0x210)]['length'],0x0)){const _0x2efdb3=_0x228b12[_0x5d909a(0x210)][_0x5d909a(0x206)](_0x13396b=>{const _0x6c34c8=_0x5d909a,_0x16fd1a=new Date(_0x13396b['createdAt'])[_0x6c34c8(0x209)]('en-US',{'month':'short','day':'numeric'}),_0x494b3d=_0x13396b[_0x6c34c8(0x1d4)]||_0x13396b[_0x6c34c8(0x205)]||'Reviewer',_0x125c9e=_0x13396b['domRef']?_0x6c34c8(0x1f9)+(_0x13396b['domRef'][_0x6c34c8(0x1d2)][_0x6c34c8(0x1df)](_0x6c34c8(0x1b7))[_0x6c34c8(0x20e)]()?.[_0x6c34c8(0x1df)](':')[0x0]||_0x6c34c8(0x1de))+_0x6c34c8(0x1d5)+(_0x13396b['domRef']['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return _0x6c34c8(0x1cc)+_0x13396b['id']+']\x20'+_0x494b3d+'\x20('+_0x16fd1a+_0x6c34c8(0x1d0)+_0x13396b[_0x6c34c8(0x1e3)]+'\x22'+_0x125c9e;})['join']('\x0a');_0x567171='\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'+_0x2efdb3;}const _0x3bd122=_0x228b12?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x228b12['canonicalFlow']:'';return''+_0x358fab['description']+_0x11766f+_0x567171+_0x3bd122;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x29146b){const _0x5554e8=_0x3c53,_0x4f1454={'FAOBo':'key_99_final-state.png','mNGDA':function(_0x2e7053,_0x4c073d){return _0x2e7053(_0x4c073d);},'YtPtr':function(_0x1b5574,_0x1196a1){return _0x1b5574(_0x1196a1);},'FVPYD':function(_0x5bfc8b,_0x20d8b2){return _0x5bfc8b(_0x20d8b2);}},{checklistItem:_0x1d681a,itemFeedback:_0x3befe0,taskDescription:_0x4d2266,commandPrefix:_0x480987,isCdpMode:_0x3a372,url:_0xae514a,cdpEndpoint:_0x27eda1,loginInstructions:_0x325766}=_0x29146b,_0x1fc3fe=_0x5554e8(0x1d1),_0x40093f=_0x4f1454[_0x5554e8(0x1dd)],_0x6b276f=_0x3a372?_0x480987+'\x20inspect\x20--screenshot-path\x20'+_0x4f1454[_0x5554e8(0x204)](quoteShellArg,_0x1fc3fe):_0x480987+'\x20open-and-inspect\x20'+quoteShellArg(_0xae514a??_0x5554e8(0x1be))+_0x5554e8(0x214)+_0x4f1454['mNGDA'](quoteShellArg,_0x1fc3fe),_0x2c0667=_0x3a372?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20'+_0x27eda1+'.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0xae514a+_0x5554e8(0x1f1),_0x43aa47=_0x325766?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x325766+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return _0x5554e8(0x1bc)+_0x4f1454['YtPtr'](renderScenarioSections,{'checklistItem':_0x1d681a,'itemFeedback':_0x3befe0})+_0x5554e8(0x1ca)+_0x4d2266+'\x0a\x0a'+_0x2c0667+_0x43aa47+'\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x480987+_0x5554e8(0x1e0)+_0x6b276f+_0x5554e8(0x1c6)+_0x480987+_0x5554e8(0x1b6)+_0x4f1454[_0x5554e8(0x1d6)](quoteShellArg,_0x40093f)+'\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(_0x285640){const _0x44941e=_0x3c53,_0x3a3d3c={'SUVZO':_0x44941e(0x1ce)},_0x56f973=_0x3a3d3c['SUVZO'],_0x284fcf=_0x44941e(0x1c1);return _0x44941e(0x1c5)+_0x285640['commandPrefix']+_0x44941e(0x1fb)+_0x285640['commandPrefix']+'\x20open-and-inspect\x20'+quoteShellArg(_0x285640[_0x44941e(0x1ed)])+'\x20--screenshot-path\x20'+quoteShellArg(_0x56f973)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0x285640['commandPrefix']+_0x44941e(0x20b)+quoteShellArg(_0x284fcf)+'`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}function _0x3c53(_0x404d7b,_0x3ae62f){_0x404d7b=_0x404d7b-0x1b6;const _0x23edec=_0x23ed();let _0x3c5355=_0x23edec[_0x404d7b];return _0x3c5355;}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x218ac9){const _0x35bb33=_0x3c53,_0x4eb57a={'XNdOm':function(_0x35fb7a,_0x44cb1f){return _0x35fb7a===_0x44cb1f;}},_0x4c8ec0=[..._0x218ac9['keys']()]['sort']();let _0x526190=0x0;for(const _0xff2bb4 of _0x218ac9[_0x35bb33(0x1e6)]()){_0x526190+=_0xff2bb4;}return{'cliCommandCount':_0x526190,'cliCommandsSeen':_0x4c8ec0,'noCliCommandsCalled':_0x4eb57a['XNdOm'](_0x526190,0x0)};}export function createVerifyFeatureRangerwrightCliHooks(_0x3c1992){const _0x16307d=_0x3c53,_0x443e96={'HIndv':function(_0x5aace2,_0x1bc76c){return _0x5aace2!==_0x1bc76c;},'FHjKN':function(_0x33ec22,_0x3b05d8){return _0x33ec22(_0x3b05d8);},'tqUwa':'PostToolUseFailure','wEvBh':'Bash','UyODv':_0x16307d(0x1fe)},_0x27233f=new Map(),_0x14c008=async _0x460628=>{const _0x563768=_0x16307d;if(_0x443e96['HIndv'](_0x460628[_0x563768(0x1dc)],_0x563768(0x1f2)))return{};const _0x3b6d4d=_0x460628;if(_0x3b6d4d[_0x563768(0x1fc)]!=='Bash')return{};const _0x2bbd12=_0x3b6d4d[_0x563768(0x1ee)],_0x16c1bb=_0x443e96[_0x563768(0x1f8)](extractBashCommand,_0x2bbd12);if(!_0x16c1bb)return{};const _0x2e41e9=_0x443e96[_0x563768(0x1f8)](parseRangerwrightCliCommand,_0x16c1bb);if(!_0x2e41e9)return{};return _0x27233f[_0x563768(0x1fa)](_0x2e41e9,(_0x27233f[_0x563768(0x1f6)](_0x2e41e9)||0x0)+0x1),_0x3c1992[_0x563768(0x1ec)]('rangerwright_cli_command',{'subcommand':_0x2e41e9}),_0x3c1992[_0x563768(0x1e1)](_0x563768(0x201),{'subcommand':_0x2e41e9,'commandPreview':truncatePreview(_0x16c1bb)}),console['log'](_0x563768(0x1da)+formatRangerwrightCliLog(_0x16c1bb,_0x2e41e9)),{};},_0x4ba72e=async _0x42bc16=>{const _0x54143e=_0x16307d;if(_0x443e96['HIndv'](_0x42bc16['hook_event_name'],_0x443e96['tqUwa']))return{};const _0x283c1c=_0x42bc16;if(_0x443e96['HIndv'](_0x283c1c['tool_name'],_0x443e96[_0x54143e(0x207)]))return{};return await _0x3c1992[_0x54143e(0x1c8)](_0x443e96['UyODv'],_0x283c1c[_0x54143e(0x215)],{'transport':'rangerwright-cli','toolName':_0x443e96[_0x54143e(0x207)]}),{};};return{'postToolUseHook':_0x14c008,'postToolUseFailureHook':_0x4ba72e,'commandCounts':_0x27233f};}async function runRangerwrightLifecycleCommand(_0x1b9824){const _0x285dc0=_0x3c53,_0x46b8ed={'asPCV':function(_0x5a7ae1,_0x2b4bf,_0x169047){return _0x5a7ae1(_0x2b4bf,_0x169047);}},{options:_0xe420ab,commandArgs:_0x2ced93,env:_0x46c5c0,telemetry:_0x332b2e,phase:_0x2aa453,metadata:_0x26736c,timeoutMs:_0x12837f}=_0x1b9824;_0x332b2e['trackPhaseStart'](_0x2aa453,_0x26736c);try{const _0x267257=await runRangerwrightCliCommand({..._0xe420ab,'commandArgs':_0x2ced93,'cwd':process[_0x285dc0(0x1bf)](),'env':_0x46c5c0,'timeoutMs':_0x12837f??RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x332b2e[_0x285dc0(0x1e1)](_0x2aa453,{..._0x26736c,'subcommand':_0x267257[_0x285dc0(0x20d)]['subcommand'],'stdoutPreview':_0x46b8ed[_0x285dc0(0x1d8)](truncatePreview,_0x267257['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x267257['stderr'],0x7d0)});}catch(_0x468d5f){await _0x332b2e[_0x285dc0(0x1c8)](_0x2aa453,_0x468d5f,_0x26736c);throw _0x468d5f;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x12522e){const _0x1806da=_0x3c53,_0x2095a1={'BlmGi':_0x1806da(0x208),'ZyzZe':_0x1806da(0x1e9),'MNZCL':_0x1806da(0x1cb)},{telemetry:_0x5036c4,rangerwrightOptions:_0x2ec788,env:_0x2422af,transportMetadata:_0x301b2a}=_0x12522e,_0x36f500=[{'phase':_0x1806da(0x1c0),'commandArgs':[_0x1806da(0x1d9)]},{'phase':'rangerwright_cli_video_stop','commandArgs':[_0x2095a1['BlmGi']]},{'phase':_0x2095a1['ZyzZe'],'commandArgs':[_0x2095a1[_0x1806da(0x1f4)]]}];for(const _0x2c72b5 of _0x36f500){try{await runRangerwrightLifecycleCommand({'options':_0x2ec788,'commandArgs':[..._0x2c72b5['commandArgs']],'env':_0x2422af,'telemetry':_0x5036c4,'phase':_0x2c72b5['phase'],'metadata':_0x301b2a});}catch{}}}
|