@ranger-testing/ranger-cli 3.1.5-alpha.9b89f77-48 → 3.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/scenarioOriginCheck.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +5 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x5594ce,_0x22e373){const _0x55b29f=_0x3278,_0x3cb6c6=_0x5594ce();while(!![]){try{const _0x415270=-parseInt(_0x55b29f(0xf3))/0x1+-parseInt(_0x55b29f(0x7f))/0x2+-parseInt(_0x55b29f(0xb0))/0x3+-parseInt(_0x55b29f(0xed))/0x4*(parseInt(_0x55b29f(0x6c))/0x5)+-parseInt(_0x55b29f(0xd4))/0x6+-parseInt(_0x55b29f(0x8d))/0x7*(parseInt(_0x55b29f(0x87))/0x8)+parseInt(_0x55b29f(0xd6))/0x9;if(_0x415270===_0x22e373)break;else _0x3cb6c6['push'](_0x3cb6c6['shift']());}catch(_0x57e725){_0x3cb6c6['push'](_0x3cb6c6['shift']());}}}(_0x5766,0x2dda3));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function truncatePreview(_0x48515f,_0x75cbd4=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0xdc0eb0=_0x3278,_0x98b994={'HixKR':function(_0xf9f7d4,_0x2afcc1){return _0xf9f7d4+_0x2afcc1;}};return _0x48515f[_0xdc0eb0(0xaa)]>_0x75cbd4?_0x98b994['HixKR'](_0x48515f[_0xdc0eb0(0xd5)](0x0,_0x75cbd4),'...'):_0x48515f;}function buildCliArtifactPath(_0x9db5e1,_0x375b8f){const _0x2dbc37=_0x3278,_0x24dcd0={'AXwet':function(_0x172c77,_0x194441,_0x52682){return _0x172c77(_0x194441,_0x52682);}};return _0x24dcd0[_0x2dbc37(0x97)](join,_0x9db5e1,_0x375b8f);}function toStepDisplayName(_0x9b7593){const _0x17d2a4=_0x3278,_0x39544d=basename(_0x9b7593)[_0x17d2a4(0x73)](/\.(?:png|ya?ml)$/i,'')[_0x17d2a4(0x73)](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x39544d,'isKeyStep':/^key_/i['test'](basename(_0x9b7593))};}function extractShellValue(_0x5ef209){if(!_0x5ef209)return null;return _0x5ef209[0x1]??_0x5ef209[0x2]??_0x5ef209[0x3]??null;}function extractFilenameOption(_0xa8ce7b){const _0x187a0c=_0x3278;return extractShellValue(_0xa8ce7b[_0x187a0c(0xe4)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x1642ec,_0x43cb27){const _0x3c6d99=_0x3278,_0x29eb75={'SjVQj':function(_0xa9da4d,_0x1c95a2){return _0xa9da4d(_0x1c95a2);}},_0x4de613=_0x43cb27[_0x3c6d99(0x73)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return _0x29eb75[_0x3c6d99(0x80)](extractShellValue,_0x1642ec['match'](new RegExp('(?:^|\x5cs)'+_0x4de613+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function _0x3278(_0x147502,_0x472e39){_0x147502=_0x147502-0x6c;const _0x576666=_0x5766();let _0x327840=_0x576666[_0x147502];return _0x327840;}function _0x5766(){const _0x5730d9=['ysGLk','\x22,\x20\x22','key_03_success-state.png','pop','\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.','open\x20browser','tool_failure','notes','\x20tracing-start`,\x20then\x20`','02_button-clicked.png','trace.trace.zip','1667358BaMvZy','slice','17529948WdwQdi','press\x20','session-recording.webm','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','capture\x20snapshot\x20`','click','\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.','click\x20','unaddressedComments','stringify','[playwright-cli]\x20','trackPhaseStart','stop\x20video\x20recording','>\x20\x22','match','RrIsz','mtimeMs','fill\x20','press','sort','key_04_success-state.png','capture\x20screenshot','hXNzE','1200932LOVLKd','capture\x20step\x20`','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','--filename=','mhtQQ','join','336112AXZXWX','`\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`','mVDSa','\x20snapshot\x20--filename\x20','5usSaah','qXHJP','tool_call','check','log','tracing-start','fsBSs','replace','\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','bcxTV','short','`\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','\x20open`,\x20then\x20`','UZWwe','name','description','\x20screenshot\x20--filename\x20','numeric','gnUsX','313992XnaUvx','SjVQj','isFile','screenshot','tab-new','set','wNPWf','xmsZD','544GtzhIZ','snapshot','baBXW','**\x20(','video-start','error','33817bidlge','push','RyXbO','\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.','ZkjJn','stdout','\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','select\x20tab\x20','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','open\x20','AXwet','Bash','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','tool_name','gYRRS','get','nOZOn','\x20tracing-start`\x0a3.\x20Run\x20`','cwd','map','trim','domRef','trackPhaseEnd','values','playwright-cli','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','02_learn-more.yml','run-code','rQCdd','length','\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`','nJTXt','playwright_cli_video_stop','content','1080657oxKZDW','trackPhaseError','MXcWz','tab-select','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','xUwON','string','JirWR','\x0a\x0a1.\x20Run\x20`','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','select\x20tab','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','`\x0a-\x20`snapshot\x20--filename\x20','01_initial.yml','-\x20[','subcommand','en-US','03_learn-more.png','`:\x20\x22','pEUoL','VrshY','phase','03_result-visible.png','KfAwk','GNizQ'];_0x5766=function(){return _0x5730d9;};return _0x5766();}function formatCommandTarget(_0x34fc0e){const _0xb93be=_0x3278,_0x339f1d={'MQmzR':function(_0x12e8bd,_0x4d0046,_0x5d52f2){return _0x12e8bd(_0x4d0046,_0x5d52f2);}};if(!_0x34fc0e)return'target';if(/^e\d+$/i['test'](_0x34fc0e))return'ref\x20'+_0x34fc0e;return JSON[_0xb93be(0xdf)](_0x339f1d['MQmzR'](truncatePreview,_0x34fc0e,0x78));}function formatPlaywrightCliLog(_0x4c004a,_0x31f123){const _0x451060=_0x3278,_0x4b834b={'xmsZD':'open','HAdZc':_0x451060(0xce),'LAZvP':_0x451060(0x71),'BlEJa':'start\x20tracing','QPwkw':'stop\x20tracing','RdjLi':'start\x20video\x20recording','ajnSS':'video-stop','bvpop':'snapshot','bcxTV':'capture\x20snapshot','qXHJP':function(_0x5b361c,_0x397a35){return _0x5b361c(_0x397a35);},'fPXyb':_0x451060(0xeb),'rQCdd':_0x451060(0xdb),'ysGLk':function(_0xc5a4eb,_0x25be94){return _0xc5a4eb(_0x25be94);},'nOZOn':function(_0x2f4ad3,_0xde64b8,_0x5cb1ec){return _0x2f4ad3(_0xde64b8,_0x5cb1ec);},'UZWwe':_0x451060(0x6f),'knzgK':function(_0xd8d710,_0x2757ca){return _0xd8d710(_0x2757ca);},'gYRRS':_0x451060(0xe8),'LwHCd':_0x451060(0xb3),'nswfA':function(_0x48e8c2,_0xc96e5c,_0x50c11){return _0x48e8c2(_0xc96e5c,_0x50c11);},'CiMSe':_0x451060(0xba)};switch(_0x31f123){case _0x4b834b[_0x451060(0x86)]:{const _0x50fbb3=extractFirstCommandArgument(_0x4c004a,_0x31f123);return _0x50fbb3?_0x451060(0x96)+_0x50fbb3:_0x4b834b['HAdZc'];}case _0x4b834b['LAZvP']:return _0x4b834b['BlEJa'];case'tracing-stop':return _0x4b834b['QPwkw'];case _0x451060(0x8b):return _0x4b834b['RdjLi'];case _0x4b834b['ajnSS']:return _0x451060(0xe2);case _0x4b834b['bvpop']:{const _0x4d3c48=extractFilenameOption(_0x4c004a);if(!_0x4d3c48)return _0x4b834b[_0x451060(0x75)];const {name:_0x4d9ba1}=_0x4b834b[_0x451060(0x6d)](toStepDisplayName,_0x4d3c48);return _0x451060(0xda)+_0x4d9ba1+'`';}case _0x451060(0x82):{const _0x23f7f3=extractFilenameOption(_0x4c004a);if(!_0x23f7f3)return _0x4b834b['fPXyb'];const {name:_0x28aebd,isKeyStep:_0x10cfe1}=toStepDisplayName(_0x23f7f3);return _0x10cfe1?'capture\x20key\x20step\x20`'+_0x28aebd+'`':_0x451060(0xee)+_0x28aebd+'`';}case _0x4b834b[_0x451060(0xa9)]:return _0x451060(0xdd)+_0x4b834b[_0x451060(0xc9)](formatCommandTarget,_0x4b834b[_0x451060(0x9d)](extractFirstCommandArgument,_0x4c004a,_0x31f123));case _0x4b834b[_0x451060(0x79)]:return'check\x20'+_0x4b834b['ysGLk'](formatCommandTarget,_0x4b834b[_0x451060(0x9d)](extractFirstCommandArgument,_0x4c004a,_0x31f123));case'fill':return _0x451060(0xe7)+_0x4b834b['knzgK'](formatCommandTarget,extractFirstCommandArgument(_0x4c004a,_0x31f123));case _0x4b834b[_0x451060(0x9b)]:return _0x451060(0xd7)+formatCommandTarget(extractFirstCommandArgument(_0x4c004a,_0x31f123));case _0x451060(0xa8):return'run\x20custom\x20Playwright\x20code';case _0x451060(0x83):{const _0x31fa0d=_0x4b834b['nOZOn'](extractFirstCommandArgument,_0x4c004a,_0x31f123);return _0x31fa0d?'open\x20new\x20tab\x20'+_0x31fa0d:'open\x20new\x20tab';}case _0x4b834b['LwHCd']:{const _0x2c9eae=_0x4b834b['nswfA'](extractFirstCommandArgument,_0x4c004a,_0x31f123);return _0x2c9eae?_0x451060(0x94)+_0x2c9eae:_0x4b834b['CiMSe'];}default:return _0x31f123;}}function extractPlaywrightCliToolDescription(_0x2da754){const _0xce4981=_0x3278,_0x20a114={'USQMD':_0xce4981(0xb6),'bfhsx':function(_0x509907,_0x1e2fa0){return _0x509907>_0x1e2fa0;}},_0x591db6=_0x2da754[_0xce4981(0x7b)];if(typeof _0x591db6!==_0x20a114['USQMD'])return null;const _0x106537=_0x591db6[_0xce4981(0xa1)]()[_0xce4981(0x73)](/\s+/g,'\x20');return _0x20a114['bfhsx'](_0x106537['length'],0x0)?_0x106537:null;}export function formatPlaywrightCliConsoleLogMessage(_0x47458e,_0xf1cd9a,_0x5532d5){const _0x31aa71=_0x3278,_0x54f2db=formatPlaywrightCliLog(_0xf1cd9a,_0x5532d5),_0x323ea8=extractPlaywrightCliToolDescription(_0x47458e);if(!_0x323ea8)return _0x31aa71(0xe0)+_0x54f2db;if(process['env']['DEBUG'])return'[ranger-verification-agent]\x20'+_0x323ea8+'\x20('+_0x54f2db+')';return'[ranger-verification-agent]\x20'+_0x323ea8;}export function buildVerifyFeatureCliDebugPrompt(_0x5278c9,_0x11e000){const _0x5c517c=_0x3278,_0x372e9a={'pEUoL':function(_0x56407c,_0x3f3068,_0xd3a7ef){return _0x56407c(_0x3f3068,_0xd3a7ef);},'KfAwk':'00_mozilla-homepage.yml','JirWR':'01_mozilla-homepage.png','mhtQQ':function(_0xb96597,_0x1c458c,_0x571f3a){return _0xb96597(_0x1c458c,_0x571f3a);},'ZXhmp':_0x5c517c(0xc1),'ICdhX':function(_0x518ec4,_0x14055c){return _0x518ec4(_0x14055c);},'fOTYN':function(_0x1347cc,_0x39a351){return _0x1347cc(_0x39a351);}},_0x465cca=_0x372e9a[_0x5c517c(0xc3)](buildCliArtifactPath,_0x11e000,_0x372e9a[_0x5c517c(0xc7)]),_0x2d3203=buildCliArtifactPath(_0x11e000,_0x372e9a[_0x5c517c(0xb7)]),_0x4e1f7b=_0x372e9a['pEUoL'](buildCliArtifactPath,_0x11e000,_0x5c517c(0xa7)),_0x3371a6=_0x372e9a[_0x5c517c(0xf1)](buildCliArtifactPath,_0x11e000,_0x372e9a['ZXhmp']),_0x58a9b1=quoteShellArg(_0x465cca),_0x1291a4=_0x372e9a['ICdhX'](quoteShellArg,_0x2d3203),_0x4492be=quoteShellArg(_0x4e1f7b),_0x5a768c=_0x372e9a['fOTYN'](quoteShellArg,_0x3371a6);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x5278c9+_0x5c517c(0xb8)+_0x5278c9+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x5278c9+_0x5c517c(0x9e)+_0x5278c9+_0x5c517c(0xa6)+_0x11e000+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x5278c9+'\x20snapshot\x20--filename\x20'+_0x58a9b1+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x5278c9+_0x5c517c(0x7c)+_0x1291a4+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x5278c9+'\x20snapshot\x20--filename\x20'+_0x4492be+'`\x0a9.\x20Run\x20`'+_0x5278c9+'\x20screenshot\x20--filename\x20'+_0x5a768c+_0x5c517c(0xef);}export function buildVerifyFeatureCliPrompt(_0x518cfb){const _0x1053f6=_0x3278,_0x47cab2={'RyXbO':_0x1053f6(0xc0),'JYKxk':_0x1053f6(0x7d),'kHtHV':'Reviewer','caQlR':function(_0x39f09f,_0x3b8cc0,_0xe4d8cc){return _0x39f09f(_0x3b8cc0,_0xe4d8cc);},'XjagB':function(_0x59bf81,_0x4b9135,_0x3da751){return _0x59bf81(_0x4b9135,_0x3da751);},'ZkjJn':function(_0x3865e0,_0x275c83){return _0x3865e0(_0x275c83);},'AqgZl':function(_0x32320f,_0x5c325a){return _0x32320f(_0x5c325a);},'KExzC':function(_0x19080d,_0x2e9032,_0x2c0b5f){return _0x19080d(_0x2e9032,_0x2c0b5f);},'wkjGc':_0x1053f6(0xea)},{checklistItem:_0x2cf038,itemFeedback:_0x5e80df,taskDescription:_0x13a118,cliCommandPrefix:_0x7cc549,cliArtifactDir:_0x47e5a6,isCdpMode:_0x131738,url:_0x648ded,cdpEndpoint:_0x54cd3d,loginInstructions:_0x4eeb00}=_0x518cfb,_0x123fc7=_0x47cab2['caQlR'](buildCliArtifactPath,_0x47e5a6,_0x1053f6(0xbd)),_0x132ba8=buildCliArtifactPath(_0x47e5a6,'02_state.yml'),_0x5f5afb=_0x47cab2['XjagB'](buildCliArtifactPath,_0x47e5a6,_0x1053f6(0xcb)),_0x165a40=buildCliArtifactPath(_0x47e5a6,'01_initial-state.png'),_0x3312d3=_0x47cab2['ZkjJn'](quoteShellArg,_0x123fc7),_0x2184ce=quoteShellArg(_0x132ba8),_0x57c982=_0x47cab2[_0x1053f6(0x91)](quoteShellArg,_0x5f5afb),_0x15c06d=_0x47cab2['AqgZl'](quoteShellArg,_0x165a40),_0x128b60=_0x2cf038['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x2cf038[_0x1053f6(0xd0)]:'';let _0x475b31='';if(_0x5e80df&&_0x5e80df[_0x1053f6(0xde)]['length']>0x0){const _0x1bf52c=_0x5e80df['unaddressedComments'][_0x1053f6(0xa0)](_0x4a8ab7=>{const _0x3bec32=_0x1053f6,_0x105482=new Date(_0x4a8ab7['createdAt'])['toLocaleDateString'](_0x47cab2[_0x3bec32(0x8f)],{'month':_0x3bec32(0x76),'day':_0x47cab2['JYKxk']}),_0x4b857a=_0x4a8ab7['authorName']||_0x4a8ab7['authorEmail']||_0x47cab2['kHtHV'],_0x5302e3=_0x4a8ab7[_0x3bec32(0xa2)]?'\x20(on\x20element:\x20<'+(_0x4a8ab7['domRef']['selector']['split']('\x20>\x20')[_0x3bec32(0xcc)]()?.['split'](':')[0x0]||'element')+_0x3bec32(0xe3)+(_0x4a8ab7['domRef']['textContent']||'')[_0x3bec32(0xd5)](0x0,0x32)+'\x22)':'';return _0x3bec32(0xbe)+_0x4a8ab7['id']+']\x20**'+_0x4b857a+_0x3bec32(0x8a)+_0x105482+'):\x20\x22'+_0x4a8ab7[_0x3bec32(0xaf)]+'\x22'+_0x5302e3;})[_0x1053f6(0xf2)]('\x0a');_0x475b31='\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'+_0x1bf52c;}const _0x3cc43a=_0x5e80df?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x5e80df['canonicalFlow']:'',_0x247e11=_0x131738?_0x1053f6(0xd9)+_0x54cd3d+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x648ded+'\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',_0x45fc30=_0x648ded?quoteShellArg(_0x648ded):'',_0x11f7cd=_0x131738?_0x1053f6(0xac)+_0x7cc549+_0x1053f6(0x78)+_0x7cc549+_0x1053f6(0xd1)+_0x7cc549+_0x1053f6(0xb4)+_0x47e5a6+_0x1053f6(0xb9)+_0x7cc549+_0x1053f6(0xf6)+_0x3312d3+'`\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`'+_0x7cc549+_0x1053f6(0x7c)+_0x15c06d+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x7cc549+_0x1053f6(0xab):_0x1053f6(0xac)+_0x7cc549+'\x20open\x20'+_0x45fc30+'`,\x20then\x20`'+_0x7cc549+'\x20tracing-start`,\x20then\x20`'+_0x7cc549+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x47e5a6+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x7cc549+_0x1053f6(0xf6)+_0x3312d3+_0x1053f6(0xf4)+_0x7cc549+'\x20screenshot\x20--filename\x20'+_0x15c06d+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x7cc549+_0x1053f6(0x74),_0xcb4be7=_0x131738?_0x1053f6(0xdc):_0x1053f6(0x90),_0x2d010b=_0x4eeb00?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x4eeb00+_0x1053f6(0xcd):'';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'+_0x2cf038[_0x1053f6(0x7b)]+_0x128b60+_0x475b31+_0x3cc43a+_0x1053f6(0xbb)+_0x13a118+'\x0a\x0a'+_0x247e11+_0x2d010b+'\x0a\x0a'+_0x11f7cd+_0x1053f6(0x95)+_0x7cc549+_0x1053f6(0x99)+_0x47e5a6+_0x1053f6(0xbc)+_0x2184ce+_0x1053f6(0x77)+_0x57c982+'`\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`'+_0x47e5a6+_0x1053f6(0xc2)+_0x165a40+'\x22,\x20\x22'+_0x47cab2['KExzC'](buildCliArtifactPath,_0x47e5a6,_0x1053f6(0xd2))+_0x1053f6(0xca)+_0x47cab2['KExzC'](buildCliArtifactPath,_0x47e5a6,_0x1053f6(0xc6))+_0x1053f6(0x93)+buildCliArtifactPath(_0x47e5a6,_0x47cab2['wkjGc'])+'\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'+_0xcb4be7+'\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(_0x53d2d3){const _0x4987f2=_0x3278,_0xcecaef={'wySPr':function(_0x31c036,_0x466a09){return _0x31c036===_0x466a09;}},_0x44e862=[..._0x53d2d3['keys']()][_0x4987f2(0xe9)]();let _0x21b841=0x0;for(const _0x119506 of _0x53d2d3[_0x4987f2(0xa4)]()){_0x21b841+=_0x119506;}return{'cliCommandCount':_0x21b841,'cliCommandsSeen':_0x44e862,'noCliCommandsCalled':_0xcecaef['wySPr'](_0x21b841,0x0)};}export function createVerifyFeatureCliHooks(_0x5c9228){const _0x8db406=_0x3278,_0x2a71e8={'wNPWf':function(_0x2f1f02,_0x9f6ca4){return _0x2f1f02!==_0x9f6ca4;},'VrshY':'PostToolUse','nJTXt':function(_0x5f15b1,_0x3eb26f){return _0x5f15b1(_0x3eb26f);},'baBXW':function(_0x413afd,_0x27cfb5){return _0x413afd+_0x27cfb5;},'aGgdS':'tool_call','LPDZd':_0x8db406(0x88),'vAkVX':function(_0x34a185,_0x35088f,_0x571d26,_0x21b720){return _0x34a185(_0x35088f,_0x571d26,_0x21b720);},'xUwON':'PostToolUseFailure','gnUsX':_0x8db406(0x98)},_0x57990c=new Map(),_0x1cfad9=async _0x47916b=>{const _0x3d5672=_0x8db406;if(_0x2a71e8[_0x3d5672(0x85)](_0x47916b['hook_event_name'],_0x2a71e8[_0x3d5672(0xc4)]))return{};const _0x28c3b2=_0x47916b;if(_0x28c3b2[_0x3d5672(0x9a)]!=='Bash')return{};const _0x432612=_0x28c3b2['tool_input'],_0x4a0557=_0x2a71e8['nJTXt'](extractBashCommand,_0x432612);if(!_0x4a0557)return{};const _0x53ec1d=parsePlaywrightCliCommand(_0x4a0557);if(!_0x53ec1d)return{};return _0x57990c[_0x3d5672(0x84)](_0x53ec1d,_0x2a71e8[_0x3d5672(0x89)](_0x57990c[_0x3d5672(0x9c)](_0x53ec1d)||0x0,0x1)),_0x5c9228['trackPhaseStart'](_0x3d5672(0x6e),{'transport':_0x3d5672(0xa5),'toolName':_0x53ec1d}),_0x5c9228['trackPhaseEnd'](_0x2a71e8['aGgdS'],{'transport':'playwright-cli','toolName':_0x53ec1d,'bashCommandPreview':_0x2a71e8[_0x3d5672(0xad)](truncatePreview,_0x4a0557)}),_0x53ec1d!==_0x2a71e8['LPDZd']&&console[_0x3d5672(0x70)](_0x2a71e8['vAkVX'](formatPlaywrightCliConsoleLogMessage,_0x432612,_0x4a0557,_0x53ec1d)),{};},_0x4b46f8=async _0x2873a3=>{const _0x144e16=_0x8db406;if(_0x2873a3['hook_event_name']!==_0x2a71e8[_0x144e16(0xb5)])return{};const _0x2b4a6a=_0x2873a3;if(_0x2a71e8['wNPWf'](_0x2b4a6a['tool_name'],_0x2a71e8[_0x144e16(0x7e)]))return{};return await _0x5c9228[_0x144e16(0xb1)](_0x144e16(0xcf),_0x2b4a6a[_0x144e16(0x8c)],{'transport':_0x144e16(0xa5),'toolName':_0x2a71e8['gnUsX']}),{};};return{'postToolUseHook':_0x1cfad9,'postToolUseFailureHook':_0x4b46f8,'commandCounts':_0x57990c};}async function runPlaywrightCliLifecycleCommand(_0x7e89ff){const _0x3ba7df=_0x3278,_0x1ad9a0={'GNizQ':function(_0x3a0b0f,_0x4c24f3,_0xa17bbe){return _0x3a0b0f(_0x4c24f3,_0xa17bbe);}},{sessionId:_0x2dfbbe,configPath:_0x500a8f,commandArgs:_0x4c1ca4,env:_0x367f35,telemetry:_0x144a9a,phase:_0x22c09a,metadata:_0x4d53d4,timeoutMs:_0x566bde}=_0x7e89ff;_0x144a9a[_0x3ba7df(0xe1)](_0x22c09a,_0x4d53d4);try{const _0x35dc38=await runPlaywrightCliCommand({'sessionId':_0x2dfbbe,'configPath':_0x500a8f,'commandArgs':_0x4c1ca4,'cwd':process[_0x3ba7df(0x9f)](),'env':_0x367f35,'timeoutMs':_0x566bde??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x144a9a[_0x3ba7df(0xa3)](_0x22c09a,{..._0x4d53d4,'subcommand':_0x35dc38['invocation'][_0x3ba7df(0xbf)],'stdoutPreview':truncatePreview(_0x35dc38[_0x3ba7df(0x92)],0x7d0),'stderrPreview':_0x1ad9a0[_0x3ba7df(0xc8)](truncatePreview,_0x35dc38['stderr'],0x7d0)});}catch(_0x2d3a13){await _0x144a9a[_0x3ba7df(0xb1)](_0x22c09a,_0x2d3a13,_0x4d53d4);throw _0x2d3a13;}}export async function finalizeVerifyFeatureCliSession(_0x343251){const _0x387cba=_0x3278,_0x185cac={'RrIsz':'tracing-stop','QFCcu':'video-stop','mVDSa':'playwright_cli_close','AUtfD':'close','hXNzE':function(_0x1b91ba,_0x190582){return _0x1b91ba(_0x190582);}},{telemetry:_0x49efa1,sessionId:_0xcd40dc,configPath:_0x1f056f,cliArtifactDir:_0x552b8a,env:_0x45d1c3,transportMetadata:_0x3f21f7}=_0x343251,_0x55fb0b=[{'phase':'playwright_cli_tracing_stop','commandArgs':[_0x185cac[_0x387cba(0xe5)]]},{'phase':_0x387cba(0xae),'commandArgs':[_0x185cac['QFCcu'],_0x387cba(0xf0)+buildCliArtifactPath(_0x552b8a,_0x387cba(0xd8))]},{'phase':_0x185cac[_0x387cba(0xf5)],'commandArgs':[_0x185cac['AUtfD']]}];for(const _0x50202d of _0x55fb0b){try{await _0x185cac[_0x387cba(0xec)](runPlaywrightCliLifecycleCommand,{'sessionId':_0xcd40dc,'configPath':_0x1f056f,'commandArgs':[..._0x50202d['commandArgs']],'env':_0x45d1c3,'telemetry':_0x49efa1,'phase':_0x50202d[_0x387cba(0xc5)],'metadata':_0x3f21f7});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x4feef0){const _0x251793=_0x3278,_0x4da2d0={'YLsRs':'trace.zip','hUwFi':_0x251793(0xd3),'fsBSs':function(_0x539a28,_0x85c95d,_0x4b0e15){return _0x539a28(_0x85c95d,_0x4b0e15);},'qOGsf':function(_0xddd612,_0x48b41a){return _0xddd612(_0x48b41a);}},_0x1088ae=[_0x4da2d0['YLsRs'],_0x4da2d0['hUwFi']];for(const _0x4fc8f0 of _0x1088ae){const _0x445196=_0x4da2d0[_0x251793(0x72)](join,_0x4feef0,_0x4fc8f0);try{return{'buffer':await _0x4da2d0['qOGsf'](readFile,_0x445196),'source':_0x445196};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x237d41){const _0x1241ae=_0x3278,_0x672fdc={'hjwYJ':function(_0x80b038,_0xaa95d2){return _0x80b038(_0xaa95d2);},'wPLTe':function(_0x1e50eb,_0x624442){return _0x1e50eb===_0x624442;},'MXcWz':function(_0x19411f,_0x3092d2,_0x53bdf2){return _0x19411f(_0x3092d2,_0x53bdf2);}},{cwd:_0x1fb48f,cliArtifactDir:_0x43efc8,startTime:_0x294434}=_0x237d41,_0x33a5bc=[];await mkdir(_0x43efc8,{'recursive':!![]});const _0x468ad4=await readdir(_0x1fb48f,{'withFileTypes':!![]});for(const _0x21b00b of _0x468ad4){if(!_0x21b00b[_0x1241ae(0x81)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x21b00b['name']))continue;const _0x4277a5=join(_0x1fb48f,_0x21b00b['name']),_0x249913=await _0x672fdc['hjwYJ'](stat,_0x4277a5);if(_0x249913[_0x1241ae(0xe6)]+0x7d0<_0x294434)continue;const _0x36bbb3=buildCliArtifactPath(_0x43efc8,_0x21b00b['name']);if(_0x672fdc['wPLTe'](_0x4277a5,_0x36bbb3))continue;await _0x672fdc[_0x1241ae(0xb2)](rename,_0x4277a5,_0x36bbb3),_0x33a5bc[_0x1241ae(0x8e)](_0x21b00b[_0x1241ae(0x7a)]);}return _0x33a5bc[_0x1241ae(0xe9)]();}
|
|
1
|
+
(function(_0x2b6526,_0x1e11f2){const _0x29a8d4=_0x260d,_0x4d7801=_0x2b6526();while(!![]){try{const _0x392aac=-parseInt(_0x29a8d4(0xb2))/0x1+-parseInt(_0x29a8d4(0x9f))/0x2*(-parseInt(_0x29a8d4(0xd9))/0x3)+parseInt(_0x29a8d4(0xe3))/0x4*(parseInt(_0x29a8d4(0xac))/0x5)+parseInt(_0x29a8d4(0xaf))/0x6*(parseInt(_0x29a8d4(0xc5))/0x7)+parseInt(_0x29a8d4(0xf6))/0x8+-parseInt(_0x29a8d4(0x10b))/0x9+parseInt(_0x29a8d4(0xe6))/0xa;if(_0x392aac===_0x1e11f2)break;else _0x4d7801['push'](_0x4d7801['shift']());}catch(_0x2e367e){_0x4d7801['push'](_0x4d7801['shift']());}}}(_0x44a8,0x6cfa1));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function truncatePreview(_0x4f9b6d,_0x3f6837=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x2813b6=_0x260d,_0x4751d3={'bbExS':function(_0x2d8b93,_0x10ca7a){return _0x2d8b93>_0x10ca7a;},'jnbrr':'...'};return _0x4751d3['bbExS'](_0x4f9b6d['length'],_0x3f6837)?_0x4f9b6d['slice'](0x0,_0x3f6837)+_0x4751d3[_0x2813b6(0xd3)]:_0x4f9b6d;}function buildCliArtifactPath(_0x5a4f37,_0x4c8b1b){return join(_0x5a4f37,_0x4c8b1b);}function toStepDisplayName(_0x3beec5){const _0x11f940=_0x260d,_0x40a37d={'ncTFC':function(_0x23bf31,_0x34a143){return _0x23bf31(_0x34a143);}},_0x415b9c=basename(_0x3beec5)[_0x11f940(0xf3)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x11f940(0xf3)](/-/g,'\x20');return{'name':_0x415b9c,'isKeyStep':/^key_/i['test'](_0x40a37d[_0x11f940(0xec)](basename,_0x3beec5))};}function _0x260d(_0x9024c3,_0x316c11){_0x9024c3=_0x9024c3-0x81;const _0x44a845=_0x44a8();let _0x260d12=_0x44a845[_0x9024c3];return _0x260d12;}function extractShellValue(_0x178a71){if(!_0x178a71)return null;return _0x178a71[0x1]??_0x178a71[0x2]??_0x178a71[0x3]??null;}function extractFilenameOption(_0x36e17c){const _0x5b8b00=_0x260d;return extractShellValue(_0x36e17c[_0x5b8b00(0xc7)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x3fe9bc,_0x52c4c0){const _0x1c170a=_0x260d,_0x138938={'DWHvM':'\x5c$&'},_0x40b7ed=_0x52c4c0['replace'](/[.*+?^${}()|[\]\\]/g,_0x138938[_0x1c170a(0xa2)]);return extractShellValue(_0x3fe9bc[_0x1c170a(0xc7)](new RegExp('(?:^|\x5cs)'+_0x40b7ed+_0x1c170a(0x89))));}function formatCommandTarget(_0x1be5fd){const _0x389f1c=_0x260d;if(!_0x1be5fd)return _0x389f1c(0xc1);if(/^e\d+$/i['test'](_0x1be5fd))return _0x389f1c(0xfb)+_0x1be5fd;return JSON[_0x389f1c(0x8c)](truncatePreview(_0x1be5fd,0x78));}function formatPlaywrightCliLog(_0x4df13c,_0xa5389e){const _0x98e559=_0x260d,_0x50def1={'xyxeS':'open','otRHO':_0x98e559(0xa4),'NjrMs':'video-stop','BpoZQ':_0x98e559(0x90),'jzsva':'snapshot','hNhbU':function(_0x13feba,_0x95ed7e){return _0x13feba(_0x95ed7e);},'PWZGI':function(_0x5234b1,_0x32e0a7,_0x59b2ac){return _0x5234b1(_0x32e0a7,_0x59b2ac);},'sXqXG':function(_0x39b0fa,_0x335e34,_0x17f8a0){return _0x39b0fa(_0x335e34,_0x17f8a0);},'CBSRo':function(_0x217177,_0x2a71d8,_0x464a90){return _0x217177(_0x2a71d8,_0x464a90);},'RbLbS':function(_0x9031c5,_0x6eccd8){return _0x9031c5(_0x6eccd8);},'jZtdo':function(_0x39d266,_0x4281bf,_0x9ebbab){return _0x39d266(_0x4281bf,_0x9ebbab);},'IJbhi':'run\x20custom\x20Playwright\x20code','AypgG':'tab-select','rzIUt':function(_0x3c00ac,_0x30e5c4,_0x50eb7f){return _0x3c00ac(_0x30e5c4,_0x50eb7f);}};switch(_0xa5389e){case _0x50def1[_0x98e559(0x109)]:{const _0x35dc8e=extractFirstCommandArgument(_0x4df13c,_0xa5389e);return _0x35dc8e?'open\x20'+_0x35dc8e:'open\x20browser';}case _0x50def1['otRHO']:return _0x98e559(0xa8);case _0x98e559(0xed):return'stop\x20tracing';case'video-start':return _0x98e559(0xf1);case _0x50def1['NjrMs']:return _0x50def1[_0x98e559(0xd7)];case _0x50def1[_0x98e559(0xfa)]:{const _0x419ed7=extractFilenameOption(_0x4df13c);if(!_0x419ed7)return'capture\x20snapshot';const {name:_0x140371}=toStepDisplayName(_0x419ed7);return _0x98e559(0xd8)+_0x140371+'`';}case _0x98e559(0xbc):{const _0x303892=_0x50def1[_0x98e559(0xd0)](extractFilenameOption,_0x4df13c);if(!_0x303892)return'capture\x20screenshot';const {name:_0x311a34,isKeyStep:_0x334a49}=toStepDisplayName(_0x303892);return _0x334a49?'capture\x20key\x20step\x20`'+_0x311a34+'`':_0x98e559(0x115)+_0x311a34+'`';}case'click':return'click\x20'+formatCommandTarget(_0x50def1[_0x98e559(0xae)](extractFirstCommandArgument,_0x4df13c,_0xa5389e));case'check':return'check\x20'+_0x50def1['hNhbU'](formatCommandTarget,_0x50def1[_0x98e559(0xc2)](extractFirstCommandArgument,_0x4df13c,_0xa5389e));case'fill':return _0x98e559(0xf7)+_0x50def1[_0x98e559(0xd0)](formatCommandTarget,_0x50def1[_0x98e559(0x10e)](extractFirstCommandArgument,_0x4df13c,_0xa5389e));case _0x98e559(0xb3):return'press\x20'+_0x50def1['RbLbS'](formatCommandTarget,_0x50def1[_0x98e559(0xdf)](extractFirstCommandArgument,_0x4df13c,_0xa5389e));case _0x98e559(0x97):return _0x50def1[_0x98e559(0xbb)];case _0x98e559(0xdc):{const _0x33814e=extractFirstCommandArgument(_0x4df13c,_0xa5389e);return _0x33814e?'open\x20new\x20tab\x20'+_0x33814e:_0x98e559(0xc4);}case _0x50def1[_0x98e559(0xda)]:{const _0x27f809=_0x50def1[_0x98e559(0xdb)](extractFirstCommandArgument,_0x4df13c,_0xa5389e);return _0x27f809?_0x98e559(0x107)+_0x27f809:'select\x20tab';}default:return _0xa5389e;}}function extractPlaywrightCliToolDescription(_0xe84cc){const _0x44662b=_0x260d,_0x55215e={'WGAee':function(_0x1982cc,_0x95eba){return _0x1982cc!==_0x95eba;}},_0xc28a74=_0xe84cc[_0x44662b(0x114)];if(_0x55215e[_0x44662b(0x99)](typeof _0xc28a74,_0x44662b(0xce)))return null;const _0x22efcc=_0xc28a74[_0x44662b(0x113)]()[_0x44662b(0xf3)](/\s+/g,'\x20');return _0x22efcc['length']>0x0?_0x22efcc:null;}export function formatPlaywrightCliConsoleLogMessage(_0x403087,_0x3d3549,_0xb96605){const _0x504593=_0x260d,_0x43e898={'gLFdJ':function(_0x17ca80,_0x35d3e2,_0x540177){return _0x17ca80(_0x35d3e2,_0x540177);},'hKqRd':function(_0x11e105,_0x668f39){return _0x11e105(_0x668f39);}},_0x3856ce=_0x43e898[_0x504593(0x8f)](formatPlaywrightCliLog,_0x3d3549,_0xb96605),_0x2a295d=_0x43e898[_0x504593(0xc0)](extractPlaywrightCliToolDescription,_0x403087);if(!_0x2a295d)return'[playwright-cli]\x20'+_0x3856ce;if(process[_0x504593(0x84)]['DEBUG'])return'[ranger-verification-agent]\x20'+_0x2a295d+'\x20('+_0x3856ce+')';return _0x504593(0x111)+_0x2a295d;}export function buildVerifyFeatureCliDebugPrompt(_0x576587,_0x51c861){const _0x2a37c6=_0x260d,_0x449096={'UEbWx':function(_0x4bacd6,_0x4f9e70,_0x42394d){return _0x4bacd6(_0x4f9e70,_0x42394d);},'TIvuy':'01_mozilla-homepage.png','Gfhry':'02_learn-more.yml','FoyLO':_0x2a37c6(0xfc),'geLDE':function(_0x15918d,_0xcc4492){return _0x15918d(_0xcc4492);}},_0x4cebaa=_0x449096['UEbWx'](buildCliArtifactPath,_0x51c861,'00_mozilla-homepage.yml'),_0x7d7e6c=buildCliArtifactPath(_0x51c861,_0x449096['TIvuy']),_0x59e71c=_0x449096[_0x2a37c6(0xa5)](buildCliArtifactPath,_0x51c861,_0x449096[_0x2a37c6(0xf4)]),_0x58ec13=_0x449096[_0x2a37c6(0xa5)](buildCliArtifactPath,_0x51c861,_0x449096[_0x2a37c6(0xe7)]),_0x848c9c=quoteShellArg(_0x4cebaa),_0x3d95b7=_0x449096['geLDE'](quoteShellArg,_0x7d7e6c),_0x79016d=quoteShellArg(_0x59e71c),_0x22411a=_0x449096[_0x2a37c6(0x9c)](quoteShellArg,_0x58ec13);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x576587+'\x0a\x0a1.\x20Run\x20`'+_0x576587+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x576587+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x576587+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x51c861+_0x2a37c6(0xbe)+_0x576587+'\x20snapshot\x20--filename\x20'+_0x848c9c+_0x2a37c6(0x112)+_0x576587+'\x20screenshot\x20--filename\x20'+_0x3d95b7+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x576587+_0x2a37c6(0x9d)+_0x79016d+'`\x0a9.\x20Run\x20`'+_0x576587+_0x2a37c6(0xa3)+_0x22411a+_0x2a37c6(0xb0);}export function buildVerifyFeatureCliPrompt(_0x21f13c){const _0x5290f3=_0x260d,_0x1ec323={'aXkoZ':_0x5290f3(0x9e),'JVWzT':'short','BCjZO':_0x5290f3(0xc8),'cvdYq':'element','rLTkl':_0x5290f3(0xbf),'dLRlN':function(_0xfb0bb3,_0x3cfe5f,_0x37b6a8){return _0xfb0bb3(_0x3cfe5f,_0x37b6a8);},'QcmXr':_0x5290f3(0xca),'ujwyz':'01_initial-state.png','MInPj':function(_0x553ebb,_0x2b0ba5){return _0x553ebb(_0x2b0ba5);},'nXpCG':function(_0x103e7b,_0x1e55aa,_0x2ec62e){return _0x103e7b(_0x1e55aa,_0x2ec62e);},'BRrmt':'02_button-clicked.png','AUbqg':'03_result-visible.png','Irhir':function(_0x16f96b,_0x592119,_0x4b4a81){return _0x16f96b(_0x592119,_0x4b4a81);},'HAngQ':'key_04_success-state.png'},{checklistItem:_0x1982b2,itemFeedback:_0x4645d5,taskDescription:_0x50c624,cliCommandPrefix:_0x15dff2,cliArtifactDir:_0x12c90b,isCdpMode:_0x592fbb,url:_0x7bb979,cdpEndpoint:_0x47b4ef,loginInstructions:_0xb8a823}=_0x21f13c,_0x2a3474=buildCliArtifactPath(_0x12c90b,_0x5290f3(0xcd)),_0x46efd8=buildCliArtifactPath(_0x12c90b,_0x1ec323[_0x5290f3(0x8e)]),_0x147f1a=_0x1ec323[_0x5290f3(0x87)](buildCliArtifactPath,_0x12c90b,_0x1ec323['QcmXr']),_0x2e81a5=buildCliArtifactPath(_0x12c90b,_0x1ec323[_0x5290f3(0xf0)]),_0x4b5b3f=_0x1ec323[_0x5290f3(0xd6)](quoteShellArg,_0x2a3474),_0x33c334=_0x1ec323['MInPj'](quoteShellArg,_0x46efd8),_0x111387=quoteShellArg(_0x147f1a),_0x442f0c=quoteShellArg(_0x2e81a5),_0x4d4379=_0x1982b2[_0x5290f3(0xf9)]?_0x5290f3(0xc9)+_0x1982b2['notes']:'';let _0x3bcd50='';if(_0x4645d5&&_0x4645d5[_0x5290f3(0xe2)]['length']>0x0){const _0x4d2e26=_0x4645d5['unaddressedComments']['map'](_0x156ed4=>{const _0x49af16=_0x5290f3,_0x3d5c2c=new Date(_0x156ed4[_0x49af16(0xb9)])['toLocaleDateString'](_0x1ec323['aXkoZ'],{'month':_0x1ec323['JVWzT'],'day':_0x1ec323['BCjZO']}),_0x308b5b=_0x156ed4[_0x49af16(0xee)]||_0x156ed4[_0x49af16(0xef)]||_0x49af16(0x105),_0x120c60=_0x156ed4[_0x49af16(0x9b)]?_0x49af16(0xb4)+(_0x156ed4[_0x49af16(0x9b)][_0x49af16(0xcb)][_0x49af16(0xe9)]('\x20>\x20')[_0x49af16(0xeb)]()?.[_0x49af16(0xe9)](':')[0x0]||_0x1ec323['cvdYq'])+'>\x20\x22'+(_0x156ed4['domRef']['textContent']||'')[_0x49af16(0x117)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x156ed4['id']+_0x49af16(0x10c)+_0x308b5b+_0x49af16(0xe1)+_0x3d5c2c+_0x49af16(0x103)+_0x156ed4[_0x49af16(0xab)]+'\x22'+_0x120c60;})['join']('\x0a');_0x3bcd50='\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'+_0x4d2e26;}const _0x3bb1de=_0x4645d5?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x4645d5[_0x5290f3(0x86)]:'',_0x28e871=_0x592fbb?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x47b4ef+_0x5290f3(0x110):_0x5290f3(0x88)+_0x7bb979+_0x5290f3(0xd2),_0x52e43c=_0x7bb979?quoteShellArg(_0x7bb979):'',_0x552d3a=_0x592fbb?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x15dff2+'\x20open`,\x20then\x20`'+_0x15dff2+'\x20tracing-start`,\x20then\x20`'+_0x15dff2+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x12c90b+_0x5290f3(0xe8)+_0x15dff2+'\x20snapshot\x20--filename\x20'+_0x4b5b3f+'`\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`'+_0x15dff2+_0x5290f3(0xa3)+_0x442f0c+_0x5290f3(0x108)+_0x15dff2+_0x5290f3(0xa0):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x15dff2+_0x5290f3(0xcf)+_0x52e43c+_0x5290f3(0x8b)+_0x15dff2+_0x5290f3(0xbd)+_0x15dff2+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x12c90b+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x15dff2+_0x5290f3(0x9d)+_0x4b5b3f+_0x5290f3(0x116)+_0x15dff2+'\x20screenshot\x20--filename\x20'+_0x442f0c+_0x5290f3(0xa9)+_0x15dff2+_0x5290f3(0x98),_0x2f22fc=_0x592fbb?_0x5290f3(0xc3):_0x5290f3(0x92),_0x19f341=_0xb8a823?_0x5290f3(0x106)+_0xb8a823+_0x5290f3(0xff):'';return _0x5290f3(0xf2)+_0x1982b2['description']+_0x4d4379+_0x3bcd50+_0x3bb1de+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x50c624+'\x0a\x0a'+_0x28e871+_0x19f341+'\x0a\x0a'+_0x552d3a+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x15dff2+_0x5290f3(0xe4)+_0x12c90b+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x33c334+'`\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'+_0x111387+_0x5290f3(0xde)+_0x12c90b+_0x5290f3(0x100)+_0x2e81a5+'\x22,\x20\x22'+_0x1ec323[_0x5290f3(0xfe)](buildCliArtifactPath,_0x12c90b,_0x1ec323['BRrmt'])+_0x5290f3(0xf5)+buildCliArtifactPath(_0x12c90b,_0x1ec323[_0x5290f3(0xe5)])+_0x5290f3(0x10f)+_0x1ec323[_0x5290f3(0x102)](buildCliArtifactPath,_0x12c90b,_0x1ec323[_0x5290f3(0x10a)])+'\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'+_0x2f22fc+_0x5290f3(0x8a);}export function summarizeVerifyFeatureCliCommandAvailability(_0x3c435d){const _0x5cb521=_0x260d,_0x1743a2={'ogEzM':function(_0xf9ca4,_0x547b31){return _0xf9ca4===_0x547b31;}},_0x20ee5a=[..._0x3c435d[_0x5cb521(0x93)]()]['sort']();let _0x4a8774=0x0;for(const _0x40a709 of _0x3c435d['values']()){_0x4a8774+=_0x40a709;}return{'cliCommandCount':_0x4a8774,'cliCommandsSeen':_0x20ee5a,'noCliCommandsCalled':_0x1743a2['ogEzM'](_0x4a8774,0x0)};}export function createVerifyFeatureCliHooks(_0xaef0e3){const _0x2af787=_0x260d,_0x11c3ee={'gphbE':function(_0x1ee640,_0x487e28){return _0x1ee640!==_0x487e28;},'MQdpl':_0x2af787(0xb6),'uPkYz':function(_0x2462c7,_0xd2502b){return _0x2462c7(_0xd2502b);},'CcFZt':function(_0x480135,_0x43f1c0){return _0x480135+_0x43f1c0;},'oLaMR':'tool_call','xNvYp':_0x2af787(0xb1),'TvkmD':function(_0x50a82e,_0x315c1f){return _0x50a82e!==_0x315c1f;},'cJLUd':_0x2af787(0xd4),'oaPeL':'PostToolUseFailure'},_0xaea8c3=new Map(),_0x4f5de7=async _0x22eba0=>{const _0x32b6cb=_0x2af787;if(_0x11c3ee[_0x32b6cb(0x83)](_0x22eba0[_0x32b6cb(0x96)],_0x32b6cb(0x104)))return{};const _0xc154c0=_0x22eba0;if(_0xc154c0['tool_name']!==_0x11c3ee[_0x32b6cb(0xc6)])return{};const _0xa65042=_0xc154c0['tool_input'],_0x8b1bc0=_0x11c3ee[_0x32b6cb(0xaa)](extractBashCommand,_0xa65042);if(!_0x8b1bc0)return{};const _0x36588f=_0x11c3ee[_0x32b6cb(0xaa)](parsePlaywrightCliCommand,_0x8b1bc0);if(!_0x36588f)return{};return _0xaea8c3[_0x32b6cb(0x91)](_0x36588f,_0x11c3ee['CcFZt'](_0xaea8c3[_0x32b6cb(0xb5)](_0x36588f)||0x0,0x1)),_0xaef0e3['trackPhaseStart'](_0x11c3ee[_0x32b6cb(0x85)],{'transport':_0x11c3ee['xNvYp'],'toolName':_0x36588f}),_0xaef0e3['trackPhaseEnd']('tool_call',{'transport':_0x11c3ee['xNvYp'],'toolName':_0x36588f,'bashCommandPreview':_0x11c3ee[_0x32b6cb(0xaa)](truncatePreview,_0x8b1bc0)}),_0x11c3ee['TvkmD'](_0x36588f,_0x11c3ee['cJLUd'])&&console['log'](formatPlaywrightCliConsoleLogMessage(_0xa65042,_0x8b1bc0,_0x36588f)),{};},_0x27b54f=async _0xb2690a=>{const _0x136d4f=_0x2af787;if(_0xb2690a[_0x136d4f(0x96)]!==_0x11c3ee['oaPeL'])return{};const _0x401d25=_0xb2690a;if(_0x11c3ee[_0x136d4f(0x83)](_0x401d25[_0x136d4f(0xea)],_0x136d4f(0xb6)))return{};return await _0xaef0e3[_0x136d4f(0xb7)](_0x136d4f(0x9a),_0x401d25[_0x136d4f(0x81)],{'transport':'playwright-cli','toolName':'Bash'}),{};};return{'postToolUseHook':_0x4f5de7,'postToolUseFailureHook':_0x27b54f,'commandCounts':_0xaea8c3};}async function runPlaywrightCliLifecycleCommand(_0x3930f1){const _0x241ad8=_0x260d,_0x409222={'LDsHf':function(_0x21c84f,_0x27aadb){return _0x21c84f(_0x27aadb);},'uUAJf':function(_0x1921cc,_0x2dccaf){return _0x1921cc??_0x2dccaf;},'XAdlv':function(_0x4bda8b,_0x6df056,_0x1fcc34){return _0x4bda8b(_0x6df056,_0x1fcc34);}},{sessionId:_0x241df6,configPath:_0x368208,commandArgs:_0x3e8b01,env:_0x41c750,telemetry:_0x48bcfd,phase:_0x2e0251,metadata:_0x35f3c2,timeoutMs:_0x25fed8}=_0x3930f1;_0x48bcfd['trackPhaseStart'](_0x2e0251,_0x35f3c2);try{const _0x2b55e1=await _0x409222['LDsHf'](runPlaywrightCliCommand,{'sessionId':_0x241df6,'configPath':_0x368208,'commandArgs':_0x3e8b01,'cwd':process[_0x241ad8(0xd1)](),'env':_0x41c750,'timeoutMs':_0x409222['uUAJf'](_0x25fed8,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x48bcfd[_0x241ad8(0x8d)](_0x2e0251,{..._0x35f3c2,'subcommand':_0x2b55e1['invocation'][_0x241ad8(0xa1)],'stdoutPreview':_0x409222['XAdlv'](truncatePreview,_0x2b55e1['stdout'],0x7d0),'stderrPreview':_0x409222[_0x241ad8(0x101)](truncatePreview,_0x2b55e1[_0x241ad8(0x95)],0x7d0)});}catch(_0x273e3c){await _0x48bcfd[_0x241ad8(0xb7)](_0x2e0251,_0x273e3c,_0x35f3c2);throw _0x273e3c;}}export async function finalizeVerifyFeatureCliSession(_0x50ca11){const _0x49872a=_0x260d,_0x1b3165={'eVPLB':_0x49872a(0xa6),'BFqmi':'tracing-stop','eqfwX':'playwright_cli_video_stop','tSbDN':function(_0x516b27,_0x4a5f09,_0x1ccb48){return _0x516b27(_0x4a5f09,_0x1ccb48);},'qlncW':_0x49872a(0xe0),'pfCBi':'close','BqnpE':function(_0x4a035a,_0x46a701){return _0x4a035a(_0x46a701);}},{telemetry:_0x31f523,sessionId:_0x5d1b8a,configPath:_0x12ed2b,cliArtifactDir:_0xf0a697,env:_0x19e302,transportMetadata:_0x2da421}=_0x50ca11,_0x3fecd3=[{'phase':_0x1b3165[_0x49872a(0xad)],'commandArgs':[_0x1b3165['BFqmi']]},{'phase':_0x1b3165[_0x49872a(0xcc)],'commandArgs':[_0x49872a(0xfd),'--filename='+_0x1b3165['tSbDN'](buildCliArtifactPath,_0xf0a697,_0x49872a(0xba))]},{'phase':_0x1b3165['qlncW'],'commandArgs':[_0x1b3165['pfCBi']]}];for(const _0x30a7c7 of _0x3fecd3){try{await _0x1b3165[_0x49872a(0xf8)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x5d1b8a,'configPath':_0x12ed2b,'commandArgs':[..._0x30a7c7[_0x49872a(0xb8)]],'env':_0x19e302,'telemetry':_0x31f523,'phase':_0x30a7c7['phase'],'metadata':_0x2da421});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x4f727a){const _0x5a85cf=_0x260d,_0x1fda29={'cuHzL':'trace.zip'},_0x22cc03=[_0x1fda29['cuHzL'],_0x5a85cf(0x10d)];for(const _0x2bd898 of _0x22cc03){const _0x5cd05f=join(_0x4f727a,_0x2bd898);try{return{'buffer':await readFile(_0x5cd05f),'source':_0x5cd05f};}catch{}}return null;}function _0x44a8(){const _0x244a22=['MQdpl','match','numeric','\x0a\x0a##\x20Additional\x20Notes\x0a','key_03_success-state.png','selector','eqfwX','01_initial.yml','string','\x20open\x20','hNhbU','cwd','\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','jnbrr','snapshot','eNAXt','MInPj','BpoZQ','capture\x20snapshot\x20`','87dvQkvY','AypgG','rzIUt','tab-new','GbjvO','`\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`','jZtdo','playwright_cli_close','**\x20(','unaddressedComments','39388fTssyv','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','AUbqg','1038140fWsffE','FoyLO','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','split','tool_name','pop','ncTFC','tracing-stop','authorName','authorEmail','ujwyz','start\x20video\x20recording','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','replace','Gfhry','\x22,\x20\x22','1782440taGkUo','fill\x20','BqnpE','notes','jzsva','ref\x20','03_learn-more.png','video-stop','nXpCG','\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.','`:\x20\x22','XAdlv','Irhir','):\x20\x22','PostToolUse','Reviewer','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','select\x20tab\x20','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','xyxeS','HAngQ','5628294hXHOIu',']\x20**','trace.trace.zip','CBSRo','\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','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','[ranger-verification-agent]\x20','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','trim','description','capture\x20step\x20`','`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`','slice','error','JdxVS','gphbE','env','oLaMR','canonicalFlow','dLRlN','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\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.','`,\x20then\x20`','stringify','trackPhaseEnd','rLTkl','gLFdJ','stop\x20video\x20recording','set','\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.','keys','name','stderr','hook_event_name','run-code','\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','WGAee','tool_failure','domRef','geLDE','\x20snapshot\x20--filename\x20','en-US','27746kCbqfT','\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','subcommand','DWHvM','\x20screenshot\x20--filename\x20','tracing-start','UEbWx','playwright_cli_tracing_stop','dBsgt','start\x20tracing','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','uPkYz','content','335OBGeMF','eVPLB','PWZGI','541878ATXFKH','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','playwright-cli','678202minReb','press','\x20(on\x20element:\x20<','get','Bash','trackPhaseError','commandArgs','createdAt','session-recording.webm','IJbhi','screenshot','\x20tracing-start`,\x20then\x20`','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','02_state.yml','hKqRd','target','sXqXG','\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.','open\x20new\x20tab','28oBmThe'];_0x44a8=function(){return _0x244a22;};return _0x44a8();}export async function rehomeVerifyFeatureCliArtifacts(_0x2ea690){const _0x2f66e4=_0x260d,_0x204893={'URuGH':function(_0x310002,_0x2a5a86,_0x455f7b){return _0x310002(_0x2a5a86,_0x455f7b);},'pqLqQ':function(_0x46fd5f,_0x2f83d1,_0x3620a4){return _0x46fd5f(_0x2f83d1,_0x3620a4);},'GbjvO':function(_0x24541e,_0x5f2e0b){return _0x24541e(_0x5f2e0b);},'dBsgt':function(_0x466776,_0x39869e){return _0x466776<_0x39869e;},'APMWi':function(_0x1a23c9,_0x1f9735){return _0x1a23c9+_0x1f9735;},'eNAXt':function(_0x3f7847,_0x1d38d3,_0xf14524){return _0x3f7847(_0x1d38d3,_0xf14524);},'JdxVS':function(_0xd38d9d,_0x35e080){return _0xd38d9d===_0x35e080;}},{cwd:_0x1692d9,cliArtifactDir:_0x1ce341,startTime:_0x46447d}=_0x2ea690,_0x22851a=[];await _0x204893['URuGH'](mkdir,_0x1ce341,{'recursive':!![]});const _0x4ded51=await _0x204893['URuGH'](readdir,_0x1692d9,{'withFileTypes':!![]});for(const _0x143110 of _0x4ded51){if(!_0x143110['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x143110[_0x2f66e4(0x94)]))continue;const _0x5cf107=_0x204893['pqLqQ'](join,_0x1692d9,_0x143110['name']),_0x219537=await _0x204893[_0x2f66e4(0xdd)](stat,_0x5cf107);if(_0x204893[_0x2f66e4(0xa7)](_0x204893['APMWi'](_0x219537['mtimeMs'],0x7d0),_0x46447d))continue;const _0x5cb42e=_0x204893[_0x2f66e4(0xd5)](buildCliArtifactPath,_0x1ce341,_0x143110['name']);if(_0x204893[_0x2f66e4(0x82)](_0x5cf107,_0x5cb42e))continue;await rename(_0x5cf107,_0x5cb42e),_0x22851a['push'](_0x143110[_0x2f66e4(0x94)]);}return _0x22851a['sort']();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x490272=_0x30a6;(function(_0x1aa043,_0x3adc03){const _0x4f0909=_0x30a6,_0x58c480=_0x1aa043();while(!![]){try{const _0x3bc238=-parseInt(_0x4f0909(0x28d))/0x1+-parseInt(_0x4f0909(0x237))/0x2+parseInt(_0x4f0909(0x1eb))/0x3+-parseInt(_0x4f0909(0x259))/0x4+parseInt(_0x4f0909(0x224))/0x5*(-parseInt(_0x4f0909(0x1e0))/0x6)+parseInt(_0x4f0909(0x201))/0x7+-parseInt(_0x4f0909(0x216))/0x8*(-parseInt(_0x4f0909(0x1d4))/0x9);if(_0x3bc238===_0x3adc03)break;else _0x58c480['push'](_0x58c480['shift']());}catch(_0x56bcbd){_0x58c480['push'](_0x58c480['shift']());}}}(_0xec7a,0xa4fe6));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';function _0xec7a(){const _0x2ffa79=['nova_act_session_export','nova-artifacts.zip','session','jdFco','YIpBN','screencastStarted','finally','subcommand','9nEJMAM','close','-pix_fmt','BaSxu','verify','Caches','`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','traceSampleInFlight','UqgLi','BhlHV','nova-user-data/*','daSrl','30BnavbX','sort','set','`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','log','pqzjj','oQTbM','nova-session-export.json','yuv420p','allSettled','evaluate','2084697XyqFGz','\x0a\x0a##\x20Additional\x20Notes\x0a','00_initial-state.yml','Borvb','KGDdq','PostToolUse','UeBkD','ACBfl','trim','[nova-act-cli]\x20','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','--report','tagName','\x20session\x20create\x20','ccPdj','browser','isFile','TTgSp','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','getFrameDir','split','**\x20(','6407359SItzny','cliArtifactDir','has','SQtbS','RWJmw','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','dQwTU','ask','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','nova_act_session_report','tool_name','BwOqJ','frame-','queueTraceSample','cdp_endpoint','`\x0a-\x20`','domRef','contexts','RQzUW','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','-qr','11462536QninzJ','frameWrites','capture\x20snapshot\x20`','01_initial.yml','create\x20Nova\x20browser\x20session','pop','vulDc','body','startsWith','KhnNG','uGHDG','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','snapshot','Mtqam','235340RPORTQ','captureTraceSample','nova_act_artifact_recording_stop','flatMap','LuVTE','nova-act-cli','params','state','mWQRP','block','join','then','navigate\x20browser','capture\x20key\x20step\x20`','tmKfA','padStart','export','send','error','153752zryeCL','stderr','orZmZ','context','env','utf-8','notes','ffmpeg','invocation','`\x0a3.\x20Run\x20`','\x20snapshot\x20--output\x20','description','slice','zBgdK','novaOptions','cwd','frameCount','test','base64','EFoeO','en-US','scale=trunc(iw/2)*2:trunc(ih/2)*2','nova_act_artifact_recording','start','trackPhaseStart','transportMetadata','toLocaleDateString','DEEDu','stop','Sorjn','session\x20create','sThGc','textContent','ffmpeg.exe','4753880SWXCMp','pages','commandArgs','catch','newCDPSession','KuvVE','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','ChljL','nova_act_command','PreToolUse','capture\x20screenshot','sessionId','wait-for','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','lmeGa','RMVxy','aCCto','execute\x20Nova\x20browser\x20action','`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a','FuNpI','shellCommand','JREqt','unaddressedComments','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','HpizV','selector','CiXIu','01_initial-state.png','now','connectOverCDP','sessions','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','nVNuG','\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`','tracingStarted','Page.stopScreencast','trace.zip','PFAUT','JurNj','lMLgw','nova-report','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','numeric','browser_pid','jxDrk','get','values','-loglevel','mtimeMs','nova_act_session_close','trackPhaseError','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','866553ACijvc','startAttempted','-version','\x20screenshot\x20--output\x20','TXpdC','\x20(on\x20element:\x20<','YSgLe','hook_event_name','name','tracing','dzrjD','trackPhaseEnd','replace','wait\x20for\x20page\x20condition','push','stopped','pgcKx','screenshot','yocUD','frameSession','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.','traceSampleTimer','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.','element','nRBqV','SPORn','.json','wNDVs','Bash','EBOBG','content','-c:v','WNPOb','glyho','tool_input','WWZiM','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','cQebB','.jpg','ffmpeg-linux','NBYAn','session\x20export','):\x20\x22'];_0xec7a=function(){return _0x2ffa79;};return _0xec7a();}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([_0x490272(0x255),'execute',_0x490272(0x1d8),_0x490272(0x208),'goto',_0x490272(0x265),'snapshot',_0x490272(0x1b2)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x167ce5,_0x2f053d){const _0x4094fc=_0x490272,_0x2583d4={'TXpdC':function(_0x1585b4,_0x5060f4,_0x2ab73d){return _0x1585b4(_0x5060f4,_0x2ab73d);}};return _0x2583d4[_0x4094fc(0x291)](join,_0x167ce5,_0x2f053d);}export class NovaActArtifactRecorder{['params'];[_0x490272(0x1fa)]=null;['context']=null;[_0x490272(0x1b4)]=null;[_0x490272(0x217)]=[];[_0x490272(0x247)]=0x0;['traceSampleCount']=0x0;[_0x490272(0x1b6)]=null;[_0x490272(0x1db)]=null;[_0x490272(0x27b)]=![];['screencastStarted']=![];[_0x490272(0x28e)]=![];['stopped']=![];constructor(_0x324c61){const _0x135dc8=_0x490272;this[_0x135dc8(0x22a)]=_0x324c61;}async['start'](){const _0x1a325e=_0x490272,_0x1f1ce0={'WWZiM':function(_0x3a3fcb,_0x204d5a,_0x482649){return _0x3a3fcb(_0x204d5a,_0x482649);},'Sorjn':'nova_act_artifact_recording'};if(this['startAttempted'])return;this[_0x1a325e(0x28e)]=!![];const _0x2248fa=await this['readSessionMetadataWithRetry'](),_0x3e385f=_0x2248fa[_0x1a325e(0x20f)];if(!_0x3e385f)throw new Error(_0x1a325e(0x270)+this['params']['novaOptions'][_0x1a325e(0x264)]);await _0x1f1ce0[_0x1a325e(0x1c4)](mkdir,this[_0x1a325e(0x22a)]['cliArtifactDir'],{'recursive':!![]}),this['browser']=await chromium[_0x1a325e(0x276)](_0x3e385f,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x1a325e(0x23a)]=this['browser'][_0x1a325e(0x212)]()[0x0]??null;if(!this[_0x1a325e(0x23a)])throw new Error(_0x1a325e(0x25f));await this[_0x1a325e(0x23a)][_0x1a325e(0x1aa)][_0x1a325e(0x24e)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this[_0x1a325e(0x27b)]=!![],this['startTraceSampling'](),await this['startScreencast'](),this[_0x1a325e(0x22a)]['telemetry']['trackPhaseStart'](_0x1a325e(0x24d),{...this[_0x1a325e(0x22a)][_0x1a325e(0x250)],'cdpEndpoint':_0x3e385f,'browserPid':_0x2248fa[_0x1a325e(0x284)],'sessionState':_0x2248fa[_0x1a325e(0x22b)]}),this[_0x1a325e(0x22a)]['telemetry'][_0x1a325e(0x1ac)](_0x1f1ce0[_0x1a325e(0x254)],{...this['params'][_0x1a325e(0x250)],'tracingStarted':this['tracingStarted'],'screencastStarted':this['screencastStarted']});}async[_0x490272(0x253)](){const _0x32806d=_0x490272,_0x36b660={'BVKow':_0x32806d(0x226),'PrxhA':function(_0x592592,_0x1f9efa,_0xd8e4ba){return _0x592592(_0x1f9efa,_0xd8e4ba);},'ckfRY':_0x32806d(0x27d)};if(this['stopped'])return;this[_0x32806d(0x1b0)]=!![];const _0x5bd4fa={...this['params'][_0x32806d(0x250)],'frameCount':this['frameCount'],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x32806d(0x1d1)]};this['params']['telemetry']['trackPhaseStart'](_0x36b660['BVKow'],_0x5bd4fa);try{await this['stopTraceSampling'](),await this[_0x32806d(0x225)](),await this['stopScreencast'](),await Promise[_0x32806d(0x1e9)](this[_0x32806d(0x217)]);this[_0x32806d(0x23a)]&&this[_0x32806d(0x27b)]&&await this[_0x32806d(0x23a)][_0x32806d(0x1aa)][_0x32806d(0x253)]({'path':_0x36b660['PrxhA'](buildCliArtifactPath,this[_0x32806d(0x22a)][_0x32806d(0x202)],_0x36b660['ckfRY'])});const _0xd980ff=await this['encodeScreencastVideo']();this[_0x32806d(0x22a)]['telemetry'][_0x32806d(0x1ac)](_0x32806d(0x226),{..._0x5bd4fa,'videoPath':_0xd980ff});}catch(_0x1af25b){await this['params']['telemetry'][_0x32806d(0x28b)](_0x32806d(0x226),_0x1af25b,_0x5bd4fa);}finally{await this[_0x32806d(0x1fa)]?.[_0x32806d(0x1d5)]()[_0x32806d(0x25c)](()=>undefined),this['browser']=null,this['context']=null,this['frameSession']=null;}}async['readSessionMetadataWithRetry'](){const _0x171b60=_0x490272,_0x1f6c5c={'TTgSp':function(_0x575e97,_0x18ce3,_0x5c0710,_0x38c2ee,_0x23537e,_0x174ed4){return _0x575e97(_0x18ce3,_0x5c0710,_0x38c2ee,_0x23537e,_0x174ed4);},'BEPso':'.act_cli','FuNpI':_0x171b60(0x1fa),'FDXDp':function(_0x2a56f6,_0x2a84a4,_0x20941a){return _0x2a56f6(_0x2a84a4,_0x20941a);},'dzrjD':function(_0x5d3343,_0x424a87){return _0x5d3343(_0x424a87);},'orZmZ':function(_0x421605,_0x1d6247){return _0x421605<_0x1d6247;},'sGZUP':function(_0x187478,_0x1a5416){return _0x187478-_0x1a5416;},'pqzjj':function(_0x2e3a9c,_0x4d6808){return _0x2e3a9c instanceof _0x4d6808;}},_0x134dfa=_0x1f6c5c[_0x171b60(0x1fc)](join,homedir(),_0x1f6c5c['BEPso'],_0x1f6c5c[_0x171b60(0x26c)],_0x171b60(0x277),this['params']['novaOptions'][_0x171b60(0x264)]+_0x171b60(0x1bb)),_0x2862b1=Date[_0x171b60(0x275)]();let _0x5a30f2;do{try{const _0x277294=JSON['parse'](await _0x1f6c5c['FDXDp'](readFile,_0x134dfa,_0x171b60(0x23c)));if(_0x277294['cdp_endpoint'])return _0x277294;_0x5a30f2=new Error(_0x171b60(0x282)+_0x134dfa);}catch(_0xf361){_0x5a30f2=_0xf361;}await _0x1f6c5c[_0x171b60(0x1ab)](delay,0x64);}while(_0x1f6c5c[_0x171b60(0x239)](_0x1f6c5c['sGZUP'](Date['now'](),_0x2862b1),NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x1f6c5c[_0x171b60(0x1e5)](_0x5a30f2,Error))throw _0x5a30f2;throw new Error(_0x171b60(0x206)+_0x134dfa);}async['startScreencast'](){const _0x2f955a=_0x490272,_0x361871={'SnQJy':function(_0x7942a3,_0x4a6774){return _0x7942a3(_0x4a6774);},'glyho':function(_0x22c21c,_0x1168fc,_0x5d33d8){return _0x22c21c(_0x1168fc,_0x5d33d8);},'MMDJp':_0x2f955a(0x249),'Plvoc':function(_0xe83b3,_0x4ee39a,_0x154deb){return _0xe83b3(_0x4ee39a,_0x154deb);},'lMIqY':'Page.startScreencast','WNPOb':'jpeg'};if(!this['context'])return;const _0x5d79ce=this[_0x2f955a(0x23a)][_0x2f955a(0x25a)]()[0x0];if(!_0x5d79ce)return;const _0x209b78=this[_0x2f955a(0x1fe)]();await _0x361871['Plvoc'](mkdir,_0x209b78,{'recursive':!![]});const _0x18ecf7=await this[_0x2f955a(0x23a)][_0x2f955a(0x25d)](_0x5d79ce);this[_0x2f955a(0x1b4)]=_0x18ecf7,_0x18ecf7['on']('Page.screencastFrame',_0x302431=>{const _0x96d563=_0x2f955a,_0x487f0f=++this['frameCount'],_0x45fc71=join(_0x209b78,_0x96d563(0x20d)+_0x361871['SnQJy'](String,_0x487f0f)[_0x96d563(0x233)](0x6,'0')+_0x96d563(0x1c7)),_0x1c832f=_0x361871[_0x96d563(0x1c2)](writeFile,_0x45fc71,Buffer['from'](_0x302431['data'],_0x361871['MMDJp']))['catch'](()=>undefined)[_0x96d563(0x1d2)](()=>_0x18ecf7[_0x96d563(0x235)]('Page.screencastFrameAck',{'sessionId':_0x302431['sessionId']}))[_0x96d563(0x22f)](()=>undefined)[_0x96d563(0x25c)](()=>undefined);this['frameWrites'][_0x96d563(0x1af)](_0x1c832f);}),await _0x18ecf7[_0x2f955a(0x235)](_0x361871['lMIqY'],{'format':_0x361871[_0x2f955a(0x1c1)],'quality':0x4b,'everyNthFrame':0x6}),this['screencastStarted']=!![];}async['stopScreencast'](){const _0x447ad8=_0x490272,_0x563540={'Mtqam':_0x447ad8(0x27c)};if(!this['frameSession']||!this['screencastStarted'])return;await this['frameSession']['send'](_0x563540[_0x447ad8(0x223)])[_0x447ad8(0x25c)](()=>undefined);}['startTraceSampling'](){const _0x5cad03=_0x490272;this['queueTraceSample'](),this[_0x5cad03(0x1b6)]=setInterval(()=>this[_0x5cad03(0x20e)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}['queueTraceSample'](){const _0x15fa60=_0x490272;if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this['captureTraceSample']()[_0x15fa60(0x1d2)](()=>{const _0x5cd31e=_0x15fa60;this[_0x5cd31e(0x1db)]=null;});}async['stopTraceSampling'](){const _0x22b8e4=_0x490272,_0xc80489={'ChljL':function(_0x5e2b62,_0x50091b){return _0x5e2b62(_0x50091b);}};this[_0x22b8e4(0x1b6)]&&(_0xc80489[_0x22b8e4(0x260)](clearInterval,this['traceSampleTimer']),this['traceSampleTimer']=null),await this[_0x22b8e4(0x1db)]?.['catch'](()=>undefined);}async[_0x490272(0x225)](){const _0x50757d=_0x490272,_0x46642f={'nRBqV':_0x50757d(0x21d)},_0x131127=this[_0x50757d(0x23a)]?.['pages']()[0x0];if(!_0x131127)return;try{await _0x131127['locator'](_0x46642f[_0x50757d(0x1b9)])[_0x50757d(0x1ea)](_0xa555c4=>_0xa555c4[_0x50757d(0x1f7)],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async['encodeScreencastVideo'](){const _0x8253b5=_0x490272,_0x56d363={'iGEHO':function(_0x4e08fe,_0x355792){return _0x4e08fe<_0x355792;},'qRYvA':function(_0x2d7456){return _0x2d7456();},'aCCto':'videos','EZfjj':function(_0x289763,_0x12f79d,_0x2d1d18){return _0x289763(_0x12f79d,_0x2d1d18);},'SZnVI':'session-recording.webm','meyHw':_0x8253b5(0x288),'xYsoY':function(_0x4ec542,_0x2a191b,_0x35568a){return _0x4ec542(_0x2a191b,_0x35568a);},'BaSxu':_0x8253b5(0x24c),'EBOBG':_0x8253b5(0x1c0),'oQTbM':'libvpx-vp9','YMObK':_0x8253b5(0x1e8)};if(_0x56d363['iGEHO'](this['frameCount'],0x2))return null;const _0x103e36=await _0x56d363['qRYvA'](resolveFfmpegPath);if(!_0x103e36)return null;const _0x3df509=join(this['params']['cliArtifactDir'],_0x56d363[_0x8253b5(0x269)]);await mkdir(_0x3df509,{'recursive':!![]});const _0x2482b0=_0x56d363['EZfjj'](join,_0x3df509,_0x56d363['SZnVI']);return await execFileAsync(_0x103e36,['-y','-hide_banner',_0x56d363['meyHw'],_0x8253b5(0x236),'-framerate','10','-i',_0x56d363['xYsoY'](join,this[_0x8253b5(0x1fe)](),'frame-%06d.jpg'),'-vf',_0x56d363[_0x8253b5(0x1d7)],_0x56d363[_0x8253b5(0x1be)],_0x56d363[_0x8253b5(0x1e6)],_0x8253b5(0x1d6),_0x56d363['YMObK'],_0x2482b0]),_0x2482b0;}['getFrameDir'](){const _0xf92059={'KfxVG':function(_0x1b12ba,_0x2e87ed,_0x55f2a3){return _0x1b12ba(_0x2e87ed,_0x55f2a3);}};return _0xf92059['KfxVG'](join,this['params']['cliArtifactDir'],'nova-video-frames');}}async function delay(_0x1afa57){await new Promise(_0x371a4f=>setTimeout(_0x371a4f,_0x1afa57));}async function resolveFfmpegPath(){const _0x3904c1=_0x490272,_0x23cd25={'DxuLa':function(_0x5d7a23,_0x449aeb){return _0x5d7a23(_0x449aeb);},'TUpTh':_0x3904c1(0x23e),'nVNuG':function(_0x4afcdb,_0x228201,_0xaf6c6d,_0x5bca00,_0x73f880){return _0x4afcdb(_0x228201,_0xaf6c6d,_0x5bca00,_0x73f880);},'oHttt':'Library','cQKrg':_0x3904c1(0x1d9),'UqgLi':'ms-playwright'};if(await _0x23cd25['DxuLa'](canRunFfmpeg,'ffmpeg'))return _0x23cd25['TUpTh'];const _0x4085d1=[_0x23cd25[_0x3904c1(0x279)](join,homedir(),_0x23cd25['oHttt'],_0x23cd25['cQKrg'],_0x23cd25['UqgLi']),join(homedir(),'.cache',_0x23cd25[_0x3904c1(0x1dc)])];for(const _0x2732e0 of _0x4085d1){try{const _0x274837=await _0x23cd25['DxuLa'](readdir,_0x2732e0),_0x469aa6=_0x274837['filter'](_0x5b891c=>_0x5b891c[_0x3904c1(0x21e)]('ffmpeg-'))[_0x3904c1(0x1e1)]()['reverse']()[_0x3904c1(0x227)](_0xfc861f=>[join(_0x2732e0,_0xfc861f,'ffmpeg-mac'),join(_0x2732e0,_0xfc861f,_0x3904c1(0x1c8)),join(_0x2732e0,_0xfc861f,_0x3904c1(0x258))]);for(const _0x1aaaff of _0x469aa6){if(await canRunFfmpeg(_0x1aaaff))return _0x1aaaff;}}catch{}}return null;}async function canRunFfmpeg(_0x30bb13){const _0x4c946f=_0x490272,_0x7011={'DEEDu':_0x4c946f(0x28f)};try{return await execFileAsync(_0x30bb13,[_0x7011[_0x4c946f(0x252)]]),!![];}catch{return![];}}function toStepDisplayName(_0x149f51){const _0x266f6c=_0x490272,_0x24e718={'SQtbS':function(_0x4115f8,_0x396228){return _0x4115f8(_0x396228);}},_0x3d4863=basename(_0x149f51)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x266f6c(0x1ad)](/-/g,'\x20');return{'name':_0x3d4863,'isKeyStep':/^key_/i[_0x266f6c(0x248)](_0x24e718[_0x266f6c(0x204)](basename,_0x149f51))};}function extractShellValue(_0x38f9a8){if(!_0x38f9a8)return null;return _0x38f9a8[0x1]??_0x38f9a8[0x2]??_0x38f9a8[0x3]??null;}function extractOutputOption(_0x5cdeff){return extractShellValue(_0x5cdeff['match'](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x207222,_0x7f78e6){const _0x101284=_0x490272,_0x44ccfe={'TEHDg':'execute','kTnHs':'verify','lHWNO':_0x101284(0x208),'KuvVE':'goto','HCGKv':'wait-for','hElPS':_0x101284(0x1ae),'uGHDG':'snapshot','fOdkr':function(_0x1a5823,_0x3e52a6){return _0x1a5823(_0x3e52a6);},'RMVxy':function(_0x1ed06c,_0x59692a){return _0x1ed06c(_0x59692a);},'QGphF':_0x101284(0x263)};switch(_0x7f78e6){case'session\x20create':return _0x101284(0x21a);case _0x44ccfe['TEHDg']:return _0x101284(0x26a);case _0x44ccfe['kTnHs']:return'verify\x20page\x20condition';case _0x44ccfe['lHWNO']:return'ask\x20page\x20question';case _0x44ccfe[_0x101284(0x25e)]:return _0x101284(0x230);case _0x44ccfe['HCGKv']:return _0x44ccfe['hElPS'];case _0x44ccfe[_0x101284(0x220)]:{const _0x51baa7=_0x44ccfe['fOdkr'](extractOutputOption,_0x207222);if(!_0x51baa7)return'capture\x20snapshot';const {name:_0x5cfbf2}=_0x44ccfe['fOdkr'](toStepDisplayName,_0x51baa7);return _0x101284(0x218)+_0x5cfbf2+'`';}case'screenshot':{const _0x5d3608=_0x44ccfe[_0x101284(0x268)](extractOutputOption,_0x207222);if(!_0x5d3608)return _0x44ccfe['QGphF'];const {name:_0x3ce4c4,isKeyStep:_0x3241ff}=toStepDisplayName(_0x5d3608);return _0x3241ff?_0x101284(0x231)+_0x3ce4c4+'`':'capture\x20step\x20`'+_0x3ce4c4+'`';}case _0x101284(0x1ca):return'export\x20Nova\x20session';default:return _0x7f78e6;}}function getNovaActCliCommandBlockReason(_0x1d00b0){const _0x58f404=_0x490272,_0x4a84d5={'SDzlt':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','YhgrR':function(_0x207f4c,_0x50109a){return _0x207f4c===_0x50109a;},'Kuhgs':_0x58f404(0x1b7)},_0x290cb6=parseNovaActCliCommand(_0x1d00b0);if(!_0x290cb6)return _0x4a84d5['SDzlt'];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x58f404(0x203)](_0x290cb6))return'Nova\x20command\x20`'+_0x290cb6+'`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.';if(_0x4a84d5['YhgrR'](_0x290cb6,_0x58f404(0x1d8))&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x1d00b0))return _0x4a84d5['Kuhgs'];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x1d00b0))return _0x58f404(0x28c);return null;}function buildFeedbackSection(_0x1a5f63){const _0xffdd30=_0x490272,_0x24e2c9={'JurNj':_0xffdd30(0x24b),'tOdys':_0xffdd30(0x1b8),'cQebB':function(_0x360de0,_0x26757d){return _0x360de0===_0x26757d;}};if(!_0x1a5f63||_0x24e2c9[_0xffdd30(0x1c6)](_0x1a5f63[_0xffdd30(0x26f)]['length'],0x0))return'';const _0x580fef=_0x1a5f63[_0xffdd30(0x26f)]['map'](_0x5bd688=>{const _0x3999a0=_0xffdd30,_0x237774=new Date(_0x5bd688['createdAt'])[_0x3999a0(0x251)](_0x24e2c9[_0x3999a0(0x27f)],{'month':'short','day':_0x3999a0(0x283)}),_0x2fc67b=_0x5bd688['authorName']||_0x5bd688['authorEmail']||'Reviewer',_0x4b8b3c=_0x5bd688[_0x3999a0(0x211)]?_0x3999a0(0x292)+(_0x5bd688['domRef'][_0x3999a0(0x272)]['split']('\x20>\x20')[_0x3999a0(0x21b)]()?.[_0x3999a0(0x1ff)](':')[0x0]||_0x24e2c9['tOdys'])+'>\x20\x22'+(_0x5bd688['domRef'][_0x3999a0(0x257)]||'')[_0x3999a0(0x243)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x5bd688['id']+']\x20**'+_0x2fc67b+_0x3999a0(0x200)+_0x237774+_0x3999a0(0x1cb)+_0x5bd688[_0x3999a0(0x1bf)]+'\x22'+_0x4b8b3c;})[_0xffdd30(0x22e)]('\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'+_0x580fef;}function buildNovaSharedOptionsInstruction(_0x1e53f6){const _0x3e44bf=_0x490272;if(!_0x1e53f6[_0x3e44bf(0x1f3)]())return _0x3e44bf(0x1b5);return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x1e53f6;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x200713){const _0x34e38c=_0x490272,_0x2de002={'tmKfA':_0x34e38c(0x1ed),'jxDrk':function(_0x18d336,_0x1310c6,_0x28a499){return _0x18d336(_0x1310c6,_0x28a499);},'yCBZd':_0x34e38c(0x274),'eBKhl':'02_final-state.yml','vulDc':'03_final-state.png','HpizV':function(_0x14fa77,_0x1b787d){return _0x14fa77(_0x1b787d);},'Borvb':function(_0xd5e3a6,_0x532b70){return _0xd5e3a6(_0x532b70);}},{novaCommandPrefix:_0x5b6d52,novaSharedOptionsSuffix:_0x4429c8,cliArtifactDir:_0x165c59,url:_0x105f4c}=_0x200713,_0x2edb3d=buildCliArtifactPath(_0x165c59,_0x2de002[_0x34e38c(0x232)]),_0x8e6255=_0x2de002[_0x34e38c(0x285)](buildCliArtifactPath,_0x165c59,_0x2de002['yCBZd']),_0x1434c1=buildCliArtifactPath(_0x165c59,_0x2de002['eBKhl']),_0x11cb72=_0x2de002[_0x34e38c(0x285)](buildCliArtifactPath,_0x165c59,_0x2de002[_0x34e38c(0x21c)]);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'+_0x5b6d52+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x4429c8)+_0x34e38c(0x27a)+_0x5b6d52+_0x34e38c(0x1f8)+_0x2de002[_0x34e38c(0x271)](quoteShellArg,_0x105f4c)+'\x20'+_0x4429c8+'`\x0a2.\x20Run\x20`'+_0x5b6d52+_0x34e38c(0x241)+_0x2de002[_0x34e38c(0x271)](quoteShellArg,_0x2edb3d)+'\x20'+_0x4429c8+_0x34e38c(0x240)+_0x5b6d52+_0x34e38c(0x290)+_0x2de002['Borvb'](quoteShellArg,_0x8e6255)+'\x20'+_0x4429c8+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x5b6d52+_0x34e38c(0x221)+_0x5b6d52+'\x20snapshot\x20--output\x20'+_0x2de002[_0x34e38c(0x1ee)](quoteShellArg,_0x1434c1)+'\x20'+_0x4429c8+'`\x0a6.\x20Run\x20`'+_0x5b6d52+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x11cb72)+'\x20'+_0x4429c8+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0x165c59+_0x34e38c(0x1da);}export function buildVerifyFeatureNovaCliPrompt(_0xcfc5de){const _0x1bd671=_0x490272,_0x27a4a2={'KGDdq':_0x1bd671(0x219),'YIpBN':function(_0x2781e9,_0x3b10f4,_0x26a965){return _0x2781e9(_0x3b10f4,_0x26a965);},'Jqfzp':function(_0x56105e,_0x27ad7a){return _0x56105e(_0x27ad7a);},'pgcKx':function(_0x43d62d,_0x1307e9){return _0x43d62d(_0x1307e9);}},{checklistItem:_0x42ac07,itemFeedback:_0x4fbe11,taskDescription:_0x36562d,novaCommandPrefix:_0x41dd86,novaSharedOptionsSuffix:_0x1287c1,cliArtifactDir:_0x609266,url:_0x5be115,loginInstructions:_0x58040f}=_0xcfc5de,_0x1c931d=_0x42ac07['notes']?_0x1bd671(0x1ec)+_0x42ac07[_0x1bd671(0x23d)]:'',_0x3465a5=buildFeedbackSection(_0x4fbe11),_0x207e1d=_0x4fbe11?.['canonicalFlow']?_0x1bd671(0x266)+_0x4fbe11['canonicalFlow']:'',_0x2b0df1=_0x58040f?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x58040f+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x2b82fb=buildCliArtifactPath(_0x609266,_0x27a4a2[_0x1bd671(0x1ef)]),_0x1b8f6e=_0x27a4a2[_0x1bd671(0x1d0)](buildCliArtifactPath,_0x609266,_0x1bd671(0x274)),_0x3f9da1=buildCliArtifactPath(_0x609266,'key_03_success-state.png');return _0x1bd671(0x214)+_0x42ac07[_0x1bd671(0x242)]+_0x1c931d+_0x3465a5+_0x207e1d+_0x1bd671(0x1f5)+_0x36562d+_0x1bd671(0x1fd)+_0x5be115+'\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'+_0x2b0df1+'\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`'+_0x41dd86+_0x1bd671(0x1f8)+_0x27a4a2['Jqfzp'](quoteShellArg,_0x5be115)+'\x20'+_0x1287c1+_0x1bd671(0x1e3)+_0x609266+_0x1bd671(0x1c5)+_0x41dd86+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x2b82fb)+'\x20'+_0x1287c1+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x41dd86+_0x1bd671(0x290)+_0x27a4a2[_0x1bd671(0x1b1)](quoteShellArg,_0x1b8f6e)+'\x20'+_0x1287c1+'`.\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`'+_0x3f9da1+'`.\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`'+_0x41dd86+_0x1bd671(0x26b)+(_0x1287c1[_0x1bd671(0x1f3)]()?'`'+_0x1287c1+'`':'`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`')+'\x0a\x0a'+_0x27a4a2['pgcKx'](buildNovaSharedOptionsInstruction,_0x1287c1)+'\x0a\x0aExamples:\x0a-\x20`'+_0x41dd86+_0x1bd671(0x209)+_0x1287c1+'`\x0a-\x20`'+_0x41dd86+_0x1bd671(0x278)+_0x1287c1+_0x1bd671(0x210)+_0x41dd86+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x2b82fb)+'\x20'+_0x1287c1+_0x1bd671(0x210)+_0x41dd86+_0x1bd671(0x290)+quoteShellArg(_0x3f9da1)+'\x20'+_0x1287c1+'`\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(_0x5cef95){const _0x4d119f=_0x490272,_0x450120=[..._0x5cef95['keys']()][_0x4d119f(0x1e1)]();let _0x455caa=0x0;for(const _0x37a5b3 of _0x5cef95[_0x4d119f(0x287)]()){_0x455caa+=_0x37a5b3;}return{'cliCommandCount':_0x455caa,'cliCommandsSeen':_0x450120,'noCliCommandsCalled':_0x455caa===0x0};}export function createVerifyFeatureNovaCliHooks(_0x53d66d,_0xc0c9ec){const _0x1a853e=_0x490272,_0x44cbd4={'SPORn':function(_0x3b80a2,_0x9cef96){return _0x3b80a2!==_0x9cef96;},'kILFI':_0x1a853e(0x1bd),'gXLzQ':function(_0x16eec3,_0x3f6c31){return _0x16eec3(_0x3f6c31);},'RQzUW':function(_0xd4a808,_0x3f9242){return _0xd4a808(_0x3f9242);},'RWJmw':_0x1a853e(0x1f0),'GizLs':function(_0x16261c,_0x4b7407){return _0x16261c(_0x4b7407);},'Pqusj':'nova_act_command','tvGRB':function(_0x9ad342,_0x4a3e7f){return _0x9ad342(_0x4a3e7f);},'FEIot':_0x1a853e(0x255),'zBgdK':_0x1a853e(0x229),'PFAUT':'PostToolUseFailure'},_0x20c037=new Map(),_0xfb7d8f=async _0x2df5df=>{const _0x4bb78d=_0x1a853e;if(_0x44cbd4[_0x4bb78d(0x1ba)](_0x2df5df[_0x4bb78d(0x294)],_0x4bb78d(0x262)))return{};const _0x50d37f=_0x2df5df;if(_0x44cbd4['SPORn'](_0x50d37f[_0x4bb78d(0x20b)],_0x44cbd4['kILFI']))return{};const _0xe1bd29=_0x50d37f[_0x4bb78d(0x1c3)],_0x3ff26c=_0x44cbd4['gXLzQ'](extractBashCommand,_0xe1bd29);if(!_0x3ff26c)return{};const _0x119d88=_0x44cbd4[_0x4bb78d(0x213)](getNovaActCliCommandBlockReason,_0x3ff26c);if(!_0x119d88)return{};return{'decision':_0x4bb78d(0x22d),'reason':_0x119d88};},_0x1fdf52=async _0x446e3d=>{const _0x59ab2e=_0x1a853e;if(_0x446e3d[_0x59ab2e(0x294)]!==_0x44cbd4[_0x59ab2e(0x205)])return{};const _0x1991fc=_0x446e3d;if(_0x1991fc[_0x59ab2e(0x20b)]!==_0x44cbd4['kILFI'])return{};const _0x353c6e=_0x1991fc[_0x59ab2e(0x1c3)],_0x3837f5=extractBashCommand(_0x353c6e);if(!_0x3837f5)return{};const _0x10f187=_0x44cbd4['GizLs'](parseNovaActCliCommand,_0x3837f5);if(!_0x10f187)return{};_0x20c037[_0x59ab2e(0x1e2)](_0x10f187,(_0x20c037[_0x59ab2e(0x286)](_0x10f187)||0x0)+0x1),_0x53d66d[_0x59ab2e(0x24f)](_0x59ab2e(0x261),{'subcommand':_0x10f187}),_0x53d66d[_0x59ab2e(0x1ac)](_0x44cbd4['Pqusj'],{'subcommand':_0x10f187,'commandPreview':_0x44cbd4['tvGRB'](previewNovaActCliCommand,_0x3837f5)}),console[_0x59ab2e(0x1e4)](_0x59ab2e(0x1f4)+formatNovaActCliLog(_0x3837f5,_0x10f187));if(_0x10f187===_0x44cbd4['FEIot']&&_0xc0c9ec)try{await _0xc0c9ec['start']();}catch(_0x4411bc){await _0x53d66d[_0x59ab2e(0x28b)]('nova_act_artifact_recording',_0x4411bc,{'transport':_0x44cbd4[_0x59ab2e(0x244)]});}return{};},_0x7adcff=async _0x1285c=>{const _0x242346=_0x1a853e;if(_0x1285c[_0x242346(0x294)]!==_0x44cbd4[_0x242346(0x27e)])return{};const _0x1ee7f0=_0x1285c;if(_0x1ee7f0['tool_name']!==_0x242346(0x1bd))return{};return await _0x53d66d[_0x242346(0x28b)]('nova_act_command_failure',_0x1ee7f0['error'],{'transport':_0x44cbd4[_0x242346(0x244)],'toolName':_0x44cbd4['kILFI']}),{};};return{'preToolUseHook':_0xfb7d8f,'postToolUseHook':_0x1fdf52,'postToolUseFailureHook':_0x7adcff,'commandCounts':_0x20c037};}async function runNovaLifecycleCommand(_0xdd2f8b){const _0xb07343=_0x490272,_0x19d9b6={'JREqt':function(_0x351d3b,_0x402c7f){return _0x351d3b??_0x402c7f;},'YSgLe':function(_0x5005e9,_0x937aef){return _0x5005e9(_0x937aef);}},{novaOptions:_0x44c72b,commandArgs:_0x473db7,telemetry:_0x46530c,phase:_0x50b777,metadata:_0x44e50c,timeoutMs:_0x28a438}=_0xdd2f8b;_0x46530c['trackPhaseStart'](_0x50b777,_0x44e50c);try{const _0x1c96e0=await runNovaActCliCommand({..._0x44c72b,'commandArgs':_0x473db7,'cwd':process[_0xb07343(0x246)](),'env':process[_0xb07343(0x23b)],'timeoutMs':_0x19d9b6[_0xb07343(0x26e)](_0x28a438,NOVA_ACT_CLI_COMMAND_TIMEOUT_MS)});_0x46530c['trackPhaseEnd'](_0x50b777,{..._0x44e50c,'subcommand':_0x1c96e0[_0xb07343(0x23f)][_0xb07343(0x1d3)],'commandPreview':previewNovaActCliCommand(_0x1c96e0[_0xb07343(0x23f)][_0xb07343(0x26d)]),'stdoutPreview':previewNovaActCliCommand(_0x1c96e0['stdout']),'stderrPreview':_0x19d9b6[_0xb07343(0x293)](previewNovaActCliCommand,_0x1c96e0[_0xb07343(0x238)]),'logDir':extractNovaActLogDir(_0x1c96e0['stdout'])});}catch(_0x25b247){await _0x46530c[_0xb07343(0x28b)](_0x50b777,_0x25b247,_0x44e50c);throw _0x25b247;}}export async function finalizeVerifyFeatureNovaCliSession(_0x1f2c61){const _0xe123ad=_0x490272,_0x1f088a={'yemhX':'nova_act_final_screenshot','LuVTE':'--output','ccPdj':'key_final-state.png','EFoeO':_0xe123ad(0x222),'daSrl':_0xe123ad(0x1cc),'BhlHV':_0xe123ad(0x1ce),'GOrZU':_0xe123ad(0x234),'xmqEt':'json','KhnNG':_0xe123ad(0x20a),'SbosX':function(_0xced276,_0x6ac20d,_0x5d89de){return _0xced276(_0x6ac20d,_0x5d89de);},'NBYAn':_0xe123ad(0x281),'TGSAm':_0xe123ad(0x28a),'lmeGa':function(_0x1e986c,_0x4eb472){return _0x1e986c===_0x4eb472;},'lMLgw':function(_0x210c01,_0x164f39){return _0x210c01(_0x164f39);}},{telemetry:_0x448ec8,novaOptions:_0x3d48aa,cliArtifactDir:_0x243883,transportMetadata:_0xd19981,artifactRecorder:_0x3225fa}=_0x1f2c61,_0x5d69bf=[{'phase':_0x1f088a['yemhX'],'commandArgs':['screenshot',_0x1f088a[_0xe123ad(0x228)],buildCliArtifactPath(_0x243883,_0x1f088a[_0xe123ad(0x1f9)])]},{'phase':'nova_act_final_snapshot','commandArgs':[_0x1f088a[_0xe123ad(0x24a)],'--output',buildCliArtifactPath(_0x243883,'final-state.yaml')]},{'phase':_0x1f088a[_0xe123ad(0x1df)],'commandArgs':[_0x1f088a[_0xe123ad(0x1dd)],_0x1f088a['GOrZU'],'--format',_0x1f088a['xmqEt'],_0x1f088a['LuVTE'],buildCliArtifactPath(_0x243883,_0xe123ad(0x1e7))]},{'phase':_0x1f088a[_0xe123ad(0x21f)],'commandArgs':['session',_0xe123ad(0x234),_0xe123ad(0x1f6),'--output-dir',_0x1f088a['SbosX'](buildCliArtifactPath,_0x243883,_0x1f088a[_0xe123ad(0x1c9)])]},{'phase':_0x1f088a['TGSAm'],'commandArgs':[_0x1f088a['BhlHV'],_0xe123ad(0x1d5)]}];for(const _0x5db3fe of _0x5d69bf){_0x1f088a[_0xe123ad(0x267)](_0x5db3fe['phase'],'nova_act_session_close')&&await _0x3225fa?.[_0xe123ad(0x253)]();try{await _0x1f088a[_0xe123ad(0x280)](runNovaLifecycleCommand,{'novaOptions':_0x3d48aa,'commandArgs':[..._0x5db3fe[_0xe123ad(0x25b)]],'telemetry':_0x448ec8,'phase':_0x5db3fe['phase'],'metadata':_0xd19981});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0xa17270){const _0x3854ed=_0x490272,_0x5d1389={'CiXIu':function(_0x2ce003,_0x339d9f,_0x55c5b1){return _0x2ce003(_0x339d9f,_0x55c5b1);},'UeBkD':function(_0x27f486,_0x339f53){return _0x27f486(_0x339f53);},'fhirq':function(_0x3e1be9,_0x3042f0){return _0x3e1be9<_0x3042f0;},'dQwTU':function(_0x34572a,_0x1c40d3){return _0x34572a+_0x1c40d3;},'ACBfl':function(_0xbd7a9a,_0xb263ee){return _0xbd7a9a===_0xb263ee;},'BwOqJ':function(_0x4468a2,_0x2fa3a2,_0x3c1a43){return _0x4468a2(_0x2fa3a2,_0x3c1a43);}},{cwd:_0xd754c0,cliArtifactDir:_0xc0a0e5,startTime:_0x210a58}=_0xa17270,_0x5bb712=[];await _0x5d1389[_0x3854ed(0x273)](mkdir,_0xc0a0e5,{'recursive':!![]});const _0x422304=await _0x5d1389['CiXIu'](readdir,_0xd754c0,{'withFileTypes':!![]});for(const _0x13b898 of _0x422304){if(!_0x13b898[_0x3854ed(0x1fb)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x3854ed(0x248)](_0x13b898[_0x3854ed(0x1a9)]))continue;const _0x357404=_0x5d1389['CiXIu'](join,_0xd754c0,_0x13b898['name']),_0x402a4f=await _0x5d1389[_0x3854ed(0x1f1)](stat,_0x357404);if(_0x5d1389['fhirq'](_0x5d1389[_0x3854ed(0x207)](_0x402a4f[_0x3854ed(0x289)],0x7d0),_0x210a58))continue;const _0x2c4c4f=_0x5d1389[_0x3854ed(0x273)](buildCliArtifactPath,_0xc0a0e5,_0x13b898[_0x3854ed(0x1a9)]);if(_0x5d1389[_0x3854ed(0x1f2)](_0x357404,_0x2c4c4f))continue;await _0x5d1389[_0x3854ed(0x20c)](rename,_0x357404,_0x2c4c4f),_0x5bb712[_0x3854ed(0x1af)](_0x13b898['name']);}return _0x5bb712['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x3507cf){const _0x598501=_0x490272,_0x28b11c={'wNDVs':function(_0x430dea,_0x3f45e5,_0xd90a36){return _0x430dea(_0x3f45e5,_0xd90a36);}},_0x38dd53=_0x28b11c[_0x598501(0x1bc)](join,_0x3507cf,'trace.zip');try{return{'buffer':await readFile(_0x38dd53),'source':_0x38dd53};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0x3507cf),'source':_0x3507cf};}}function _0x30a6(_0xad4793,_0x1f38bb){_0xad4793=_0xad4793-0x1a9;const _0xec7a8a=_0xec7a();let _0x30a6f4=_0xec7a8a[_0xad4793];return _0x30a6f4;}async function zipVerifyFeatureNovaArtifacts(_0x266468){const _0x201acf=_0x490272,_0x50514a={'sThGc':'zip','yocUD':_0x201acf(0x215),'KHrhx':function(_0x8c8289,_0x2f8222){return _0x8c8289(_0x2f8222);}},_0x32e24e=join(_0x266468,'..',_0x201acf(0x1cd));try{return await execFileAsync(_0x50514a[_0x201acf(0x256)],[_0x50514a[_0x201acf(0x1b3)],_0x32e24e,'.','-x',_0x201acf(0x1de)],{'cwd':_0x266468}),await _0x50514a['KHrhx'](readFile,_0x32e24e);}finally{await rm(_0x32e24e,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x4d8c3a){const _0x4ab81c=_0x490272,_0x17fb25={'jdFco':function(_0x1dc33e,_0x44073b){return _0x1dc33e(_0x44073b);},'mWQRP':function(_0x2e7463,_0x7157a1,_0x1e988f){return _0x2e7463(_0x7157a1,_0x1e988f);}},_0x208898=buildNovaActCliInvocation(_0x4d8c3a['novaOptions'],_0x4d8c3a[_0x4ab81c(0x25b)]);return{'command':_0x208898['command'],'args':_0x208898['args'],'commandPreview':_0x17fb25[_0x4ab81c(0x1cf)](previewNovaActCliCommand,_0x208898['shellCommand']),'subcommand':_0x208898[_0x4ab81c(0x1d3)],'sharedOptionsSuffix':_0x17fb25[_0x4ab81c(0x22c)](buildNovaActCliSharedOptionsSuffix,_0x4d8c3a[_0x4ab81c(0x245)],_0x4d8c3a['commandArgs'])};}
|
|
1
|
+
const _0x454f28=_0x3ae9;(function(_0x584ed0,_0xeaf2ce){const _0x4a4ab6=_0x3ae9,_0x3113f3=_0x584ed0();while(!![]){try{const _0x29e58a=parseInt(_0x4a4ab6(0x246))/0x1*(-parseInt(_0x4a4ab6(0x212))/0x2)+-parseInt(_0x4a4ab6(0x19d))/0x3*(-parseInt(_0x4a4ab6(0x236))/0x4)+-parseInt(_0x4a4ab6(0x22f))/0x5*(parseInt(_0x4a4ab6(0x185))/0x6)+parseInt(_0x4a4ab6(0x18b))/0x7+-parseInt(_0x4a4ab6(0x202))/0x8+parseInt(_0x4a4ab6(0x220))/0x9+parseInt(_0x4a4ab6(0x178))/0xa;if(_0x29e58a===_0xeaf2ce)break;else _0x3113f3['push'](_0x3113f3['shift']());}catch(_0x112a20){_0x3113f3['push'](_0x3113f3['shift']());}}}(_0x578b,0x4153d));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';function _0x3ae9(_0xff66a4,_0x2317cd){_0xff66a4=_0xff66a4-0x16d;const _0x578b98=_0x578b();let _0x3ae951=_0x578b98[_0xff66a4];return _0x3ae951;}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',_0x454f28(0x1fd),'verify',_0x454f28(0x1c5),'goto',_0x454f28(0x16e),_0x454f28(0x239),_0x454f28(0x1b1)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x242ac3,_0x4cc930){const _0x593ec8={'pmxXn':function(_0x37279c,_0x4ac661,_0x1a2cb0){return _0x37279c(_0x4ac661,_0x1a2cb0);}};return _0x593ec8['pmxXn'](join,_0x242ac3,_0x4cc930);}export class NovaActArtifactRecorder{[_0x454f28(0x184)];[_0x454f28(0x189)]=null;[_0x454f28(0x1c3)]=null;[_0x454f28(0x1ad)]=null;['frameWrites']=[];[_0x454f28(0x1f2)]=0x0;[_0x454f28(0x196)]=0x0;[_0x454f28(0x225)]=null;['traceSampleInFlight']=null;[_0x454f28(0x17b)]=![];[_0x454f28(0x1e6)]=![];['startAttempted']=![];[_0x454f28(0x21b)]=![];constructor(_0x59a947){this['params']=_0x59a947;}async[_0x454f28(0x22c)](){const _0x46053a=_0x454f28,_0x358bc2={'jUZuv':_0x46053a(0x1c9),'ginfV':'nova_act_artifact_recording'};if(this[_0x46053a(0x22b)])return;this[_0x46053a(0x22b)]=!![];const _0x57b43f=await this['readSessionMetadataWithRetry'](),_0x5ebb43=_0x57b43f[_0x46053a(0x1e1)];if(!_0x5ebb43)throw new Error(_0x46053a(0x1f1)+this['params']['novaOptions'][_0x46053a(0x1da)]);await mkdir(this['params']['cliArtifactDir'],{'recursive':!![]}),this['browser']=await chromium[_0x46053a(0x1be)](_0x5ebb43,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x46053a(0x1c3)]=this[_0x46053a(0x189)]['contexts']()[0x0]??null;if(!this['context'])throw new Error(_0x358bc2['jUZuv']);await this[_0x46053a(0x1c3)]['tracing'][_0x46053a(0x22c)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x46053a(0x18e)](),await this[_0x46053a(0x1ea)](),this['params'][_0x46053a(0x1e3)]['trackPhaseStart'](_0x358bc2[_0x46053a(0x1d5)],{...this[_0x46053a(0x184)][_0x46053a(0x1fb)],'cdpEndpoint':_0x5ebb43,'browserPid':_0x57b43f[_0x46053a(0x24d)],'sessionState':_0x57b43f['state']}),this['params'][_0x46053a(0x1e3)][_0x46053a(0x1d3)]('nova_act_artifact_recording',{...this['params']['transportMetadata'],'tracingStarted':this[_0x46053a(0x17b)],'screencastStarted':this['screencastStarted']});}async['stop'](){const _0x11cabf=_0x454f28,_0xe6320e={'dbwmV':_0x11cabf(0x1e4),'tWsRh':function(_0x7c1cab,_0x3b0db8,_0xb5ac4b){return _0x7c1cab(_0x3b0db8,_0xb5ac4b);},'COxHN':'trace.zip'};if(this['stopped'])return;this[_0x11cabf(0x21b)]=!![];const _0x79475f={...this['params'][_0x11cabf(0x1fb)],'frameCount':this[_0x11cabf(0x1f2)],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this[_0x11cabf(0x17b)],'screencastStarted':this['screencastStarted']};this['params'][_0x11cabf(0x1e3)]['trackPhaseStart'](_0xe6320e[_0x11cabf(0x1c0)],_0x79475f);try{await this['stopTraceSampling'](),await this['captureTraceSample'](),await this[_0x11cabf(0x1bf)](),await Promise['allSettled'](this[_0x11cabf(0x206)]);this['context']&&this[_0x11cabf(0x17b)]&&await this[_0x11cabf(0x1c3)]['tracing'][_0x11cabf(0x1dc)]({'path':_0xe6320e[_0x11cabf(0x232)](buildCliArtifactPath,this['params']['cliArtifactDir'],_0xe6320e['COxHN'])});const _0x12db51=await this[_0x11cabf(0x1c4)]();this[_0x11cabf(0x184)]['telemetry'][_0x11cabf(0x1d3)]('nova_act_artifact_recording_stop',{..._0x79475f,'videoPath':_0x12db51});}catch(_0x20fd9b){await this[_0x11cabf(0x184)]['telemetry'][_0x11cabf(0x17d)](_0xe6320e['dbwmV'],_0x20fd9b,_0x79475f);}finally{await this[_0x11cabf(0x189)]?.['close']()['catch'](()=>undefined),this['browser']=null,this[_0x11cabf(0x1c3)]=null,this[_0x11cabf(0x1ad)]=null;}}async[_0x454f28(0x177)](){const _0x2d3c09=_0x454f28,_0x5e4328={'qvuZr':function(_0x5df4b2,_0x230b25,_0x1710ea,_0x40cb49,_0x55128c,_0x17f665){return _0x5df4b2(_0x230b25,_0x1710ea,_0x40cb49,_0x55128c,_0x17f665);},'KHGNN':_0x2d3c09(0x189),'BdVOt':function(_0x86533,_0x1bacf6,_0x399a0e){return _0x86533(_0x1bacf6,_0x399a0e);},'ttFqh':'utf-8','OcApE':function(_0x5bb9db,_0x4ea90e){return _0x5bb9db(_0x4ea90e);},'qOtPB':function(_0x54a803,_0x56b479){return _0x54a803<_0x56b479;},'TOJSt':function(_0x2774e3,_0x122af0){return _0x2774e3 instanceof _0x122af0;}},_0x3f9890=_0x5e4328['qvuZr'](join,homedir(),'.act_cli',_0x5e4328[_0x2d3c09(0x19a)],_0x2d3c09(0x1a4),this[_0x2d3c09(0x184)][_0x2d3c09(0x1b3)]['sessionId']+'.json'),_0x58cf8d=Date[_0x2d3c09(0x237)]();let _0x634fea;do{try{const _0x5a2bd3=JSON[_0x2d3c09(0x203)](await _0x5e4328['BdVOt'](readFile,_0x3f9890,_0x5e4328['ttFqh']));if(_0x5a2bd3['cdp_endpoint'])return _0x5a2bd3;_0x634fea=new Error(_0x2d3c09(0x243)+_0x3f9890);}catch(_0x40461b){_0x634fea=_0x40461b;}await _0x5e4328['OcApE'](delay,0x64);}while(_0x5e4328[_0x2d3c09(0x23d)](Date[_0x2d3c09(0x237)]()-_0x58cf8d,NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x5e4328[_0x2d3c09(0x233)](_0x634fea,Error))throw _0x634fea;throw new Error(_0x2d3c09(0x1dd)+_0x3f9890);}async[_0x454f28(0x1ea)](){const _0x338980=_0x454f28,_0x2ef88e={'TGiJu':function(_0x2b5268,_0x5ba5bf){return _0x2b5268(_0x5ba5bf);},'MVBMt':function(_0x507d91,_0x440366,_0x27ef9f){return _0x507d91(_0x440366,_0x27ef9f);},'rsHyz':function(_0x5fd1db,_0x172380,_0x5c304e){return _0x5fd1db(_0x172380,_0x5c304e);},'FljDo':'Page.screencastFrame','bLmIn':_0x338980(0x231)};if(!this[_0x338980(0x1c3)])return;const _0xace71b=this[_0x338980(0x1c3)][_0x338980(0x19b)]()[0x0];if(!_0xace71b)return;const _0x3900c0=this['getFrameDir']();await _0x2ef88e[_0x338980(0x207)](mkdir,_0x3900c0,{'recursive':!![]});const _0x466957=await this[_0x338980(0x1c3)][_0x338980(0x229)](_0xace71b);this[_0x338980(0x1ad)]=_0x466957,_0x466957['on'](_0x2ef88e[_0x338980(0x23c)],_0x190cf1=>{const _0x370448=_0x338980,_0x2368d3=++this[_0x370448(0x1f2)],_0x51aef2=join(_0x3900c0,_0x370448(0x1de)+_0x2ef88e[_0x370448(0x1e5)](String,_0x2368d3)['padStart'](0x6,'0')+'.jpg'),_0x47f4da=_0x2ef88e[_0x370448(0x24b)](writeFile,_0x51aef2,Buffer['from'](_0x190cf1['data'],'base64'))['catch'](()=>undefined)['finally'](()=>_0x466957[_0x370448(0x1fc)](_0x370448(0x1d7),{'sessionId':_0x190cf1['sessionId']}))['then'](()=>undefined)[_0x370448(0x209)](()=>undefined);this['frameWrites']['push'](_0x47f4da);}),await _0x466957['send']('Page.startScreencast',{'format':_0x2ef88e['bLmIn'],'quality':0x4b,'everyNthFrame':0x6}),this['screencastStarted']=!![];}async['stopScreencast'](){const _0x1736d2=_0x454f28;if(!this[_0x1736d2(0x1ad)]||!this[_0x1736d2(0x1e6)])return;await this['frameSession'][_0x1736d2(0x1fc)](_0x1736d2(0x176))[_0x1736d2(0x209)](()=>undefined);}[_0x454f28(0x18e)](){const _0x557f8e=_0x454f28;this['queueTraceSample'](),this['traceSampleTimer']=setInterval(()=>this[_0x557f8e(0x204)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x454f28(0x204)](){if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this['captureTraceSample']()['finally'](()=>{const _0x2312e3=_0x3ae9;this[_0x2312e3(0x222)]=null;});}async[_0x454f28(0x221)](){const _0x3eaec9=_0x454f28;this[_0x3eaec9(0x225)]&&(clearInterval(this[_0x3eaec9(0x225)]),this[_0x3eaec9(0x225)]=null),await this['traceSampleInFlight']?.[_0x3eaec9(0x209)](()=>undefined);}async[_0x454f28(0x248)](){const _0x405c0c=_0x454f28,_0x48f331=this[_0x405c0c(0x1c3)]?.[_0x405c0c(0x19b)]()[0x0];if(!_0x48f331)return;try{await _0x48f331[_0x405c0c(0x1bb)](_0x405c0c(0x21a))[_0x405c0c(0x1e8)](_0x2345ff=>_0x2345ff[_0x405c0c(0x16f)],undefined,{'timeout':0x3e8}),this[_0x405c0c(0x196)]++;}catch{}}async[_0x454f28(0x1c4)](){const _0x583966=_0x454f28,_0x5a9ea0={'Owtmq':function(_0x17be28,_0x41dad0){return _0x17be28<_0x41dad0;},'iqoho':function(_0x379320){return _0x379320();},'UQxZm':function(_0x1abbc0,_0x205804,_0x113e82){return _0x1abbc0(_0x205804,_0x113e82);},'QquFV':'videos','SCFTA':'error','ZXLVi':'-framerate','NpYlP':'-vf','ZXgBa':'-c:v','oSMJN':_0x583966(0x23a),'OFBVs':_0x583966(0x1d1)};if(_0x5a9ea0[_0x583966(0x1b4)](this[_0x583966(0x1f2)],0x2))return null;const _0x137fb0=await _0x5a9ea0[_0x583966(0x22e)](resolveFfmpegPath);if(!_0x137fb0)return null;const _0x156ccf=_0x5a9ea0[_0x583966(0x174)](join,this['params'][_0x583966(0x1ef)],_0x5a9ea0['QquFV']);await mkdir(_0x156ccf,{'recursive':!![]});const _0x5bebef=join(_0x156ccf,'session-recording.webm');return await execFileAsync(_0x137fb0,['-y',_0x583966(0x192),_0x583966(0x244),_0x5a9ea0['SCFTA'],_0x5a9ea0[_0x583966(0x1d0)],'10','-i',join(this[_0x583966(0x216)](),_0x583966(0x19f)),_0x5a9ea0['NpYlP'],'scale=trunc(iw/2)*2:trunc(ih/2)*2',_0x5a9ea0['ZXgBa'],_0x5a9ea0[_0x583966(0x1ce)],_0x5a9ea0[_0x583966(0x22d)],_0x583966(0x1a1),_0x5bebef]),_0x5bebef;}['getFrameDir'](){const _0x118115=_0x454f28,_0x33da93={'kBeDA':function(_0x52e8e9,_0x336f52,_0x122ea0){return _0x52e8e9(_0x336f52,_0x122ea0);}};return _0x33da93[_0x118115(0x17c)](join,this[_0x118115(0x184)]['cliArtifactDir'],'nova-video-frames');}}async function delay(_0x158740){await new Promise(_0x1a65b1=>setTimeout(_0x1a65b1,_0x158740));}async function resolveFfmpegPath(){const _0x5bf1b4=_0x454f28,_0x5ce3e1={'phTXo':function(_0x2b9732,_0x171c8f){return _0x2b9732(_0x171c8f);},'IlfAz':_0x5bf1b4(0x20e),'IxfAI':_0x5bf1b4(0x205)};if(await _0x5ce3e1[_0x5bf1b4(0x1fa)](canRunFfmpeg,_0x5ce3e1[_0x5bf1b4(0x1ec)]))return _0x5bf1b4(0x20e);const _0x383c09=[join(homedir(),'Library',_0x5bf1b4(0x1ae),'ms-playwright'),join(homedir(),'.cache',_0x5ce3e1['IxfAI'])];for(const _0x428c9c of _0x383c09){try{const _0x529259=await readdir(_0x428c9c),_0x18fe0e=_0x529259[_0x5bf1b4(0x214)](_0x1aa25f=>_0x1aa25f['startsWith']('ffmpeg-'))[_0x5bf1b4(0x235)]()[_0x5bf1b4(0x1a3)]()['flatMap'](_0x10eb6d=>[join(_0x428c9c,_0x10eb6d,'ffmpeg-mac'),join(_0x428c9c,_0x10eb6d,'ffmpeg-linux'),join(_0x428c9c,_0x10eb6d,'ffmpeg.exe')]);for(const _0x384ccc of _0x18fe0e){if(await canRunFfmpeg(_0x384ccc))return _0x384ccc;}}catch{}}return null;}async function canRunFfmpeg(_0x111c37){const _0x411038=_0x454f28,_0xa296f7={'rIWaZ':function(_0x4b27d8,_0x7495ad,_0x2e485a){return _0x4b27d8(_0x7495ad,_0x2e485a);}};try{return await _0xa296f7[_0x411038(0x1b9)](execFileAsync,_0x111c37,[_0x411038(0x193)]),!![];}catch{return![];}}function toStepDisplayName(_0x43e8c2){const _0x52252c=_0x454f28,_0x4879ff={'ALDOP':function(_0x74b5fb,_0x6ef91d){return _0x74b5fb(_0x6ef91d);}},_0xa09ce2=_0x4879ff['ALDOP'](basename,_0x43e8c2)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x52252c(0x1a6)](/^\d+_/,'')[_0x52252c(0x1a6)](/-/g,'\x20');return{'name':_0xa09ce2,'isKeyStep':/^key_/i['test'](basename(_0x43e8c2))};}function extractShellValue(_0x30b1ea){if(!_0x30b1ea)return null;return _0x30b1ea[0x1]??_0x30b1ea[0x2]??_0x30b1ea[0x3]??null;}function extractOutputOption(_0x405c00){const _0x56591e=_0x454f28;return extractShellValue(_0x405c00[_0x56591e(0x1f4)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function _0x578b(){const _0x5d0b24=['dYzqw','FljDo','qOtPB','env','cwd','unaddressedComments','motyR','error','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','-loglevel','create\x20Nova\x20browser\x20session','109913WunEJl','subcommand','captureTraceSample','jcoMi','tool_input','MVBMt','\x0a\x0a##\x20Additional\x20Notes\x0a','browser_pid','PreToolUse','wait-for','tagName','tool_name','lllLb','verify','content','UQxZm','\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`','Page.stopScreencast','readSessionMetadataWithRetry','279540wTBvdM','goto','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','tracingStarted','kBeDA','trackPhaseError','createdAt','hook_event_name','\x0a\x0aExamples:\x0a-\x20`','MEjOa','WUrKJ','oRQJM','params','150HwOWWg','Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a','gVBBn','RyKFP','browser','ImXMZ','1014433wVEuMO','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','canonicalFlow','startTraceSampling','shellCommand','name','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','-hide_banner','-version','pjUrx','--report','traceSampleCount','json','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a','KHGNN','pages','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.','99CwNwXV','\x20snapshot\x20--output\x20','frame-%06d.jpg','`\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.','yuv420p','session','reverse','sessions','join','replace','LnIjC','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','nova_act_artifact_recording','UZlqj','-\x20[','frameSession','Caches','ZArjl','description','screenshot','`\x0a4.\x20Run\x20one\x20batched\x20`','novaOptions','Owtmq','capture\x20snapshot','nova-artifacts.zip','bJOdv','args','rIWaZ','set','locator','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','NJoJq','connectOverCDP','stopScreencast','dbwmV','jkZeP','notes','context','encodeScreencastVideo','ask','qHuuk','HnoBd','mtimeMs','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','stdout','trackPhaseStart','YNYNf','whxCz','oSMJN','domRef','ZXLVi','-pix_fmt','UqGsE','trackPhaseEnd','JyPDa','ginfV','element','Page.screencastFrameAck','LWkmp','trace.zip','sessionId','selector','stop','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','frame-','wait\x20for\x20page\x20condition','export','cdp_endpoint','sTKtC','telemetry','nova_act_artifact_recording_stop','TGiJu','screencastStarted','>\x20\x22','evaluate','03_final-state.png','startScreencast','test','IlfAz','--output','MMJFo','cliArtifactDir','nova_act_command','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','frameCount','qghzz','match','Wrjor','bisba','\x20>\x20','nova_act_session_close','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.','phTXo','transportMetadata','send','execute','commandArgs','capture\x20screenshot','`.\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`','zANsL','2278816VgeHGT','parse','queueTraceSample','ms-playwright','frameWrites','rsHyz','zip','catch','\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','pop','phase','invocation','ffmpeg','split','nova-act-cli','toLocaleDateString','2JcpgOI','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','filter','ucdPl','getFrameDir','kAPpB','\x20screenshot\x20--output\x20','push','body','stopped','command','navigate\x20browser','key_final-state.png','BXsUv','1299519ZRKjlA','stopTraceSampling','traceSampleInFlight','values','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','traceSampleTimer','textContent','isFile','`\x0a3.\x20Run\x20`','newCDPSession','\x20session\x20create\x20','startAttempted','start','OFBVs','iqoho','16645KjzyAS','nova_act_final_snapshot','jpeg','tWsRh','TOJSt','BfiEK','sort','51916OMbzOy','now','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','snapshot','libvpx-vp9'];_0x578b=function(){return _0x5d0b24;};return _0x578b();}function formatNovaActCliLog(_0x2f7f50,_0x3d354d){const _0x44dd2a=_0x454f28,_0x388edd={'UqGsE':_0x44dd2a(0x245),'lllLb':'verify\x20page\x20condition','zANsL':function(_0xbacc8b,_0x36af3b){return _0xbacc8b(_0x36af3b);},'FwORK':function(_0x235bee,_0xfb1ade){return _0x235bee(_0xfb1ade);}};switch(_0x3d354d){case'session\x20create':return _0x388edd[_0x44dd2a(0x1d2)];case'execute':return'execute\x20Nova\x20browser\x20action';case _0x44dd2a(0x172):return _0x388edd[_0x44dd2a(0x171)];case _0x44dd2a(0x1c5):return'ask\x20page\x20question';case _0x44dd2a(0x179):return _0x44dd2a(0x21d);case'wait-for':return _0x44dd2a(0x1df);case'snapshot':{const _0x3c3d31=extractOutputOption(_0x2f7f50);if(!_0x3c3d31)return _0x44dd2a(0x1b5);const {name:_0x2c6b25}=toStepDisplayName(_0x3c3d31);return'capture\x20snapshot\x20`'+_0x2c6b25+'`';}case _0x44dd2a(0x1b1):{const _0x1575a3=_0x388edd[_0x44dd2a(0x201)](extractOutputOption,_0x2f7f50);if(!_0x1575a3)return _0x44dd2a(0x1ff);const {name:_0xb3618c,isKeyStep:_0x49842c}=_0x388edd['FwORK'](toStepDisplayName,_0x1575a3);return _0x49842c?'capture\x20key\x20step\x20`'+_0xb3618c+'`':'capture\x20step\x20`'+_0xb3618c+'`';}case'session\x20export':return'export\x20Nova\x20session';default:return _0x3d354d;}}function getNovaActCliCommandBlockReason(_0x2ee568){const _0x567454=_0x454f28,_0x54f764={'jcoMi':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','dShOe':_0x567454(0x1f9)},_0x2b6c50=parseNovaActCliCommand(_0x2ee568);if(!_0x2b6c50)return _0x54f764[_0x567454(0x249)];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS['has'](_0x2b6c50))return'Nova\x20command\x20`'+_0x2b6c50+'`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.';if(_0x2b6c50===_0x567454(0x172)&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x2ee568))return _0x54f764['dShOe'];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x2ee568))return _0x567454(0x213);return null;}function buildFeedbackSection(_0x4dea06){const _0x66c731=_0x454f28,_0x44ffa8={'Wrjor':'en-US','RyKFP':'numeric','jkZeP':_0x66c731(0x1f7),'BXsUv':_0x66c731(0x1d6)};if(!_0x4dea06||_0x4dea06[_0x66c731(0x240)]['length']===0x0)return'';const _0x5240d2=_0x4dea06[_0x66c731(0x240)]['map'](_0x554f53=>{const _0x28e5d5=_0x66c731,_0x109c1b=new Date(_0x554f53[_0x28e5d5(0x17e)])[_0x28e5d5(0x211)](_0x44ffa8[_0x28e5d5(0x1f5)],{'month':'short','day':_0x44ffa8[_0x28e5d5(0x188)]}),_0xfa5902=_0x554f53['authorName']||_0x554f53['authorEmail']||'Reviewer',_0x43cb86=_0x554f53[_0x28e5d5(0x1cf)]?'\x20(on\x20element:\x20<'+(_0x554f53[_0x28e5d5(0x1cf)][_0x28e5d5(0x1db)]['split'](_0x44ffa8[_0x28e5d5(0x1c1)])[_0x28e5d5(0x20b)]()?.[_0x28e5d5(0x20f)](':')[0x0]||_0x44ffa8[_0x28e5d5(0x21f)])+_0x28e5d5(0x1e7)+(_0x554f53[_0x28e5d5(0x1cf)][_0x28e5d5(0x226)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0x28e5d5(0x1ac)+_0x554f53['id']+']\x20**'+_0xfa5902+'**\x20('+_0x109c1b+'):\x20\x22'+_0x554f53[_0x28e5d5(0x173)]+'\x22'+_0x43cb86;})[_0x66c731(0x1a5)]('\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'+_0x5240d2;}function buildNovaSharedOptionsInstruction(_0x2e7333){const _0x10dab3=_0x454f28;if(!_0x2e7333['trim']())return _0x10dab3(0x19c);return _0x10dab3(0x186)+_0x2e7333;}export function buildVerifyFeatureNovaCliDebugPrompt(_0xc97456){const _0x169881=_0x454f28,_0x192416={'dYzqw':function(_0x50c6cc,_0x30ee54,_0xc6b446){return _0x50c6cc(_0x30ee54,_0xc6b446);},'bisba':'00_initial-state.yml','ZArjl':'01_initial-state.png','qHuuk':function(_0x49d39f,_0x4fffd5,_0x8ddbce){return _0x49d39f(_0x4fffd5,_0x8ddbce);},'OwDPk':'02_final-state.yml','qghzz':function(_0x25552f,_0xba8a68){return _0x25552f(_0xba8a68);}},{novaCommandPrefix:_0x44673a,novaSharedOptionsSuffix:_0xd535f8,cliArtifactDir:_0x19f499,url:_0x719748}=_0xc97456,_0x1c2b4a=_0x192416[_0x169881(0x23b)](buildCliArtifactPath,_0x19f499,_0x192416[_0x169881(0x1f6)]),_0x266423=buildCliArtifactPath(_0x19f499,_0x192416[_0x169881(0x1af)]),_0x21f064=_0x192416[_0x169881(0x1c6)](buildCliArtifactPath,_0x19f499,_0x192416['OwDPk']),_0x1ab3f7=buildCliArtifactPath(_0x19f499,_0x169881(0x1e9));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'+_0x44673a+'\x0a\x0a'+_0x192416[_0x169881(0x1f3)](buildNovaSharedOptionsInstruction,_0xd535f8)+'\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`'+_0x44673a+_0x169881(0x22a)+quoteShellArg(_0x719748)+'\x20'+_0xd535f8+'`\x0a2.\x20Run\x20`'+_0x44673a+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x1c2b4a)+'\x20'+_0xd535f8+_0x169881(0x228)+_0x44673a+'\x20screenshot\x20--output\x20'+_0x192416['qghzz'](quoteShellArg,_0x266423)+'\x20'+_0xd535f8+_0x169881(0x1b2)+_0x44673a+_0x169881(0x1a8)+_0x44673a+_0x169881(0x19e)+_0x192416['qghzz'](quoteShellArg,_0x21f064)+'\x20'+_0xd535f8+'`\x0a6.\x20Run\x20`'+_0x44673a+_0x169881(0x218)+quoteShellArg(_0x1ab3f7)+'\x20'+_0xd535f8+_0x169881(0x191)+_0x19f499+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x353eb3){const _0x1fee57=_0x454f28,_0x207d9d={'gVBBn':function(_0x25c7c1,_0x490b47){return _0x25c7c1(_0x490b47);},'WUrKJ':function(_0x382e3c,_0x5ac574,_0x48d657){return _0x382e3c(_0x5ac574,_0x48d657);},'kAPpB':'01_initial-state.png','MFHVq':_0x1fee57(0x18c),'BfiEK':function(_0x2ba099,_0xb11d25){return _0x2ba099(_0xb11d25);}},{checklistItem:_0x1f2e3f,itemFeedback:_0x32a6a7,taskDescription:_0x196ef9,novaCommandPrefix:_0x116f07,novaSharedOptionsSuffix:_0x55101d,cliArtifactDir:_0x2fd6d1,url:_0x37ce0c,loginInstructions:_0x19e2cc}=_0x353eb3,_0x292da6=_0x1f2e3f[_0x1fee57(0x1c2)]?_0x1fee57(0x24c)+_0x1f2e3f[_0x1fee57(0x1c2)]:'',_0x1df15b=_0x207d9d[_0x1fee57(0x187)](buildFeedbackSection,_0x32a6a7),_0x4ba8b4=_0x32a6a7?.['canonicalFlow']?_0x1fee57(0x238)+_0x32a6a7[_0x1fee57(0x18d)]:'',_0x5f0716=_0x19e2cc?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x19e2cc+_0x1fee57(0x198):'',_0x23ac99=_0x207d9d[_0x1fee57(0x182)](buildCliArtifactPath,_0x2fd6d1,'01_initial.yml'),_0x55ebcc=buildCliArtifactPath(_0x2fd6d1,_0x207d9d[_0x1fee57(0x217)]),_0x5f1aa9=buildCliArtifactPath(_0x2fd6d1,'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'+_0x1f2e3f[_0x1fee57(0x1b0)]+_0x292da6+_0x1df15b+_0x4ba8b4+_0x1fee57(0x224)+_0x196ef9+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x37ce0c+_0x1fee57(0x20a)+_0x5f0716+_0x1fee57(0x175)+_0x116f07+'\x20session\x20create\x20'+_0x207d9d[_0x1fee57(0x187)](quoteShellArg,_0x37ce0c)+'\x20'+_0x55101d+_0x1fee57(0x1a9)+_0x2fd6d1+'`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`'+_0x116f07+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x23ac99)+'\x20'+_0x55101d+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x116f07+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x55ebcc)+'\x20'+_0x55101d+'`.\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`'+_0x5f1aa9+_0x1fee57(0x200)+_0x116f07+_0x1fee57(0x199)+(_0x55101d['trim']()?'`'+_0x55101d+'`':_0x207d9d['MFHVq'])+'\x0a\x0a'+_0x207d9d[_0x1fee57(0x234)](buildNovaSharedOptionsInstruction,_0x55101d)+_0x1fee57(0x180)+_0x116f07+_0x1fee57(0x1bc)+_0x55101d+'`\x0a-\x20`'+_0x116f07+_0x1fee57(0x17a)+_0x55101d+'`\x0a-\x20`'+_0x116f07+'\x20snapshot\x20--output\x20'+_0x207d9d['BfiEK'](quoteShellArg,_0x23ac99)+'\x20'+_0x55101d+'`\x0a-\x20`'+_0x116f07+'\x20screenshot\x20--output\x20'+_0x207d9d[_0x1fee57(0x187)](quoteShellArg,_0x5f1aa9)+'\x20'+_0x55101d+_0x1fee57(0x1a0);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x25f80e){const _0x484267=_0x454f28,_0x1035f6={'DgMhU':function(_0x2b28c0,_0x3ef7d3){return _0x2b28c0===_0x3ef7d3;}},_0x52f91b=[..._0x25f80e['keys']()][_0x484267(0x235)]();let _0x5e48b5=0x0;for(const _0x451fad of _0x25f80e[_0x484267(0x223)]()){_0x5e48b5+=_0x451fad;}return{'cliCommandCount':_0x5e48b5,'cliCommandsSeen':_0x52f91b,'noCliCommandsCalled':_0x1035f6['DgMhU'](_0x5e48b5,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x6dc56e,_0x2774be){const _0x259925=_0x454f28,_0x435969={'LnIjC':'Bash','cOyHS':function(_0x308770,_0x34abcd){return _0x308770(_0x34abcd);},'bJOdv':'PostToolUse','whxCz':function(_0x34a149,_0x1474e1){return _0x34a149!==_0x1474e1;},'nSVvD':function(_0x41022c,_0x5bf0d0){return _0x41022c(_0x5bf0d0);},'zzncc':'session\x20create','UZlqj':_0x259925(0x1aa),'jfOsk':'nova-act-cli','LWkmp':function(_0x42cf39,_0xec2c92){return _0x42cf39!==_0xec2c92;},'MEjOa':'PostToolUseFailure','nEvlo':'nova_act_command_failure'},_0x3c30e2=new Map(),_0x465d2b=async _0x2d1370=>{const _0x4a714a=_0x259925;if(_0x2d1370[_0x4a714a(0x17f)]!==_0x4a714a(0x16d))return{};const _0x3e891b=_0x2d1370;if(_0x3e891b['tool_name']!==_0x435969['LnIjC'])return{};const _0x131428=_0x3e891b[_0x4a714a(0x24a)],_0xded53=extractBashCommand(_0x131428);if(!_0xded53)return{};const _0x271c1f=_0x435969['cOyHS'](getNovaActCliCommandBlockReason,_0xded53);if(!_0x271c1f)return{};return{'decision':'block','reason':_0x271c1f};},_0x5c7705=async _0x26688d=>{const _0x3760fc=_0x259925;if(_0x26688d[_0x3760fc(0x17f)]!==_0x435969[_0x3760fc(0x1b7)])return{};const _0x4f0e33=_0x26688d;if(_0x435969[_0x3760fc(0x1cd)](_0x4f0e33[_0x3760fc(0x170)],_0x435969['LnIjC']))return{};const _0x15d17b=_0x4f0e33['tool_input'],_0x474882=_0x435969['nSVvD'](extractBashCommand,_0x15d17b);if(!_0x474882)return{};const _0x1596ae=_0x435969['nSVvD'](parseNovaActCliCommand,_0x474882);if(!_0x1596ae)return{};_0x3c30e2[_0x3760fc(0x1ba)](_0x1596ae,(_0x3c30e2['get'](_0x1596ae)||0x0)+0x1),_0x6dc56e[_0x3760fc(0x1cb)](_0x3760fc(0x1f0),{'subcommand':_0x1596ae}),_0x6dc56e['trackPhaseEnd'](_0x3760fc(0x1f0),{'subcommand':_0x1596ae,'commandPreview':_0x435969['cOyHS'](previewNovaActCliCommand,_0x474882)}),console['log']('[nova-act-cli]\x20'+formatNovaActCliLog(_0x474882,_0x1596ae));if(_0x1596ae===_0x435969['zzncc']&&_0x2774be)try{await _0x2774be[_0x3760fc(0x22c)]();}catch(_0x1f320b){await _0x6dc56e['trackPhaseError'](_0x435969[_0x3760fc(0x1ab)],_0x1f320b,{'transport':_0x435969['jfOsk']});}return{};},_0x4f70fb=async _0x12729f=>{const _0x4c84b7=_0x259925;if(_0x435969[_0x4c84b7(0x1d8)](_0x12729f['hook_event_name'],_0x435969[_0x4c84b7(0x181)]))return{};const _0x4f25d5=_0x12729f;if(_0x4f25d5['tool_name']!=='Bash')return{};return await _0x6dc56e['trackPhaseError'](_0x435969['nEvlo'],_0x4f25d5[_0x4c84b7(0x242)],{'transport':_0x4c84b7(0x210),'toolName':_0x435969[_0x4c84b7(0x1a7)]}),{};};return{'preToolUseHook':_0x465d2b,'postToolUseHook':_0x5c7705,'postToolUseFailureHook':_0x4f70fb,'commandCounts':_0x3c30e2};}async function runNovaLifecycleCommand(_0x32a3f0){const _0x380ae3=_0x454f28,_0x5d614f={'jEYru':function(_0x5a9ca9,_0x1b5d03){return _0x5a9ca9??_0x1b5d03;},'bdmDz':function(_0x1f015f,_0x9fc465){return _0x1f015f(_0x9fc465);}},{novaOptions:_0x2e704a,commandArgs:_0x21917e,telemetry:_0x19b1b7,phase:_0x53e8e6,metadata:_0x511acc,timeoutMs:_0x574227}=_0x32a3f0;_0x19b1b7[_0x380ae3(0x1cb)](_0x53e8e6,_0x511acc);try{const _0x123639=await runNovaActCliCommand({..._0x2e704a,'commandArgs':_0x21917e,'cwd':process[_0x380ae3(0x23f)](),'env':process[_0x380ae3(0x23e)],'timeoutMs':_0x5d614f['jEYru'](_0x574227,NOVA_ACT_CLI_COMMAND_TIMEOUT_MS)});_0x19b1b7[_0x380ae3(0x1d3)](_0x53e8e6,{..._0x511acc,'subcommand':_0x123639[_0x380ae3(0x20d)][_0x380ae3(0x247)],'commandPreview':previewNovaActCliCommand(_0x123639[_0x380ae3(0x20d)]['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0x123639[_0x380ae3(0x1ca)]),'stderrPreview':_0x5d614f['bdmDz'](previewNovaActCliCommand,_0x123639['stderr']),'logDir':extractNovaActLogDir(_0x123639['stdout'])});}catch(_0x464824){await _0x19b1b7['trackPhaseError'](_0x53e8e6,_0x464824,_0x511acc);throw _0x464824;}}export async function finalizeVerifyFeatureNovaCliSession(_0x43c859){const _0x1484db=_0x454f28,_0x46f408={'BUWsA':function(_0x314b46,_0x3182e3,_0x10f032){return _0x314b46(_0x3182e3,_0x10f032);},'QilBL':_0x1484db(0x21e),'XVTBz':_0x1484db(0x230),'oRQJM':'final-state.yaml','JyPDa':_0x1484db(0x1a2),'motyR':'--format','Qxbut':_0x1484db(0x197),'CkszG':'nova_act_session_report','pjUrx':'--output-dir','PTSBY':'nova_act_session_close','ucdPl':function(_0x15fc78,_0x1e376a){return _0x15fc78===_0x1e376a;}},{telemetry:_0x46d058,novaOptions:_0x54bcb7,cliArtifactDir:_0x3ec71d,transportMetadata:_0xcd238,artifactRecorder:_0x46ce13}=_0x43c859,_0x8a40f9=[{'phase':'nova_act_final_screenshot','commandArgs':['screenshot',_0x1484db(0x1ed),_0x46f408['BUWsA'](buildCliArtifactPath,_0x3ec71d,_0x46f408['QilBL'])]},{'phase':_0x46f408['XVTBz'],'commandArgs':[_0x1484db(0x239),_0x1484db(0x1ed),buildCliArtifactPath(_0x3ec71d,_0x46f408[_0x1484db(0x183)])]},{'phase':'nova_act_session_export','commandArgs':[_0x46f408['JyPDa'],_0x1484db(0x1e0),_0x46f408[_0x1484db(0x241)],_0x46f408['Qxbut'],_0x1484db(0x1ed),buildCliArtifactPath(_0x3ec71d,'nova-session-export.json')]},{'phase':_0x46f408['CkszG'],'commandArgs':[_0x46f408[_0x1484db(0x1d4)],'export',_0x1484db(0x195),_0x46f408[_0x1484db(0x194)],_0x46f408['BUWsA'](buildCliArtifactPath,_0x3ec71d,'nova-report')]},{'phase':_0x46f408['PTSBY'],'commandArgs':[_0x46f408[_0x1484db(0x1d4)],'close']}];for(const _0x25f252 of _0x8a40f9){_0x46f408[_0x1484db(0x215)](_0x25f252[_0x1484db(0x20c)],_0x1484db(0x1f8))&&await _0x46ce13?.['stop']();try{await runNovaLifecycleCommand({'novaOptions':_0x54bcb7,'commandArgs':[..._0x25f252['commandArgs']],'telemetry':_0x46d058,'phase':_0x25f252[_0x1484db(0x20c)],'metadata':_0xcd238});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0xa901e7){const _0x49f5a0=_0x454f28,_0xd768fa={'HnoBd':function(_0x5871ba,_0x5250a7,_0xcd31dd){return _0x5871ba(_0x5250a7,_0xcd31dd);},'MMJFo':function(_0x12e2b9,_0x141f54){return _0x12e2b9(_0x141f54);},'sTKtC':function(_0x8d1100,_0x39e830){return _0x8d1100===_0x39e830;}},{cwd:_0x319a02,cliArtifactDir:_0x242785,startTime:_0x2a12d2}=_0xa901e7,_0x58ed91=[];await _0xd768fa[_0x49f5a0(0x1c7)](mkdir,_0x242785,{'recursive':!![]});const _0x2ac312=await _0xd768fa[_0x49f5a0(0x1c7)](readdir,_0x319a02,{'withFileTypes':!![]});for(const _0x5880f8 of _0x2ac312){if(!_0x5880f8[_0x49f5a0(0x227)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x49f5a0(0x1eb)](_0x5880f8['name']))continue;const _0x59f175=_0xd768fa[_0x49f5a0(0x1c7)](join,_0x319a02,_0x5880f8[_0x49f5a0(0x190)]),_0x2ade49=await _0xd768fa[_0x49f5a0(0x1ee)](stat,_0x59f175);if(_0x2ade49[_0x49f5a0(0x1c8)]+0x7d0<_0x2a12d2)continue;const _0x2fdf71=buildCliArtifactPath(_0x242785,_0x5880f8[_0x49f5a0(0x190)]);if(_0xd768fa[_0x49f5a0(0x1e2)](_0x59f175,_0x2fdf71))continue;await rename(_0x59f175,_0x2fdf71),_0x58ed91[_0x49f5a0(0x219)](_0x5880f8['name']);}return _0x58ed91['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x1396a2){const _0x40a9cb=_0x454f28,_0x48b5bc={'YNYNf':function(_0x183507,_0x5ab84a,_0x5d5cb5){return _0x183507(_0x5ab84a,_0x5d5cb5);},'NJoJq':function(_0x15e06b,_0x2f732d){return _0x15e06b(_0x2f732d);}},_0x228f68=_0x48b5bc[_0x40a9cb(0x1cc)](join,_0x1396a2,_0x40a9cb(0x1d9));try{return{'buffer':await readFile(_0x228f68),'source':_0x228f68};}catch{return{'buffer':await _0x48b5bc[_0x40a9cb(0x1bd)](zipVerifyFeatureNovaArtifacts,_0x1396a2),'source':_0x1396a2};}}async function zipVerifyFeatureNovaArtifacts(_0x2a21d7){const _0x52bb42=_0x454f28,_0x5d6c5a={'ImXMZ':function(_0xecf3d6,_0x575d6f,_0x10d3a7,_0x38dde4){return _0xecf3d6(_0x575d6f,_0x10d3a7,_0x38dde4);},'KXdhZ':_0x52bb42(0x208),'jSxyK':'nova-user-data/*','JXXZO':function(_0x37196b,_0x5eddaa,_0x72608f){return _0x37196b(_0x5eddaa,_0x72608f);}},_0x14bd29=join(_0x2a21d7,'..',_0x52bb42(0x1b6));try{return await _0x5d6c5a[_0x52bb42(0x18a)](execFileAsync,_0x5d6c5a['KXdhZ'],['-qr',_0x14bd29,'.','-x',_0x5d6c5a['jSxyK']],{'cwd':_0x2a21d7}),await readFile(_0x14bd29);}finally{await _0x5d6c5a['JXXZO'](rm,_0x14bd29,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x53aa6d){const _0x289247=_0x454f28,_0x55b0c2={'MmloN':function(_0x2694d8,_0x33b440,_0x32b350){return _0x2694d8(_0x33b440,_0x32b350);}},_0x32f024=buildNovaActCliInvocation(_0x53aa6d[_0x289247(0x1b3)],_0x53aa6d[_0x289247(0x1fe)]);return{'command':_0x32f024[_0x289247(0x21c)],'args':_0x32f024[_0x289247(0x1b8)],'commandPreview':previewNovaActCliCommand(_0x32f024[_0x289247(0x18f)]),'subcommand':_0x32f024['subcommand'],'sharedOptionsSuffix':_0x55b0c2['MmloN'](buildNovaActCliSharedOptionsSuffix,_0x53aa6d[_0x289247(0x1b3)],_0x53aa6d['commandArgs'])};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x24f778,_0x33acf0){const _0x5af45d=_0x56fc,_0xbe232a=_0x24f778();while(!![]){try{const _0x432602=parseInt(_0x5af45d(0x1ba))/0x1+parseInt(_0x5af45d(0x179))/0x2+-parseInt(_0x5af45d(0x1a5))/0x3*(parseInt(_0x5af45d(0x197))/0x4)+parseInt(_0x5af45d(0x1bb))/0x5*(parseInt(_0x5af45d(0x183))/0x6)+-parseInt(_0x5af45d(0x193))/0x7*(-parseInt(_0x5af45d(0x1ac))/0x8)+-parseInt(_0x5af45d(0x1ab))/0x9*(parseInt(_0x5af45d(0x192))/0xa)+parseInt(_0x5af45d(0x1be))/0xb;if(_0x432602===_0x33acf0)break;else _0xbe232a['push'](_0xbe232a['shift']());}catch(_0x5c6ad8){_0xbe232a['push'](_0xbe232a['shift']());}}}(_0xffd9,0x1d90b));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 _0xffd9(){const _0x5e98dc=['commandArgs','trackPhaseEnd','open\x20and\x20inspect','click\x20and\x20inspect\x20','slice','oWtgA','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','createdAt','\x20inspect\x20--screenshot-path\x20','>\x20\x22','domRef','228493IZkvOs','1345yVDfpa','length','rangerwright_cli_command','322597JALksw','click-and-inspect','hook_event_name','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','sort','set','en-US','tracing-stop','ioUWW','snQgw','fill-and-inspect','GBEOD','trackPhaseStart','test','-\x20[','rmQhy','cwd','textContent','yrUTN','PostToolUse','.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.','error','\x20open-and-inspect\x20','PostToolUseFailure','key_02_learn-more.png','\x20click-and-inspect\x20e37\x20--screenshot-path\x20','inspect','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','stderr','144180FxdRga','notes','vlnvv','commandPrefix','canonicalFlow','video-stop','match','Reviewer','FOGKO','`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`','138jSkPOb','target','bDcKP','close\x20browser\x20session','zhfDs','\x20--screenshot-path\x20','tool_name','SKbda','\x5c$&','mgVna','tool_input','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','cuQGg','authorEmail','[rangerwright-cli]\x20','10CGeiLf','534415eDnEmm','rangerwright_cli_video_stop','):\x20\x22','ewulD','12tysoHi','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','01_initial-state.png','swqxI','short','url','rangerwright_cli_command_failure','trackPhaseError','gzydn','pop','\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','...','\x20>\x20','open-and-inspect','56478iyCtsc','LnjUp','about:blank','pEsux','rangerwright_cli_tracing_stop','nykjD','2113785NTIbEX','8wNXSyA','unaddressedComments','lGjMF'];_0xffd9=function(){return _0x5e98dc;};return _0xffd9();}function truncatePreview(_0x12ca6c,_0x51c699=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x1c3dfb=_0x56fc,_0x49ed36={'rvmQY':function(_0x1e887d,_0x26b6ae){return _0x1e887d+_0x26b6ae;},'pEsux':_0x1c3dfb(0x1a2)};return _0x12ca6c['length']>_0x51c699?_0x49ed36['rvmQY'](_0x12ca6c[_0x1c3dfb(0x1b3)](0x0,_0x51c699),_0x49ed36[_0x1c3dfb(0x1a8)]):_0x12ca6c;}function extractShellValue(_0xf954b4){if(!_0xf954b4)return null;return _0xf954b4[0x1]??_0xf954b4[0x2]??_0xf954b4[0x3]??null;}function extractFirstCommandArgument(_0x31fcea,_0x34a0ce){const _0x2c5ea6=_0x56fc,_0x2a889e={'snQgw':_0x2c5ea6(0x18b)},_0x56805c=_0x34a0ce['replace'](/[.*+?^${}()|[\]\\]/g,_0x2a889e[_0x2c5ea6(0x1c7)]);return extractShellValue(_0x31fcea[_0x2c5ea6(0x17f)](new RegExp('(?:^|\x5cs)'+_0x56805c+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x399cb4){const _0x1d6fbd=_0x56fc;if(!_0x399cb4)return _0x1d6fbd(0x184);if(/^e\d+$/i[_0x1d6fbd(0x1cb)](_0x399cb4))return'ref\x20'+_0x399cb4;return JSON['stringify'](truncatePreview(_0x399cb4,0x78));}function formatRangerwrightCliLog(_0x27f314,_0x5eeddc){const _0x459ca5=_0x56fc,_0x43a11d={'tvMIa':_0x459ca5(0x1a4),'bDcKP':_0x459ca5(0x1b1),'filGm':_0x459ca5(0x1bf),'FOGKO':function(_0x573c6c,_0xa5be24){return _0x573c6c(_0xa5be24);},'ioUWW':function(_0x52f1f3,_0x2fb125,_0x160f96){return _0x52f1f3(_0x2fb125,_0x160f96);},'KHWdM':_0x459ca5(0x1c8),'mgVna':'back-and-inspect','SKbda':'go\x20back\x20and\x20inspect','odrhN':'inspect\x20page','zhfDs':'stop\x20tracing','IALTH':'video-stop','MKtfc':'close'};switch(_0x5eeddc){case _0x43a11d['tvMIa']:{const _0x3ca2a7=extractFirstCommandArgument(_0x27f314,_0x5eeddc);return _0x3ca2a7?'open\x20and\x20inspect\x20'+_0x3ca2a7:_0x43a11d[_0x459ca5(0x185)];}case _0x43a11d['filGm']:return _0x459ca5(0x1b2)+_0x43a11d[_0x459ca5(0x181)](formatCommandTarget,_0x43a11d[_0x459ca5(0x1c6)](extractFirstCommandArgument,_0x27f314,_0x5eeddc));case'fill':case _0x43a11d['KHWdM']:return'fill\x20'+formatCommandTarget(extractFirstCommandArgument(_0x27f314,_0x5eeddc));case _0x43a11d[_0x459ca5(0x18c)]:return _0x43a11d[_0x459ca5(0x18a)];case _0x459ca5(0x1d8):return _0x43a11d['odrhN'];case _0x459ca5(0x1c5):return _0x43a11d[_0x459ca5(0x187)];case _0x43a11d['IALTH']:return'stop\x20video\x20recording';case _0x43a11d['MKtfc']:return _0x459ca5(0x186);default:return _0x5eeddc;}}function renderScenarioSections(_0x469834){const _0x16742e=_0x56fc,_0x2c5cd1={'MuTcL':'numeric','cuQGg':_0x16742e(0x180),'LnjUp':_0x16742e(0x1a3),'iFLPh':'element','vlnvv':function(_0xe8b252,_0x3a246c){return _0xe8b252>_0x3a246c;}},{checklistItem:_0x52bee6,itemFeedback:_0x20ef0e}=_0x469834,_0x18aeee=_0x52bee6['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x52bee6[_0x16742e(0x17a)]:'';let _0x50eb41='';if(_0x20ef0e&&_0x2c5cd1[_0x16742e(0x17b)](_0x20ef0e['unaddressedComments'][_0x16742e(0x1bc)],0x0)){const _0x55c67b=_0x20ef0e[_0x16742e(0x1ad)]['map'](_0x4cfd24=>{const _0x11849f=_0x16742e,_0x2311d3=new Date(_0x4cfd24[_0x11849f(0x1b6)])['toLocaleDateString'](_0x11849f(0x1c4),{'month':_0x11849f(0x19b),'day':_0x2c5cd1['MuTcL']}),_0x382575=_0x4cfd24['authorName']||_0x4cfd24[_0x11849f(0x190)]||_0x2c5cd1[_0x11849f(0x18f)],_0xc6cd42=_0x4cfd24['domRef']?'\x20(on\x20element:\x20<'+(_0x4cfd24[_0x11849f(0x1b9)]['selector']['split'](_0x2c5cd1[_0x11849f(0x1a6)])[_0x11849f(0x1a0)]()?.['split'](':')[0x0]||_0x2c5cd1['iFLPh'])+_0x11849f(0x1b8)+(_0x4cfd24[_0x11849f(0x1b9)][_0x11849f(0x1cf)]||'')[_0x11849f(0x1b3)](0x0,0x32)+'\x22)':'';return _0x11849f(0x1cc)+_0x4cfd24['id']+']\x20'+_0x382575+'\x20('+_0x2311d3+_0x11849f(0x195)+_0x4cfd24['content']+'\x22'+_0xc6cd42;})['join']('\x0a');_0x50eb41='\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'+_0x55c67b;}const _0x13ed22=_0x20ef0e?.[_0x16742e(0x17d)]?_0x16742e(0x1d9)+_0x20ef0e['canonicalFlow']:'';return''+_0x52bee6['description']+_0x18aeee+_0x50eb41+_0x13ed22;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x535249){const _0x2c6228=_0x56fc,_0x3f916d={'GBEOD':_0x2c6228(0x199),'nykjD':'key_99_final-state.png','yrUTN':function(_0x256aa6,_0x53815a){return _0x256aa6(_0x53815a);},'gzydn':_0x2c6228(0x1a7)},{checklistItem:_0x4cc334,itemFeedback:_0x16e864,taskDescription:_0x593ab9,commandPrefix:_0x1d40f1,isCdpMode:_0x2ebe8f,url:_0x442e73,cdpEndpoint:_0x59f5a0,loginInstructions:_0x2dadf7}=_0x535249,_0x285f83=_0x3f916d[_0x2c6228(0x1c9)],_0x2735f1=_0x3f916d[_0x2c6228(0x1aa)],_0x26ff70=_0x2ebe8f?_0x1d40f1+_0x2c6228(0x1b7)+_0x3f916d[_0x2c6228(0x1d0)](quoteShellArg,_0x285f83):_0x1d40f1+'\x20open-and-inspect\x20'+quoteShellArg(_0x442e73??_0x3f916d[_0x2c6228(0x19f)])+'\x20--screenshot-path\x20'+quoteShellArg(_0x285f83),_0x57062e=_0x2ebe8f?_0x2c6228(0x198)+_0x59f5a0+_0x2c6228(0x1d2):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x442e73+'\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.',_0xb4cf19=_0x2dadf7?_0x2c6228(0x1c1)+_0x2dadf7+_0x2c6228(0x1b5):'';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'+renderScenarioSections({'checklistItem':_0x4cc334,'itemFeedback':_0x16e864})+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x593ab9+'\x0a\x0a'+_0x57062e+_0xb4cf19+'\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x1d40f1+'\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'+_0x26ff70+_0x2c6228(0x1a1)+_0x1d40f1+_0x2c6228(0x1d7)+_0x3f916d['yrUTN'](quoteShellArg,_0x2735f1)+'\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.';}function _0x56fc(_0x342711,_0x3589df){_0x342711=_0x342711-0x179;const _0xffd903=_0xffd9();let _0x56fc67=_0xffd903[_0x342711];return _0x56fc67;}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x5e6955){const _0x2aa19d=_0x56fc,_0x2c962e={'SFVrX':function(_0x6131ea,_0x33be4e){return _0x6131ea(_0x33be4e);}},_0x304fd4='01_mozilla-homepage.png',_0x4461dc=_0x2aa19d(0x1d6);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x20Every\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x5e6955['commandPrefix']+'\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x0a\x0a1.\x20Run\x20`'+_0x5e6955[_0x2aa19d(0x17c)]+_0x2aa19d(0x1d4)+_0x2c962e['SFVrX'](quoteShellArg,_0x5e6955[_0x2aa19d(0x19c)])+_0x2aa19d(0x188)+quoteShellArg(_0x304fd4)+_0x2aa19d(0x182)+_0x5e6955['commandPrefix']+_0x2aa19d(0x18e)+quoteShellArg(_0x4461dc)+'`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x1695a3){const _0x390ad4=_0x56fc,_0x480871=[..._0x1695a3['keys']()][_0x390ad4(0x1c2)]();let _0x216f1d=0x0;for(const _0x1f9a41 of _0x1695a3['values']()){_0x216f1d+=_0x1f9a41;}return{'cliCommandCount':_0x216f1d,'cliCommandsSeen':_0x480871,'noCliCommandsCalled':_0x216f1d===0x0};}export function createVerifyFeatureRangerwrightCliHooks(_0xb48adf){const _0x4de253=_0x56fc,_0x184701={'rmQhy':function(_0x92fff5,_0x284019){return _0x92fff5!==_0x284019;},'ewulD':function(_0x16b80a,_0x323a99){return _0x16b80a!==_0x323a99;},'oWtgA':'Bash','BctLS':function(_0x1e6434,_0x49981d){return _0x1e6434(_0x49981d);},'zvBzZ':function(_0x217e22,_0x55d6b3){return _0x217e22+_0x55d6b3;},'ClAtZ':_0x4de253(0x1bd),'hIPKn':function(_0x3f5913,_0x1daac0,_0x8ae452){return _0x3f5913(_0x1daac0,_0x8ae452);},'UyXSi':'rangerwright-cli'},_0x4204cf=new Map(),_0x5b463b=async _0x2ca0a9=>{const _0x4892b8=_0x4de253;if(_0x184701[_0x4892b8(0x1cd)](_0x2ca0a9[_0x4892b8(0x1c0)],_0x4892b8(0x1d1)))return{};const _0x387eef=_0x2ca0a9;if(_0x184701[_0x4892b8(0x196)](_0x387eef[_0x4892b8(0x189)],_0x184701[_0x4892b8(0x1b4)]))return{};const _0x56ca35=_0x387eef[_0x4892b8(0x18d)],_0x408c0e=extractBashCommand(_0x56ca35);if(!_0x408c0e)return{};const _0x90fb33=_0x184701['BctLS'](parseRangerwrightCliCommand,_0x408c0e);if(!_0x90fb33)return{};return _0x4204cf[_0x4892b8(0x1c3)](_0x90fb33,_0x184701['zvBzZ'](_0x4204cf['get'](_0x90fb33)||0x0,0x1)),_0xb48adf[_0x4892b8(0x1ca)](_0x184701['ClAtZ'],{'subcommand':_0x90fb33}),_0xb48adf[_0x4892b8(0x1b0)](_0x4892b8(0x1bd),{'subcommand':_0x90fb33,'commandPreview':truncatePreview(_0x408c0e)}),console['log'](_0x4892b8(0x191)+_0x184701['hIPKn'](formatRangerwrightCliLog,_0x408c0e,_0x90fb33)),{};},_0x19608d=async _0x251371=>{const _0x1e79f8=_0x4de253;if(_0x251371['hook_event_name']!==_0x1e79f8(0x1d5))return{};const _0x48db94=_0x251371;if(_0x48db94[_0x1e79f8(0x189)]!=='Bash')return{};return await _0xb48adf[_0x1e79f8(0x19e)](_0x1e79f8(0x19d),_0x48db94[_0x1e79f8(0x1d3)],{'transport':_0x184701['UyXSi'],'toolName':'Bash'}),{};};return{'postToolUseHook':_0x5b463b,'postToolUseFailureHook':_0x19608d,'commandCounts':_0x4204cf};}async function runRangerwrightLifecycleCommand(_0x208040){const _0x43315b=_0x56fc,{options:_0xc0590a,commandArgs:_0x42e2aa,env:_0x5f3585,telemetry:_0x142dd7,phase:_0x9a2385,metadata:_0x170fab,timeoutMs:_0x324e3b}=_0x208040;_0x142dd7['trackPhaseStart'](_0x9a2385,_0x170fab);try{const _0x161613=await runRangerwrightCliCommand({..._0xc0590a,'commandArgs':_0x42e2aa,'cwd':process[_0x43315b(0x1ce)](),'env':_0x5f3585,'timeoutMs':_0x324e3b??RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x142dd7[_0x43315b(0x1b0)](_0x9a2385,{..._0x170fab,'subcommand':_0x161613['invocation']['subcommand'],'stdoutPreview':truncatePreview(_0x161613['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x161613[_0x43315b(0x1da)],0x7d0)});}catch(_0x4dc5e5){await _0x142dd7[_0x43315b(0x19e)](_0x9a2385,_0x4dc5e5,_0x170fab);throw _0x4dc5e5;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0xe12908){const _0xb30e9d=_0x56fc,_0x43ded5={'vjYpQ':_0xb30e9d(0x1a9),'nPadO':'tracing-stop','lGjMF':'rangerwright_cli_close','SBlGq':'close','swqxI':function(_0x355576,_0x34a5a3){return _0x355576(_0x34a5a3);}},{telemetry:_0xd860b3,rangerwrightOptions:_0x3a75e2,env:_0x7baab2,transportMetadata:_0x5a5896}=_0xe12908,_0x3c20b7=[{'phase':_0x43ded5['vjYpQ'],'commandArgs':[_0x43ded5['nPadO']]},{'phase':_0xb30e9d(0x194),'commandArgs':[_0xb30e9d(0x17e)]},{'phase':_0x43ded5[_0xb30e9d(0x1ae)],'commandArgs':[_0x43ded5['SBlGq']]}];for(const _0x2c6ae8 of _0x3c20b7){try{await _0x43ded5[_0xb30e9d(0x19a)](runRangerwrightLifecycleCommand,{'options':_0x3a75e2,'commandArgs':[..._0x2c6ae8[_0xb30e9d(0x1af)]],'env':_0x7baab2,'telemetry':_0xd860b3,'phase':_0x2c6ae8['phase'],'metadata':_0x5a5896});}catch{}}}
|
|
1
|
+
(function(_0x26837d,_0x19ca1c){const _0x5bbf6d=_0x13e8,_0x2acfaa=_0x26837d();while(!![]){try{const _0x36bd3d=parseInt(_0x5bbf6d(0x15e))/0x1+-parseInt(_0x5bbf6d(0x17b))/0x2+parseInt(_0x5bbf6d(0x162))/0x3*(-parseInt(_0x5bbf6d(0x161))/0x4)+parseInt(_0x5bbf6d(0x194))/0x5*(-parseInt(_0x5bbf6d(0x16b))/0x6)+-parseInt(_0x5bbf6d(0x18f))/0x7+-parseInt(_0x5bbf6d(0x1a4))/0x8*(parseInt(_0x5bbf6d(0x171))/0x9)+parseInt(_0x5bbf6d(0x19a))/0xa*(parseInt(_0x5bbf6d(0x190))/0xb);if(_0x36bd3d===_0x19ca1c)break;else _0x2acfaa['push'](_0x2acfaa['shift']());}catch(_0x2c06ed){_0x2acfaa['push'](_0x2acfaa['shift']());}}}(_0x5c02,0xf2021));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(_0x3f51aa,_0x10c5c3=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x5debd3=_0x13e8,_0x2288a3={'LFSUy':function(_0x5b8500,_0x19b17c){return _0x5b8500+_0x19b17c;}};return _0x3f51aa['length']>_0x10c5c3?_0x2288a3[_0x5debd3(0x16e)](_0x3f51aa[_0x5debd3(0x157)](0x0,_0x10c5c3),'...'):_0x3f51aa;}function extractShellValue(_0x6a1e6e){if(!_0x6a1e6e)return null;return _0x6a1e6e[0x1]??_0x6a1e6e[0x2]??_0x6a1e6e[0x3]??null;}function extractFirstCommandArgument(_0x3e999d,_0x34fa7e){const _0x41cc77=_0x13e8,_0x520fad=_0x34fa7e[_0x41cc77(0x1a0)](/[.*+?^${}()|[\]\\]/g,_0x41cc77(0x177));return extractShellValue(_0x3e999d['match'](new RegExp(_0x41cc77(0x16f)+_0x520fad+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0xa826d6){const _0x5e72b7=_0x13e8,_0x49b98d={'DQeKp':_0x5e72b7(0x1aa)};if(!_0xa826d6)return _0x49b98d['DQeKp'];if(/^e\d+$/i[_0x5e72b7(0x192)](_0xa826d6))return'ref\x20'+_0xa826d6;return JSON['stringify'](truncatePreview(_0xa826d6,0x78));}function _0x13e8(_0x7ed535,_0x23c2ce){_0x7ed535=_0x7ed535-0x14e;const _0x5c027a=_0x5c02();let _0x13e8da=_0x5c027a[_0x7ed535];return _0x13e8da;}function formatRangerwrightCliLog(_0x35f81b,_0x13019a){const _0xd39706=_0x13e8,_0x23851c={'jJHCx':_0xd39706(0x196),'VnnNH':_0xd39706(0x167),'dzExg':function(_0x3e7a52,_0x1b542b){return _0x3e7a52(_0x1b542b);},'IYZxh':function(_0x621dd3,_0x3c544b,_0x1afe10){return _0x621dd3(_0x3c544b,_0x1afe10);},'GZQWK':_0xd39706(0x16d),'ccgZu':_0xd39706(0x170),'TVJNr':_0xd39706(0x166),'rPFGu':'tracing-stop','scyNB':'stop\x20tracing','argDI':'video-stop','Oocor':_0xd39706(0x16a)};switch(_0x13019a){case _0xd39706(0x18e):{const _0x53455e=extractFirstCommandArgument(_0x35f81b,_0x13019a);return _0x53455e?_0xd39706(0x16c)+_0x53455e:_0x23851c['jJHCx'];}case _0x23851c['VnnNH']:return'click\x20and\x20inspect\x20'+_0x23851c[_0xd39706(0x189)](formatCommandTarget,_0x23851c['IYZxh'](extractFirstCommandArgument,_0x35f81b,_0x13019a));case _0xd39706(0x163):case _0x23851c['GZQWK']:return _0xd39706(0x1a3)+_0x23851c['dzExg'](formatCommandTarget,extractFirstCommandArgument(_0x35f81b,_0x13019a));case _0xd39706(0x17d):return _0xd39706(0x19f);case _0x23851c['ccgZu']:return _0x23851c['TVJNr'];case _0x23851c[_0xd39706(0x172)]:return _0x23851c['scyNB'];case _0x23851c[_0xd39706(0x169)]:return'stop\x20video\x20recording';case'close':return _0x23851c['Oocor'];default:return _0x13019a;}}function renderScenarioSections(_0x377658){const _0x3cff41=_0x13e8,_0x2b75a1={'kYMvm':_0x3cff41(0x176),'hcoeB':_0x3cff41(0x151),'bhvHn':'Reviewer','dsLGy':_0x3cff41(0x187),'JVexd':function(_0x2eac21,_0xfacc05){return _0x2eac21>_0xfacc05;}},{checklistItem:_0x264f72,itemFeedback:_0x5aa8a9}=_0x377658,_0x558b7a=_0x264f72[_0x3cff41(0x183)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x264f72['notes']:'';let _0x56ed12='';if(_0x5aa8a9&&_0x2b75a1[_0x3cff41(0x155)](_0x5aa8a9['unaddressedComments']['length'],0x0)){const _0x54a8d5=_0x5aa8a9[_0x3cff41(0x150)][_0x3cff41(0x18a)](_0x22b224=>{const _0x117cd5=_0x3cff41,_0x405e55=new Date(_0x22b224['createdAt'])['toLocaleDateString']('en-US',{'month':_0x2b75a1['kYMvm'],'day':_0x2b75a1[_0x117cd5(0x179)]}),_0x591e2d=_0x22b224[_0x117cd5(0x181)]||_0x22b224['authorEmail']||_0x2b75a1['bhvHn'],_0x368097=_0x22b224['domRef']?_0x117cd5(0x197)+(_0x22b224['domRef']['selector']['split'](_0x2b75a1['dsLGy'])[_0x117cd5(0x19b)]()?.['split'](':')[0x0]||'element')+'>\x20\x22'+(_0x22b224[_0x117cd5(0x185)][_0x117cd5(0x191)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x22b224['id']+']\x20'+_0x591e2d+'\x20('+_0x405e55+_0x117cd5(0x19d)+_0x22b224[_0x117cd5(0x17c)]+'\x22'+_0x368097;})[_0x3cff41(0x152)]('\x0a');_0x56ed12=_0x3cff41(0x188)+_0x54a8d5;}const _0x4544d9=_0x5aa8a9?.[_0x3cff41(0x199)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x5aa8a9['canonicalFlow']:'';return''+_0x264f72[_0x3cff41(0x1a5)]+_0x558b7a+_0x56ed12+_0x4544d9;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x5ddf5c){const _0x5a2c1d=_0x13e8,_0x54b720={'cgWOH':_0x5a2c1d(0x1a7),'Birfv':function(_0x371390,_0x3b4651){return _0x371390(_0x3b4651);}},{checklistItem:_0xba7e02,itemFeedback:_0xd1c4cf,taskDescription:_0x5c0558,commandPrefix:_0x49c239,isCdpMode:_0x32fcc7,url:_0x121267,cdpEndpoint:_0x3b68c9,loginInstructions:_0x43655d}=_0x5ddf5c,_0xea2cf2=_0x54b720['cgWOH'],_0x6ab034=_0x5a2c1d(0x159),_0x1a5585=_0x32fcc7?_0x49c239+'\x20inspect\x20--screenshot-path\x20'+quoteShellArg(_0xea2cf2):_0x49c239+'\x20open-and-inspect\x20'+_0x54b720['Birfv'](quoteShellArg,_0x121267??_0x5a2c1d(0x14e))+_0x5a2c1d(0x184)+_0x54b720['Birfv'](quoteShellArg,_0xea2cf2),_0x29e0e2=_0x32fcc7?_0x5a2c1d(0x14f)+_0x3b68c9+_0x5a2c1d(0x174):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x121267+_0x5a2c1d(0x186),_0x286fbd=_0x43655d?_0x5a2c1d(0x18d)+_0x43655d+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\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'+renderScenarioSections({'checklistItem':_0xba7e02,'itemFeedback':_0xd1c4cf})+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x5c0558+'\x0a\x0a'+_0x29e0e2+_0x286fbd+_0x5a2c1d(0x165)+_0x49c239+'\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'+_0x1a5585+_0x5a2c1d(0x154)+_0x49c239+_0x5a2c1d(0x180)+_0x54b720[_0x5a2c1d(0x156)](quoteShellArg,_0x6ab034)+_0x5a2c1d(0x198);}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x590cf1){const _0x8628fd=_0x13e8,_0x408007={'sHwSI':function(_0x37bfb5,_0x393067){return _0x37bfb5(_0x393067);}},_0x1c530e='01_mozilla-homepage.png',_0x31bc47=_0x8628fd(0x15f);return _0x8628fd(0x1a8)+_0x590cf1['commandPrefix']+'\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x0a\x0a1.\x20Run\x20`'+_0x590cf1['commandPrefix']+_0x8628fd(0x153)+quoteShellArg(_0x590cf1[_0x8628fd(0x18b)])+'\x20--screenshot-path\x20'+_0x408007[_0x8628fd(0x178)](quoteShellArg,_0x1c530e)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0x590cf1[_0x8628fd(0x1a2)]+_0x8628fd(0x15c)+quoteShellArg(_0x31bc47)+_0x8628fd(0x173);}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x291ccc){const _0x3fe532=_0x13e8,_0x4c0dd2=[..._0x291ccc['keys']()]['sort']();let _0x2dc267=0x0;for(const _0x541321 of _0x291ccc[_0x3fe532(0x17f)]()){_0x2dc267+=_0x541321;}return{'cliCommandCount':_0x2dc267,'cliCommandsSeen':_0x4c0dd2,'noCliCommandsCalled':_0x2dc267===0x0};}function _0x5c02(){const _0x49fdf6=['rangerwright_cli_command','key_99_final-state.png','PostToolUse','FWJXD','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','sZafP','1087293ovmbBY','key_02_learn-more.png','tracing-stop','307444dLrgcS','15MuvGkb','fill','set','\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a','inspect\x20page','click-and-inspect','uEwFf','argDI','close\x20browser\x20session','4923054cgIpgB','open\x20and\x20inspect\x20','fill-and-inspect','LFSUy','(?:^|\x5cs)','inspect','9cnTAcp','rPFGu','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.','trackPhaseError','short','\x5c$&','sHwSI','hcoeB','cfVEV','745066bbupxk','content','back-and-inspect','PostToolUseFailure','values','\x20click-and-inspect\x20e37\x20--screenshot-path\x20','authorName','stderr','notes','\x20--screenshot-path\x20','domRef','\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.','\x20>\x20','\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','dzExg','map','url','hook_event_name','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','open-and-inspect','10066168fQIZPe','4352436ACWMis','textContent','test','log','5mlcHYi','LPQYs','open\x20and\x20inspect','\x20(on\x20element:\x20<','\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.','canonicalFlow','90HQwZRZ','pop','close','):\x20\x22','rangerwright_cli_tracing_stop','go\x20back\x20and\x20inspect','replace','video-stop','commandPrefix','fill\x20','5133928GomUmi','description','trackPhaseEnd','01_initial-state.png','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','trackPhaseStart','target','SiplA','about:blank','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','unaddressedComments','numeric','join','\x20open-and-inspect\x20','\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','JVexd','Birfv','slice'];_0x5c02=function(){return _0x49fdf6;};return _0x5c02();}export function createVerifyFeatureRangerwrightCliHooks(_0x1a1a70){const _0x173bab=_0x13e8,_0x5e49bc={'LcFxz':function(_0x52db3d,_0x440325){return _0x52db3d!==_0x440325;},'cfVEV':'Bash','SiplA':function(_0x582e44,_0x1e2b5c){return _0x582e44(_0x1e2b5c);},'FWJXD':function(_0xdfb11a,_0x2f6421){return _0xdfb11a+_0x2f6421;},'iLfbT':_0x173bab(0x158),'sZafP':function(_0x770d6f,_0x3fad8c,_0x49e86d){return _0x770d6f(_0x3fad8c,_0x49e86d);}},_0xf0d096=new Map(),_0x4e0323=async _0x2c8c9b=>{const _0x5bdff0=_0x173bab;if(_0x5e49bc['LcFxz'](_0x2c8c9b[_0x5bdff0(0x18c)],_0x5bdff0(0x15a)))return{};const _0x541ee8=_0x2c8c9b;if(_0x541ee8['tool_name']!==_0x5e49bc['cfVEV'])return{};const _0x240639=_0x541ee8['tool_input'],_0xb61793=_0x5e49bc[_0x5bdff0(0x1ab)](extractBashCommand,_0x240639);if(!_0xb61793)return{};const _0x4d0832=parseRangerwrightCliCommand(_0xb61793);if(!_0x4d0832)return{};return _0xf0d096[_0x5bdff0(0x164)](_0x4d0832,_0x5e49bc[_0x5bdff0(0x15b)](_0xf0d096['get'](_0x4d0832)||0x0,0x1)),_0x1a1a70[_0x5bdff0(0x1a9)](_0x5bdff0(0x158),{'subcommand':_0x4d0832}),_0x1a1a70[_0x5bdff0(0x1a6)](_0x5e49bc['iLfbT'],{'subcommand':_0x4d0832,'commandPreview':truncatePreview(_0xb61793)}),console[_0x5bdff0(0x193)]('[rangerwright-cli]\x20'+_0x5e49bc[_0x5bdff0(0x15d)](formatRangerwrightCliLog,_0xb61793,_0x4d0832)),{};},_0x3b6208=async _0x284e45=>{const _0x21e5cf=_0x173bab;if(_0x284e45['hook_event_name']!==_0x21e5cf(0x17e))return{};const _0x2e602c=_0x284e45;if(_0x5e49bc['LcFxz'](_0x2e602c['tool_name'],'Bash'))return{};return await _0x1a1a70[_0x21e5cf(0x175)]('rangerwright_cli_command_failure',_0x2e602c['error'],{'transport':'rangerwright-cli','toolName':_0x5e49bc[_0x21e5cf(0x17a)]}),{};};return{'postToolUseHook':_0x4e0323,'postToolUseFailureHook':_0x3b6208,'commandCounts':_0xf0d096};}async function runRangerwrightLifecycleCommand(_0x10d086){const _0x1b899b=_0x13e8,_0x234b54={'LPQYs':function(_0x2b118f,_0x1e9680){return _0x2b118f??_0x1e9680;},'XmhPk':function(_0x5d2db2,_0x1c2757,_0x314db1){return _0x5d2db2(_0x1c2757,_0x314db1);}},{options:_0x3f5298,commandArgs:_0x458324,env:_0xfe5f69,telemetry:_0x483145,phase:_0x205cc7,metadata:_0x324129,timeoutMs:_0x25bb34}=_0x10d086;_0x483145[_0x1b899b(0x1a9)](_0x205cc7,_0x324129);try{const _0x22993f=await runRangerwrightCliCommand({..._0x3f5298,'commandArgs':_0x458324,'cwd':process['cwd'](),'env':_0xfe5f69,'timeoutMs':_0x234b54[_0x1b899b(0x195)](_0x25bb34,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x483145[_0x1b899b(0x1a6)](_0x205cc7,{..._0x324129,'subcommand':_0x22993f['invocation']['subcommand'],'stdoutPreview':_0x234b54['XmhPk'](truncatePreview,_0x22993f['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x22993f[_0x1b899b(0x182)],0x7d0)});}catch(_0x1a08f4){await _0x483145['trackPhaseError'](_0x205cc7,_0x1a08f4,_0x324129);throw _0x1a08f4;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x58f839){const _0x33c9fd=_0x13e8,_0x165318={'uEwFf':_0x33c9fd(0x19e),'KclAL':'rangerwright_cli_close'},{telemetry:_0x305031,rangerwrightOptions:_0x49a351,env:_0x527cfa,transportMetadata:_0x4c6ce5}=_0x58f839,_0x4b07b3=[{'phase':_0x165318[_0x33c9fd(0x168)],'commandArgs':[_0x33c9fd(0x160)]},{'phase':'rangerwright_cli_video_stop','commandArgs':[_0x33c9fd(0x1a1)]},{'phase':_0x165318['KclAL'],'commandArgs':[_0x33c9fd(0x19c)]}];for(const _0x1f4604 of _0x4b07b3){try{await runRangerwrightLifecycleCommand({'options':_0x49a351,'commandArgs':[..._0x1f4604['commandArgs']],'env':_0x527cfa,'telemetry':_0x305031,'phase':_0x1f4604['phase'],'metadata':_0x4c6ce5});}catch{}}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ranger-testing/ranger-cli",
|
|
3
|
-
"version": "3.1.5
|
|
3
|
+
"version": "3.1.5",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ranger": "./build/cli.js",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"@ranger-testing/rangerwright": "^0.0.27",
|
|
26
26
|
"dotenv": "^16.4.5",
|
|
27
27
|
"inquirer": "^9.2.12",
|
|
28
|
-
"playwright": "1.
|
|
28
|
+
"playwright": "1.56.1",
|
|
29
29
|
"ws": "^8.20.1",
|
|
30
30
|
"yargs": "^17.7.2",
|
|
31
31
|
"zod": "^3.23.8"
|
|
@@ -46,6 +46,8 @@
|
|
|
46
46
|
"esbuild": "^0.28.1",
|
|
47
47
|
"minimatch": "^10.2.3",
|
|
48
48
|
"brace-expansion": "^5.0.6",
|
|
49
|
-
"fast-uri": "3.1.2"
|
|
49
|
+
"fast-uri": "3.1.2",
|
|
50
|
+
"@babel/core": "^7.29.6",
|
|
51
|
+
"js-yaml": "^4.2.0"
|
|
50
52
|
}
|
|
51
53
|
}
|